目录
IPv4地址表示
- 用32位正整数表示
- 每8位分成一组,共分成四组,每组用 “.” 隔开
- 再将二进制转换成十进制
IP地址组成
网络标识(网络地址)+主机标识(主机地址)
IPv4首部
- 版本号。指定IP协议的版本,对于IPV4来说,值为4.
- 头部长度
标识该IP头部有多少个32bit字(4字节) - 区分服务
TOS type ofserverice,由8比特组成,表明服务质量 - DSCP段
差分服务代码点 differential services codepoint
用来进行质量控制 - ECN
显式拥塞通告 explicit congestion notification
用来报告网络拥堵情况,由两比特构成 - 16位总长度,指的是整个IP数据报的长度,以字节为单位。
- 16位标志,唯一标识主机发送的每一个数据报,其初始值由系统随机生成,每发送一个数据报,其值Wie1.
由3比特构成,表示包被分片的相关信息 - 13位片偏移 fragment
由13比特构成,用来标识被分片的每一分段相对于原始数据的位置 - 8位生存时间TTL
time to live
由8比特构成,秒为单位 - 8位协议,来区分上层协议。
- 首部校验和
由发送端填充,接收端对其使用CRC算法以检验IP数据报头部在传输过程中是否被损坏。只校验数据报的首部,不校验数据部分,主要用来确保IP地址数据报不被破坏。 - 可选项
长度可变,通常只进行实验和诊断时使用,最多包含40字节的信息。
包含以下信息:
(1)记录路由:告诉数据报途径的所有路由器都将自己的IP地址填入IP头部选项部分,这样就能追踪数据报的传递途径。
(2)松散源路由选择:指定一个路由器IP地址列表,数据报发送必须经过其中所有路由器。
(3)严格源路由选择:和松散源路由选类似,只不过数据报只能经过被指定的路由器。
(4)时间戳:告诉每个路由器都将数据报被转发的时间填入IP头部选项部分,这样就可以测量途径路由之间数据报传输的时间。
四类IP地址
A类地址
- “0”开头
- 1~8位是网络标识
- 0.0.0.0~127.0.0.0位网络地址
- 后24位是主机地址
- 主机上限16777214个
B类地址
- “10”开头
- 第1~16位是网络标识
- 128.0.0.1~191.255.0.0是网络地址
- 后16位是主机地址
- 主机上限65534个
C类地址
- “110”开头
- 第1~24位是网络标识
- 192.168.0.0~239.255.255.0是网络地址
- 后8位是主机地址
- 主机上限254个
D类地址
- “1110”开头
- 第1~32位是网络标识
- 224.0.0.0~239.255.255.255是网络地址
- 没有主机标识
- 常用于多播
IPv6地址表示
IPv4地址理论上只有43亿个,根本不够用!IPv6不仅解决了IPv4地址不够用的问题,还在多播和流功能等方面做了很大的改进,为网络上多媒体内容上多媒体的内容的质量提供精细的控制;引入自动配置功能,使得局域网管理更为方便;增加专门的网络安全功能。
- IPv6地址长128位,能表达的数字高达38位
- 每16比特为一组,用冒号隔开标记
- 可用二进制或十六进制的数表示
- 出现连续0的时候,可以将0省略,并用两个冒号隔开
- 一个IP地址中只能出现一次两个连续的冒号
IPv6地址结构
IPv6特点
- IP地址的扩大与路由控制表的聚合
- 性能提升
包首部长度采用固定值,不再采用首部检验码。
简化首部结构,减轻路由器负荷,路由器不再做分片处理。 - 支持即插即用
即使没有DHCP功能也可以实现自动分配IP地址。 - 采用认证与加密功能
对伪造IP地址的网络安全功能以及防止线路窃听功能 - 多播、Moblie IP成为扩展功能
IPv6首部
- 4位版本号
指定IP协议的版本,对IPv6来说为6。 - 8位通信类量
相当于IPv4中TOS字段,表示数据流通信类型或优先级。 - 20位流标号
是IPv6新增的字段,用于某些对连接的服务质量有特殊要求的通信,比如音频或视频实时数据传输。 - 16位有效载荷长度
有效载荷是指包的数据部分,等于扩展头部和应用程序数据长度之和,不包括固定头部长度。 - 8位下一个首部
指出今个IPv6固定头部后的包头类型,如扩展头或者某个上层协议头,类似于IPv4当中的协议字段。 - 8位跳数限制
表示可通过路由器的个数。
IPv6扩展首部
- IPv6首部长度固定,无法将可选项加入其中,所以通过扩展首部对功能进行有效扩展;
- 扩展首部位于IPv6首部与TCP/UDP首部中间
- 扩展首部可选项长度没有限制
- 示例
- 常用扩展首部表