
IP地址是分配给网络设备上网使用的数字标签,用于标识网络中唯一的一台设备

IP地址的作用:通过IP地址找到网络中唯一一台设备,然后可以跟这个设备进行数据通信。

IP地址分为IPv4和IPv6两个版本。
格式: IPv4地址由32位二进制数组成,通常以点分十进制的形式表示,如192.168.0.1。
分段: IPv4地址分为网络地址和主机地址两部分。不同类别的网络使用不同数量的位来表示网络和主机。常见的有A类、B类和C类地址。
私有地址: 一些地址范围被保留作为私有地址,用于局域网内部。
格式: IPv6采用128位地址,通常用8组四位十六进制数表示
扩展性: 由于IPv4地址空间有限,IPv6被设计为更大、更灵活的地址空间,以满足未来互联网发展的需求。
特殊表示: IPv6地址中可以使用"::"表示连续的零字段,以简化地址。例如,2001:0db8:0:0:0:0:0:1可以简写为2001:db8::1。
IP地址分配: IPv6地址分配通常通过IPv6路由器自动进行,也可以使用DHCPv6协议。
| 命令名 | 说明 |
|---|---|
| ifconfig | 查看网卡信息 |
| ping | 检查网络是否正常 |
查看所有网络接口的信息:
ifconfig
查看特定网络接口的信息(例如,eth0):
ifconfig eth0
启用/禁用网络接口:
sudo ifconfig eth0 up # 启用
sudo ifconfig eth0 down # 禁用
配置IP地址:
sudo ifconfig eth0 192.168.1.2 netmask 255.255.255.0

ping baidu.com
ping -c 5 baidu.com # 发送5个ICMP请求
持续ping:
ping -t baidu.com # 持续ping,直到手动停止
使用特定的数据包大小:
ping -s 1000 baidu.com # 发送数据包大小为1000字节的ICMP请求

每运行一个程序都会有一个端口,想要给对应的程序发送数据,找到对应的端口即可。

端口是传输数据的通道,好比教室的门,是数据传输必经之路。
每一个端口都会有一个对应的端口号,想要找到端口通过端口号即可。

端口号(65536个):端口号是用来管理区分不同端口的一个号码。好比生活中的门牌号。
最终通信流程,通过ip地址找到对应的设备,通过端口号找到对应的端口,然后通过端口把数据给应用程序。

- 当运行一个程序默认会有一个端口号,当这个程序退出时,所占用的这个端口号就会被释放。
Socket是一种网络通信协议,它在应用层和传输层之间提供了一个接口,使得应用程序可以通过网络与其他应用程序进行通信。
Socket可以用于不同的网络协议,如TCP、UDP等。
在Socket通信中,有两个主要的角色:服务器和客户端。一旦连接建立成功,服务器和客户端之间就可以进行双向通信。
Socket通信可以用于许多应用场景,如网络游戏、实时通信、文件传输等。它是构建网络应用程序的重要基础。




UDP(User Datagram Protocol)是一种无连接的网络传输协议,它是在传输层上运行的。UDP不像TCP那样提供可靠的数据传输。UDP发送的数据包不需要建立连接,也不需要等待确认,因此UDP传输速度比TCP快,但是可靠性较差。
UDP主要用于那些对数据传输速度要求高,但对数据传输可靠性要求不高的应用,如实时音视频传输、网络广播、在线游戏等。由于UDP的传输速度较快,因此在一些对实时性要求较高的应用场景中,UDP比TCP更加适合。
UDP的数据包结构比TCP简单,只包含源端口、目的端口、长度和校验和等基本信息。由于UDP没有连接的概念,因此每个UDP数据包都是独立的,可以随时发送和接收。
UDP(User Datagram Protocol)的特点如下:
无连接:UDP在发送数据之前不需要建立连接,也不需要维护连接状态,因此传输效率较高。
不可靠:UDP不提供可靠的数据传输,数据包可能会丢失、重复或乱序。因此,在实时性要求较高的应用场景中,如音视频传输、实时游戏等,UDP更加适合。
简单:UDP的数据包结构比TCP简单,只包含源端口、目的端口、长度和校验和等基本信息。
快速:由于UDP没有连接的概念,数据包的传输效率较高,适用于数据传输速度要求较高的应用场景。
支持广播和多播:UDP支持广播和多播,可以将数据包发送给多个接收方。
适用于短消息传输:由于UDP数据包的大小限制较小,适用于短消息的传输,如DNS查询、SNMP等。