IP介绍
1、IP是TCP/IP协议族中最核心的协议,所有的TCP/UDP/ICMP/IGMP数据都以IP数据报格式传输。
2、IP提供不可靠、无连接的数据报传输服务。
3、常用命令ifconfig/netstat
netstat -an 查看端口连接情况
netstat -r 路由表
IP数据报头部
4位版本号:v4 or v6
4位头部长度:最多1111,也就是15。长度1代表4个字节,即32位。长度15代表60个字节。也就是首部最多60个字节。下图中一整行为32位,也就是长度为1。最长15行。
8位TOS:服务类型。
头部字段分析
TOS:包含3bit的优先级,4bit的TOS子字段和1bit无用字段。
4bit的TOS子字段:
1位:1代表需要最小延时;
2位:最大吞吐量
3位:最高可靠性
4位:最小费用
上面最多只能有一位置1。如果全为0,则代表一般服务。
路由器基于这些参数,给IP数据报提供相应的服务。
当然,路由器也可能会不管,并不是必须的。
16位的总长度:0~65535字节。整个IP包的长度,包括里面的数据。
16位标识:IP包的id,每次都加1.如果是分片包,则同一个数据的分片包,id是一样的。这样接收的时候,根据id来组包。
3位标志位:
第1位是df位,如果是1,则如果某台路由器看包太大超过其MTU,想分片,则直接不分片,丢掉这个包。丢包后回复丢包isnp信息给发送方。
第2位是mf位,more-fragment,1代表后面还有分片,0代表分片结束。
第3位是无用位。
13位片偏移
根据偏移量用来组合分片包。
8位TTL,生存时间
代表整个IP包经过了多少个路由,一般发送时为255(也就是全为1)。每经过一个路由减1。如果减为0,就丢包,避免形成环路死循环。
8位协议位:
标记数据里的头部是什么协议,TCP(6)、UDP(17)、ICMP(1)等。
16位首部校验和:
IP包发送时根据校验算法计算校验和,接收时再计算校验和,对比收发双方是否一致。不一致,则包体被损坏。
IP首部选项
最长40字节。
有各种配置选项。
以后单独介绍。
网友评论