IP协议——Linux网络编程

本文详细介绍了IP协议的头部格式,包括版本号、首部长度、复位类型等字段。同时,探讨了IP地址管理,如早期网络划分、子网掩码、私网网段以及特殊IP地址的用途。还涉及到了路由选择的原理和过程。
摘要由CSDN通过智能技术生成

IP协议

IP头部格式

在这里插入图片描述

  1. 版本号:4位,IP协议的版本
  2. 首部长度:4位,4个比特位计算出来的值乘4等于首部的长度
  3. 复位类型:8位,前三个比特位表表示优先权,但是已经弃用了;后面的4个比特位分别表示:最小延迟+最大吞吐量+最高可用性+最小费用,这四个比特位是一个互斥的关系,一般都是0,表示默认属性;最后一个比特位是保留位,必须置为0
  4. 总长度:16位,表示IP数据包中首部和数据的总和长度,总长度大小为65536,传输长度大于这个字节就需要分片
  5. 标识:16位,维持一个计数器,每产生一个数据包,计数器就加1,当进行的分片传输时,就会将计数器的值复制到标识字段中,接收端重组的时候相同标识的数据包分片就会被组合到一起
  6. 标志:3位,第一位,保留位;第二位,表示不能进行分片操作,等于0时才可以分片;第三位,等于1表示后面还有若干个分片,等于0表示这是最后一个分片
  7. 片偏移:13位,原来的数据包分片之后,该片在原分组中的相对位置
  8. 生存时间:8位,每经过一个路由器,该数值减一,减到零的时候就被抛弃;防止路由循环
  9. 协议:8位,标识传输层是用什么协议
  10. 检验和:16位,验证IP头部是否有损坏
  11. 源地址:32位
  12. 目的地址:32位

IP地址管理

早起的划分

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j9U9cEiW-1614085412188)(image/IP地址分类.png)]

网络号:标识一个子网络,就是我们所说的网段

主机号:在子网当中唯一标识一台主机

  1. A类:网络号占1字节,前面一位固定为0,第一个字节的取值范围为0~127。0.0.0.0~127.255.255.255
  2. B类:网络号占2个字节,前面两位固定为10,第一个字节的取值范围为128~191。128.0.0.0~191.255.255.255
  3. C类:网络号占3个字节,前面三位固定110,第一个字节的取值范围为192~223。192.0.0.0~233.255.255.255
  4. D类:第一个字节的前4位为1110,取值范围为224~239。D类地址是一个专门保留的地址,用于多播。
  5. F类:E类地址第一个字节的前4位为1111,取值范围为240~255。E类地址保留为以后用,其中255.255.255.255用作广播。

子网掩码

为了把一个大网络划分成一些小网络,引入子网掩码的概念。

子网掩码就是区分IP地址中“网络地址”和“主机地址”。子网掩码也是32位二进制数,也采用“点分十进制”,但子网掩码通常是由连续的1和0组成。1用来标记网络位,0用来标记主机位。子网掩码必须结合IP地址一起使用。

  1. 最大主机号等于子网掩码取反
  2. 网络号等于子网掩码&IP地址

私网网段

A、B、C类中各保留了一个区域作为私网地址。私网地址只能用在内部网络中,所有的路由器都不能解析目标地址为私网地址的数据报。

A类:10.0.0.0~10.255.255.255

B类:172.16.0.0~172.31.255.255

C类:192.168.0.0~192.168.255.255

特殊的IP地址

127.0.0.0——本地回环地址

0.0.0.0——用于在服务器程序中,表示服务器及其上所有网卡的ip地址

255.255.255.255——UDP的广播地址

路由选择

使用route命令,可以查看路由表
在这里插入图片描述

  1. 用目的IP地址和路由表当中的每一个条目的组网掩码,进行按位与操作,如果得到的结果不是该子网的网络号,表示这个数据不是子网当中的某一个机器;如果得到的结果是该子网的网络号,则直接发送给子网当中的机器;
  2. 如果除了默认网关之外的其他路由条目都没有匹配上,则这条数据需要走默认网关,直接传递给上级路由器
  3. 如此往复,在每一个路由设备上进行对比进行传输,直到TTL耗尽被丢弃,或者抵达到目标主机
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值