标签:Java IP 编程 网络 System println InetAddress isa out
网络编程
- 网络编程中存在两个主要的问题
- 如何准确的定位网络上的一台或多台主机
- 找到主机后如何进行通信
- 网络编程的要素
- IP和端口号
- 网络通信协议
IP
Java中的IP类:InetAddress
-
定位唯一一台网络上的计算机
-
127.0.0.1 :本机(localhost)
-
IP地址的分类
-
ipv4/ipv6
- IPV4:127.0.0.1 由4个字节组成
- IPV6:128位,8个无符号正数
-
公网(互联网)- 私网(局域网)
- ABCD类地址
- 192.168.xx.xx:专门给组织内部使用的
-
-
域名:记忆IP问题(IP很值钱!!!)
在Java中使用查找IP
public class IpAddressTest {
public static void main(String[] args) {
try {
//查找本机地址
InetAddress inetAddress1 = InetAddress.getByName("127.0.0.1"); // /127.0.0.1
System.out.println(inetAddress1);
InetAddress inetAddress2 = InetAddress.getByName("localhost"); // localhost/127.0.0.1
System.out.println(inetAddress2);
InetAddress inetAddress3 = InetAddress.getLocalHost(); // DESKTOP-LIM1T42/172.18.1.164
System.out.println(inetAddress3);
//查询网站地址
InetAddress inetAddress4 = InetAddress.getByName("www.baidu.com"); // www.baidu.com/180.101.49.11
System.out.println(inetAddress4);
//常用方法
System.out.println(inetAddress4.getAddress());
System.out.println(inetAddress4.getHostAddress());
System.out.println(inetAddress4.getCanonicalHostName());
System.out.println(inetAddress4.getHostName());
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
端口
端口表示一个计算机上程序的进程
- 不同的进程有不同的端口号,用来区分软件
- 被规定0-65535
- TCP,UDP:单个协议下,端口号不能冲突,不同协议可以一样
- 端口分类
- 公有端口 0 - 1023
- HTTP : 80
- HTTPS : 443
- FTP : 21
- Telent : 23
- 程序注册端口 1024 - 49151
- Tomcat : 8080
- MySQL : 3306
- Oracle : 1521
- 动态、私有 :49152 - 65535
- 公有端口 0 - 1023
在Java中使用端口
public class InetSocketAddressTest {
public static void main(String[] args) {
InetSocketAddress isa = new InetSocketAddress("127.0.0.1",8080);
System.out.println(isa);
System.out.println(isa.getAddress());
System.out.println(isa.getHostName());
System.out.println(isa.getHostString());
System.out.println(isa.getPort());
}
}
标签:Java,IP,编程,网络,System,println,InetAddress,isa,out 来源: https://blog.csdn.net/Yellow_Star___/article/details/118971810
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。