网络编程
- 在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换
网络编程三要素
- IP地址
- 端口
- 协议
IP地址
- 要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来指定要接收数据的计算机和识别发送的计算机,而IP地址就是这个标识号。也就是是设备的标识
- IPv4:32bit地址,4个字节,用二进制表示,如11000000 10101000 00000001 01000010,为了方便写成十进制,如192.168.1.66
- IPv6:互联网发展,IP需求变大,原有IPv4满足不了,通过IPv6重新定义地址空间,采用128bit地址长度,每16位一组,分成8组十六制数,如:2001:DB8:0:23:8:800:200C:417A
Java提供类InetAddress获取IP地址,此类表示Internet协议(IP)地址
- public static InetAddress getByName(String host):确定主机名称的IP地址。主机名称可以使机器名称,也可以使IP地址
- public String getHostName():获取此IP地址的主机名
- public String getHostAddress():返回文本显示中的IP地址字符串
package com.wangLuo;
import java.net.InetAddress;
import java.net.UnknownHostException;
/**
* @author 林高禄
* @create 2020-05-19-15:39
*/
public class TestInetAddress {
public static void main(String[] args) throws UnknownHostException {
/*//通过127.0.0.1获取到的hostName是空的
InetAddress address1 = InetAddress.getByName("127.0.0.1");
// 这是我电脑的名称
InetAddress address2 = InetAddress.getByName("PC-20190927NMRM");
// ipv4
InetAddress address3 = InetAddress.getByName("192.168.1.55");*/
// ipv6
InetAddress address4 = InetAddress.getByName("fe80::54aa:3450:cbfe:3976%11");
String hostName = address4.getHostName();
String hostAddress = address4.getHostAddress();
System.out.println(hostName);
System.out.println(hostAddress);
}
}
输出:
PC-20190927NMRM
fe80:0:0:0:54aa:3450:cbfe:3976%11
端口
- 网络的通信,本质上是两个应用程序的通信。每台计算机都有很多的应用程序,那么在网络通信时,如何区分这些应用程序呢?如果说IP地址可以唯一标识网络中的设备,那么端口号就可以唯一标识设备中的应用程序了。也就是应用程序的标识
- 范围:2个字节表示的整数,0~65535,其中0~1023用于一些知名的网络服务和应用。
协议
本文深入讲解网络编程核心概念,包括IP地址、端口和协议的作用及使用。探讨IPv4与IPv6的区别,端口如何标识应用程序,以及TCP和UDP协议在网络通信中的规则。
1036

被折叠的 条评论
为什么被折叠?



