ipv4(头部大小必须是20+4的整数倍)
一共6行 每行32bit 每行4字节 标准头部20字节,最后一行可选(padding)一般的报头中没有这个填充项,只有options中有设置东西的话才会是24字节
第一行
version: 版本号 0100 4bit
IHL:ip头部长度 4bit 0101(默认值)单位32bit 默认20字节,最大60字节
TYPE of service:服务类型 8bit 作用:对流量进行标记 QOS(服务质量、限速等等),首先根据流量的不同类型对流量进行区分 例如:邮件文件、电影文件等。 ACl只具有本地意义,所以在TOS上打标记,直接通过标记区分流量,抓取流量。
TOTAL length:总长度:(头部大小+数据大小)
第二行:
identification:标识符 16bit 收集到的数据包把标识符相同的流量进行重排序
flags:标记位 3bit R(保留) DF(不分片) 1 数据没有被分片(直接解析,不用分片) 0 数据被分片 准备重排序 收集被分片进行重排序 MF(更多分片) 1 后面有更多的分片(找MF1的数据包) 0代表分片完成 (开始数据重排序 )
fragment offset:分片偏移:13bit 代表该分片距离完整额度数据头部的偏移值,第n个分片的偏移值是 前n-1的数据包大小之和
第三行:
TTL 8bit 生存时间 早期代表的确实是生存时间,但是现在叫做跳数,范围:0-255,规定数据包在一定的时间内是要丢弃的 TTL值为0时丢弃,最初时间是255秒 (老设备质量不行) 所以变成跳数 eigrp、rip的ttl是跳一次-2 ospf是跳一次-1
protocol 协议号 8bit (用来描述上层使用什么协议、封装)0-255
header checksum 包头校验和 16bit (计算ipv4头部是否完整)
第四行:
源ip地址
第五行:
目标ip地址
第六行:
可选行 option(可选项) padding:填充项
ipv4缺点:
1.ipv4地址空间不足
2.ipv4头部安全性较低
3.ipv4具有复杂的头部
4.ipv4地址不能作为标识符和定位符
解决方法:
1,使用私有地址 进行nat地址转换
2,dhcp (动态主机配置协议)
3,vlsm cidr (可变长子网掩码技术)
ipv6特点:
1,具有巨大的地址空间
2,简单的头部
3,支持可移动性和安全特性 自带加密自带认证
4,支持穿越ipv4
5,没有校验和,没有广播