IP包格式详解解析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Proxy ARP
如果目的IP地址是子 网外的,显然它不可能 收到ARP请求,这时有 两种方案: 1. 路由器有ARP代理功 能,它代理子网外 的主机响应ARP请求。 2. 主机通过识别目的 IP地址的网络号, 知道它是子网外的 主机,直接发给缺 省路由器
地址解析为这两种不同的地址形式提 供映射:32 bit的IP地址和数据链路层使 用的任何类型的地址。(ARP 和RARP)
一:基本概念
ARP理论的基础是:每个网络接口有一个硬 件地址(一个48 bit的值,标识不同的以太网 或令牌环网络接口)。在硬件层次上进行的数 据帧交换必须有正确的接口地址。但是, TCP/IP有自己的地址:32 bit的IP地址。知道 主机的IP地址并不能让内核发送一帧数据给主 机。内核(如以太网驱动程序)必须知道目的 端的硬件地址才能发送数据。ARP的功能是在 32 bitIP地址和采用不同网络技术的硬件地址 之间提供动态映射。
4、总长度: 即首部+数据部分的长度,它是 一个数值。单位是字节,总长度为16位,最长 为:216-1=65535字节, 实际上决定于MTU(最 大传输单元),对以太网为1500字节。 若包太长,超过了MTU的值,则需要切割,即 分片
5、标识(Identification)的用途 是让目标主机 确定一个新的数据段属于哪个数据包,同一个 数据报的分段有相同的标志值.当IP被重组时, 每个来自同一笔数据的小IP就得要有个识别 码以告知接收端这些小IP其实来自同一个封 包才行。
举例
3、区分服务(DS)一共8个bit位,从左到右依次为 PPPDTRCU,其中包含4个标志D,T,R,C(延迟, 吞吐量,可靠性,最小费用) 和一位保留位。
PPP:表示IP封包的优先度
D:若为0表示一般延迟,为1低延迟 T:为0表示一般传输量,为1表示高传输量 R:若为0表示为一般可靠度,为1高可靠度 U:保留位,一般未使用
6、标志(Flags)
该地方的内容为0D* DF:若为0表示可以分段,若为1表示不 可分段 MF:若为0表示此IP为最后分段,若为1 表示非最后分段。
7、分段偏移
表示目前这个IP分段在原始的IP封包中所 占的位置,有点像序号,有这个序号才 能将所有的小IP分段组合成为原本的IP封 包大少
6、分片(Fragmentation)及重组
MTU(Maximum Transfer Unit)
MTU=1500 以太网
MTU=576 X.25或拨号线路
MTU=1500
IP包,长度为768
DF = 0
思考:如DF=1,怎么办?
分段
分组头 数据(1400字节)
MTU=620字节 分组头 数据(600字节) 段偏 移=0 分组头 数据(600字节) 段偏移 =75 数据 分组头 200字节 段偏移 =150
专题一
IPV4协议应用
一、IP数据包格式
(1)头部+数据部分
其中头部又包含一个20字节的定长部分和一 个可选的变长部分. (一)头部组成 1、vesion(版本)取值为:IPv4: 4, IPv6: 6 。
2、IHL(首部长度)
可表示的最大十进制数值是15。请注意,这个字段所表 示数的单位是32位字长(1个32位字长是4字节),因 此,当IP的首部长度为1111时(即十进制的15),首 部长度就达到60字节。当IP分组的首部长度不是4字节 的整数倍时,必须利用最后的填充字段加以填充。因 此数据部分永远在4字节的整数倍开始,这样在实现IP 协议时较为方便。首部长度限制为60 字节的缺点是有 时可能不够用。但这样做是希望用户尽量减少开销。 最常用的首部长度就是20字节(即首部长度为0101), 这时不使用任何选项。
分片实例
选项都是以一个8位的选项开始的,每个 选项由三部分组成:一个字节的选项码、一个字 节的长度、多个字节所构成的选项数据,长度 由前一部分决定。不同的选项码位的数字代表 不同的意义,其代表意义如下: 第0位代表:拷贝类((Copy)。用于控制网关对 数据包分片时对本项的处理,“1”将本选项拷 贝到所有的分片中;“0”仅将本选项拷贝第一 个分片中。第1、2位代表:选项类(Option Class). 第3~7位:目前定义了6种类型,其中如定义为 00111代表记录路由,该选项让数据包把从源节 点到目的节点所经过的各路由填上其IP地址.
8、TTL域,存活周期,是一个限制分组生 存期的计数器.计数时间为秒,一共占8位, 所以最大生存期为255(秒/点)通常为64。 当他递减到0时,路由器给源主机发送一个 警告分组,原分组被丢弃.这样可以避免数 据报长时间存在网络中.
TTL=7 TTL=8
TTL=6
9、协议类型
IP内的号码 1
2 3
第5讲 ARP和RARP应用
回顾以太网数据包发送格式如下:
首部 IP 首部 MAC 首部 报文 应用层数据 报文
在以太网中,上层运行的是IP协议, 当一台主机把以太网数据帧发送到位于 同一局域网上的另一台主机时,是根据 48 bit的以太网地址来确定目的接口的。 即下层传输地址使用MAC地址表示。 我们使用SOCKET程序,只是关心 IP地址。它们二者是怎样相对应呢?
协议名称 ICMP
IGMP GGP
4
6 8
IP
TCP EGP
17
UDP
10、头部校验和,当数据到达时,头部所有的16 位累加起来,再取结果的补码,其结果应该为0. 11、32位的源地址和32位的目标地址, 12、选项 IP首部的长度必须是4个字节的整数倍,如果 选项长度不是4的整数倍,必须填充数据0。
ARP为IP地址到对应的硬件地址之间提供动 态映射。这个过程一般应用程序会自动完成 的,用户并不知道。 RARP是被那些没有磁盘驱动器的系统使 用,它需要系统管理员进行手工设置。
地址转换规程
ቤተ መጻሕፍቲ ባይዱ
当链路层要封装网络层分组时, 它需要知道目的物理地址。 首先,每个主机都有ARP缓存, 用来存放一些IP地址与MAC地址 的对应关系。主机根据分组头上 的目的IP地址查阅自己的ARP缓 存,如果没查到,就用广播地址 发送ARP请求。 被请求的IP地址所对应的主机返 回一个ARP响应。 主机收到响应后,就可发送数据 帧,并将该IP地址与MAC地址对 存放在ARP缓存中。