文章目录
Java中的网络编程
一、网络编程
1.1网络编程的概念
网络编程最主要的工作就是在发送端把信息通过规定好的协议进行组装包,在接收端按照规定好的协议把包进行解析,从而提取出对应的信息,达到通信的目的。
1.2网络编程面临的问题
如何准确的定位到网络上的一台或者多台主机;
定位到主机后又该如何进行通信。
1.3网络编程的要素
IP和端口号;
网络的通信协议:UDP,TCP
二、IP
2.1IP的概念
IP指网际互连协议,Internet Protocol的缩写,是TCP/IP体系中的网络层协议。
2.2IP地址
IP地址是指互联网协议地址,又为网际协议地址。
在Java中通常用InetAddress来编写,外部ip地址通常类似于127.0.0.1这种,本机的ip地址就可以使用localhost来查询。
2.3IP地址的分类
IP地址分为ipv4和ipv6
ipv4是由4个字节组成,范围为0-255,32位,是一种无连接的协议,操作在使用分组交换的链路层(如以太网)上。此协议会尽最大努力交付数据包,意即它不保证任何数据包均能送达目的地,也不保证所有数据包均按照正确的顺序无重复地到达。
ipv6是由8个无符号的整数组成,128位,如:2001:0bb4:abab:0015:0000:1111:12aa:1315。ipv6不仅能完善ipv4的不足,而且也解决了网络地址资源数量的问题,同时也解决了多种接入设备连入互联网的障碍。
2.4测试IP地址
测试IP的实例为:
public static void main(String[] args){
try{
//查询本机地址
InetAddress inetAddress1 = InetAddress.getByName("127.0.0.1");
System.out.println(inetAddress1);
InetAddress inetAddress3 = InetAddress.getByName("localhost");
System.out.println(inetAddress3);
InetAddress inetAddress4 = InetAddress.getLocalHost();
System.out.println(inetAddress4