`
lc_wangchao
  • 浏览: 34164 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ip 包头

阅读更多
网上摘抄的ip包头介绍:


IP包头结构如下图所示


下面具体分析IP包头中各部分的作用。

版本号(Version):长度4比特。标识目前采用的IP协议的版本号。一般的值为0100(IPv4),0110(IPv6)

IP包头长度(Header Length):长度4比特。这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。该部分占4个bit位,单位为32bit(4个字节),即本区域值= IP头部长度(单位为bit)/(8*4),因此,一个IP包头的长度最长为“1111”,即15*4=60个字节。IP包头最小长度为20字节。

服务类型(Type of Service):长度8比特。8位 按位被如下定义 PPP D T R C 0
PPP:定义包的优先级
   000 普通 (Routine)
   001 优先的 (Priority)
   010 立即的发送 (Immediate)
   011 闪电式的 (Flash)
   100 比闪电还闪电式的 (Flash Override)
   101 CRI/TIC/ECP (不知道虾米意思)
   110 网间控制 (Internetwork Control)
   111 网络控制 (Network Control)

D 时延: 0:普通 1:尽量小
T 吞吐量: 0:普通 1:尽量大
R 可靠性: 0:普通 1:尽量大
M 传输成本: 0:普通 1:尽量小
0 最后一位被保留,恒定为0

IP 包总长(Total Length):长度16比特。 以字节为单位计算的IP包的长度 (包括头部和数据),所以IP包最大长度65535字节。

标识符(Identifier)(数据报ID): 长度16比特。该字段和Flags和Fragment Offest字段联合使用,对大的上层数据包进行分段(fragment)操作。路由器将一个包拆分后,所有拆分开的小包被标记相同的值,以便目的端设备能够区分哪个包属于被拆分开的包的一部分。

标记(Flags):长度3比特。该字段第一位不使用。第二位是DF(Don't Fragment)位,DF位设为1时表明路由器不能对该上层数据包分段。如果一个上层数据包无法在不分段的情况下进行转发,则路由器会丢弃该上层数据包并返回一个错误信息。第三位是MF(More Fragments)位,当路由器对一个上层数据包分段,则路由器会在除了最后一个分段的IP包的包头中将MF位设为1。

片偏移(Fragment Offset):长度13比特。表示该IP包在该组分片包中位置,接收端靠此来组装还原IP包。

生存时间(TTL):长度8比特。当IP包进行传送时,先会对该字段赋予某个特定的值。当IP包经过每一个沿途的路由器的时候,每个沿途的路由器会将IP包的TTL值减少1。如果TTL减少为0,则该IP包会被丢弃。这个字段可以防止由于路由环路而导致IP包在网络中不停被转发。

协议(Protocol):长度8比特。标识了上层所使用的协议。
以下是比较常用的协议号:
    1    ICMP
    2    IGMP
    6    TCP
   17   UDP
   88   IGRP
   89   OSPF

头部校验(Header Checksum):长度16位。用来做IP头部的正确性检测,但不包含数据部分。 因为每个路由器要改
变 TTL的值,所以路由器会为每个通过的数据包重新计算这个值。

起源和目标地址(Source and Destination Addresses):这两个地段都是32比特。标识了这个IP包的起源和目标地址。要注意除非使用NAT,否则整个传输的过程中,这两个地址不会改变。

至此,IP包头基本的20字节已介绍完毕,此后部分属于可选项,不是必须的部分。

可选项(Options):这是一个可变长的字段。该字段属于可选项,主要用于测试,由起源设备根据需要改写。可选项目包含以下内容:

    松散源路由(Loose source routing):给出一连串路由器接口的IP地址。IP包必须沿着这些IP地址传送,但是允许在相继的两个IP地址之间跳过多个路由器。

    严格源路由(Strict source routing):给出一连串路由器接口的IP地址。IP包必须沿着这些IP地址传送,如果下一跳不在IP地址表中则表示发生错误。

    路由记录(Record route):当IP包离开每个路由器的时候记录路由器的出站接口的IP地址。

    时间戳(Timestamps):当IP包离开每个路由器的时候记录时间。

填充(Padding):因为 IP包头长度(Header Length)部分的单位为32bit,所以IP包头的长度必须为32bit的整数倍。因此,在可选项后面,IP协议会填充若干个0,以达到32bit的整数倍。
  • 大小: 28.2 KB
分享到:
评论

相关推荐

    IP包头结构详解.doc

    IP包头结构详解.doc

    自己处理IP包头的Socket聊天程序

    网络课程作业,自己封装IP包头的Socket聊天程序。比较适合Socket编程学习。

    ip包头分析

    IP数据包头分析文件,能够帮助很好的了解IP数据包的格式。

    IP校验与算法反码求和详解

     IP校验和主要是用来保证数据(IP包头)的完整性的.它用的算法非常简单,就是反码求和校验.需要注意的是反码求和又叫1的补码(one'scomplement),而2的补码就是我们通常说的补码求和了.校验算法具体如下。  1、发送方 ...

    IP包TTL字段在网络分析中的应用

    IP包头TTL字段在网络分析中的应用 目录 1 TTL介绍 4 2 应用分析案例 5 2.1 识别操作系统 5 2.2 发现路由环路 6 2.3 检测是否经过了路由设备 6 2.4 检测数据包的不对称路由 7 2.5 发现TCP会话劫持 8 2.6 发现局域网...

    网路岗7-IP报文分析工具

    “数据区大小” 的匹配针对所有DoD-IP类型包,不过需要说明的是,TCP/UDP的IP数据区是以实际数据区位置开始计算的,而其他类型的则把紧随IP包头后面的部分当作数据区。 数据块匹配 “数据块匹配”较为复杂,但却...

    TCP/IP协议的数据包头格式

    TCP/IP协议的数据包头格式,包括TCP,UDP,IP,ARP等

    IP规划(包头师范学院)

    假设包头师范学院信息学院拥有1个C类(有类地址)IP地址221.199.150.XXX,根据网络规划的要求,管理员要对其划分子网。若要求每个子网所能容纳的最大主机数为14,要得到最多的子网数量,子网掩码应该设为多少?最多...

    ip_options.rar_IP option_ip options_ip options是什么_ip头携带option

    修改IP包头中的ip option字段,实现特殊信息传输

    IpTool网络抓包工具

    网络调试中,非常好用的网络抓包工具, ...“数据区大小” 的匹配针对所有DoD-IP类型包,不过需要说明的是,TCP/UDP的IP数据区是以实际数据区位置开始计算的,而其他类型的则把紧随IP包头后面的部分当作数据区。

    IP报文格式详解

    IP报文格式详解1. IP包头的格式 IP报头前5块为必选,因此,IP包最少20字节。

    IpTool抓包工具

    “数据区大小” 的匹配针对所有DoD-IP类型包,不过需要说明的是,TCP/UDP的IP数据区是以实际数据区位置开始计算的,而其他类型的则把紧随IP包头后面的部分当作数据区。 数据块匹配 “数据块匹配”较为复杂,但却...

    解析IP数据包程序的设计与实现

    (1)捕获网络中的IP数据包...(2) 显示内容包括:捕获的IP包的版本、源地址、目的地址、源端口、目的端口、协议类型、IP包总长度、IP包头总长度、IP数据包长度等内容。 (3) 设置停止标志,当程序接受到停止命令时即停止。

    mtu测试工具及源码

    当使用到udp传输数据时,出现丢包或绝大部分包都丢失,可能时网络链路上的mtu小于udp的数据负载长度,默认的mtu大小是(1472 = 1500-ip包头-udp包头)但有些服务器或路由器有些高级功能 mtu值小于1472.而且随路由...

    扫描器篇(五)之scapy构造UDP数据包完成主机发现

    udp协议扫描 ... 原理是ip包头中的protocol部分用于标记上层协议类型,如果数值为0x01的话表示ICMP 代码部分 数据包构造扫描部分 通过python发包神器scapy构造UDP数据包 端口一定要选择没有开放的,不然

    CCNA培训视频30讲.zip

    Day-06.IP包头结构 Day-07.IP地址及常用协议 Day-08.IP路由.IOS的操作. Day-09.CDP.静态路由及实验.IOS文件系统 Day-10.DHCP及实验 Day-11.TCP.UDP报文结构 Day-12.Telnet.SSH.Traceroute.FTP Day-13.Trunk.Vlan.VTP...

    无线局域网嗅探技术与防范策略

    假设主机B想知道登陆服务器C的FTP口令是什么,那么它要做的就是捕获主机A播发的数据帧,对数据帧进行解析,依次剥离出以太帧头、IP包头、TCP包头等,然后对报头部分和数据部分进行相应的分析处理,从而得到包含在...

    ip过滤机制防火墙

    一个IP数据包过滤工具库源码,含有一个IPMonitor程序,可以查看所有IP包头信息。对编写包过滤防火墙很有用

Global site tag (gtag.js) - Google Analytics