IP包头分析
IP包头字节数(20-60) 一般为20
版本:声明这个ip包头是ipv4还是ipv6
首部长度:标识IP包头的长度 占多少个字节
优先级与服务类型: 不常用,在使用区分服务时候,此字段才起作用
总长度:整个IP包(报文)的长度
标识符:上层来到的数据到IP层(网络层)会被切片,每一段都是相同的字节,并且会产生一个ID用来标识这些分片属于同一个ip包,用来分类分片的,分段后各数据报片最后能正确的重装
如下图的 1 2
标志:一共三位 第一位未启用 永远为0 第二位 1代表未分片 0代表分片 最后一位表示 本分片是不是最后一个分片 如果1代表不是最后一个分片 如001 代表分片了 而且还有后续分片
上图中的 0 1480 2960 为段偏量
TTL:生存时间,每经过一个路由器就会减1,TTL减少为0,数据包会被丢弃,TTL值的作用就是为了防止数据包在网络上永久的循环下去,一般TTL值100以下的是Linux系统,100以上的是windows系统
协议号:识别上层协议,用来标识上层的封装数据是UDP还是TCP
首部校验和:校验三层的IP包头
泪滴攻击就是向目标i计算机发送损坏ip包而后计算机进行标识,标志,片偏移,的重组不停重组失败导致的计算机瘫痪
防火墙开启ip包禁止分片通过只允许010通过,那么发送端的网络层将不负责分片,而是有应用层的软件将数据进行拆分而后在发送,以达到不分片的目的
路由
路由:路由器为IP包头选择路径的过程(靠路由表选择)
路由表
- 路由器中维护的路由条目的集合
- 路由器根据路由表做路径选择
路由表的形成
- 直连网段
配置IP地址,端口UP状态,形成直连路由 - 非直连网段
下图给出了两个路由器的路由表
c代表直连 s代表静态
优化路由表 使用默认路由 s*0.0.0.0/0当路由器在路由表中找不到目标网络的路由条目时,路由器把请求转发到默认路由接口
比如在上图左侧的路由表 可以将后五行换成s*0.0.0.0/0
路由器之间也可以连接多条线路
静态路由
conf t
ip route 目标网段 子网掩码 下一跳IP
如 ip route 70.1.1.0 255.255.255.0 20.1.1.2
默认路由
conf t
ip route 0.0.0.0 0.0.0.0 下一跳IP
如:
ip route 0.0.0.0 0.0.0.0 20.1.1.2
浮动路由:
在静态或默认路由后加空格+数字(正整数)
ip route 0.0.0.0 0.0.0.0 20.1.1.2
ip route 0.0.0.0 0.0.0.0 30.1.1.2 2