精华内容
下载资源
问答
  • 2020-11-20 12:19:48

    ip数据报格式详解

    TCP/IP协议定义了一个在因特网上传输的包,称为IP数据报,由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。首部中的源地址和目的地址都是IP协议地址。

    ip数据报格式

    1.jpg
    如上图所示,ip数据报格式分为首部和数据部分。并且最高位在左边,为0位,最低位在右边,为31位。在传输的时候按照从高到低的顺序进行传输。

    ip数据报的各个字段的功能如下:

    • 版本号:表示该ip数据报使用的ip协议版本,占用四位二进制数。
    • 首部长度:指出整个报头的长度(包括可选字段),该长度以32位进制数为计数单位,接收端通过首部长度可以计算出报头在何处开始读取数据和何处结束读取数据。
    • 服务类型:占用8个二进制位,用于规定本数据包的处理方式。
    • 总长度:占用16个二进制位,总长度指的是整个pi数据包的长度
    • 标识:IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加 1,并将此值赋给标识字段。但这个“识”并不是序号,因为 IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。
    • 标志:占3位占3 位,但目前只有2位有意义。 标志字段中的最低位记为 MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为 DF(Don’t Fragment),意思是“不能分片”。只有当 DF=0时才允许分片。(指示原数据报能不能分片)
    • 片偏移:占13位。较长的分组和分片后,某片在原分组中的相对位置。也就是说,相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。
    • 生存时间:数据报每经过一个路由器,就把生存时间减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把生存时间值减一。当生存时间为0时候,就丢弃这个数据报。
    • 协议:占8位,用于指出此数据报携带的数据是使用何种协议,以便使目的主机的ip层知道应该将数据部分上交给哪个处理过程
    • 首部校验和:占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每次经过一个路由器都要重新计算一下首部检验和。
    • 源地址:占32位
    • 目的地址:占32位
    更多相关内容
  • IP数据包详解

    千次阅读 2020-09-16 17:35:21
    不可靠:意思它不保证IP数据包能成功地到达目的地,IP仅提供尽力而为的传输服务。任何要求的可靠性必须有上层来提供。 无连接:意思是IP并不维护任何关于后续数据报的状态信息,每个数据报的处理都是独立的。 IP报...

    引言

    IP提供不可靠,无连接的数据报传送服务。

    1. 不可靠:意思它不保证IP数据包能成功地到达目的地,IP仅提供尽力而为的传输服务。任何要求的可靠性必须有上层来提供。
    2. 无连接:意思是IP并不维护任何关于后续数据报的状态信息,每个数据报的处理都是独立的。

    IP报数据格式

                                    

    IP数据包由首部和数据两部分组成,首部由固定部分和可变部分构成,固定部分长度是20个字节,是所有IP数据报必须具有的,可变部分是可选的,长度也是可变的。

    1. 版本:4bit,指协议版本,通信双方必须使用相同的IP协议版本。IPV4对应协议版本号为4.
    2. 首部长度:4bit,单位4字节。当首部长度取1111时,首部长度达最大值15×4=60字节,有以下推论:
      推论1:当IP分组首部长度不是4字节的整数倍时,必须使用最后的填充字段加以填充;
      推论2:数据部分用用在4字节的整数倍开始;
    3. 服务:8bit;
    4. 总长度: 16bit,单位字节。当总长度取1111 1111 1111 1111时,总长度取最大值65535字节。数据链路层帧格式中数据部分长度最大值为MTU,当IP层的数据报封装成链路层的帧时,此数据包的总长度(首部+数据部分)若大于MTU,则需要分片。
    5. 标识:16bit。当数据报长度大于MTU时必须分片,这个标识字段值就会被复制到所有的分片数据包中。相同的标识字段值使分片后的各数据包片最后能正确的重装为原来的数据报。
    6. 标志:3bit,目前只有2位有意义。最低位MF,1(默认值)表示“还有分片”,0表示“最后一个分片”;中间位DF,1(默认值)表示“不分片”,0表示“允许分片”。
    7. 片偏移:13bit,单位8字节,相对数据部分起点的偏移。可知每个分片的数据部分长度都一定是8字节的整数倍。
    8. 生存时间(TTL):8bit, 表明数据包在网络中的寿命。发出数据报的源点设置这个字段,其目的是防止无法交付的数据报无限制的在网络中兜圈子,白白消耗网络资源。单位不是秒,是跳hop,每经过一个路由时减1,直到为0时被抛弃。
    9. 协议:8bit,运输层所使用的协议,方便IP层知道应将数据包部分上交给哪个协议栈处理。
    10. 首部校验和:16bit,没经过一个路由器,都需要重新计算一下首部校验和,比如生存时间等首部区域的值可能发生变化,不检验数据部分可以减少工作量。
    11. 源地址:32bit.
    12. 目的地址:32bit.

    IP数据报的分片

    如果IP数据报被分片,分片后的数据报和原来没有分片的数据报结构是相同的,即也有是由首部和数据部两部分组成:数据区是原IP数据报数据区的一个连续部分,头部是原IP数据报头部的复制,但与原来未分片的IP数据报头部有两点主要不同:标志和片偏移。

    IP数据报的重组

    重组依赖首部中的以下三个域:

    1. 标识:相同的标识代表这些数据来源于同一个IP数据报;
    2. 标志:表示是否是最后一个分片;
    3. 偏移量:确定分片在原数据报中的位置。

     

    展开全文
  • 1)目前的协议版本是4,因此IP有时也称作IPv42)首部长度指的是首部占32 bit字的数目,包括任何选项。由于它是一个4比特字段,因此首部最长为60个字节。3)服务类型(TOS)字段包括一个3bit的优先权子字段(现在已被忽略...

    IP数据报的格式如图所示。普通的IP首部长为20个字节,除非含有选项字段。

    分析图中的首部。最高位在左边,记为0bit;最低位在右边,记为31 bit。

    1)目前的协议版本号是4,因此IP有时也称作IPv4

    2)首部长度指的是首部占32 bit字的数目,包括任何选项。由于它是一个4比特字段,因此首部最长为60个字节。

    3)服务类型(TOS)字段包括一个3bit的优先权子字段(现在已被忽略),4bit的TOS子字段和1bit未用位但必须置0。4bit的TO S分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。4bit中只能置其中1bit。如果所有4bit均为0,那么就意味着是一般服务。

    下图列出了对不同应用建议的TO S值。

    4)总长度字段是指整个IP数据报的长度,以字节为单位。利用首部长度字段和总长度字段,就可以知道IP数据报中数据内容的起始位置和长度。由于该字段长16比特,所以IP数据报最长可达65535字节,但是一般不会这么长。

    5)标识字段唯一地标识主机发送的每一份数据报。通常每发送一份报文它的值就会加1。

    6)TTL(time-to-live)生存时间字段设置了数据报可以经过的最多路由器数。它指定了数据报的生存时间。TTL的初始值由源主机设置(通常为32或64),一旦经过一个处理它的路由器,它的值就减去1。当该字段的值为0时,数据报就被丢弃,并发送ICMP报文通知源主机。

    7)协议字段 表达了它如何被IP用来对数据报进行分用。根据它可以识别是哪个协议向IP传送数据。

    8)首部检验和字段是根据IP首部计算的检验和码。它不对首部后面的数据进行计算。ICMP、IGMP、UDP和TCP在它们各自的首部中均含有同时覆盖首部和数据检验和码。

    9)每一份IP数据报都包含源IP地址和目的IP地址。

    10)

    最后一个字段是任选项,是数据报中的一个可变长的可选信息。目前,这些任选项定义如下:

    这些选项很少被使用,并非所有的主机和路由器都支持这些选项。

    选项字段一直都是以32 bit作为界限,在必要的时候插入值为0的填充字节。这样就保证IP首部始终是32 bit的整数倍(这是首部长度字段所要求的)。

    展开全文
  • IP 数据报首部分析

    千次阅读 2020-10-25 15:21:33
    今咱就抓个数据报具体看一看真实网络中的 IP 报首部. 操作方法很简单, 使用wireshark进行抓包. 抓包后随便找个包看一下就行, 毕竟所有通信的包都需要经过网络层.(同时,wireshark会对协议的相关信息给出标识, 更...

    来来来, 爷们. 不是一直说纸上得来终觉浅么. 今咱就抓个数据报具体看一看真实网络中的 IP 报首部.

    操作方法很简单, 使用wireshark进行抓包. 抓包后随便找个包看一下就行, 毕竟所有通信的包都需要经过网络层.(同时, wireshark会对协议的相关信息给出标识, 更方便我们查看)

    其中数据链路层的首部信息在整个数据的最前面, 其后跟着的是网络层, 传输层, 最后剩下的是传输的数据内容. 这个很好理解, 数据从上到下, 每过一层, 都会添加对应的头部信息, 先过传输层就先加上咯.

    咱们今儿个主要就看看 IP 协议的首部内容. 走着...

    要查看指定字段在其中的位置, 左键点击一下, 数据内容就会高亮了. 好贴心哦.

    简单介绍一下各个字段的意思:

    • 协议版本号(4b): 标识当前 IP 协议的版本号.
    • 首部长度(4b): 标识首部长度. 单位是/4B. 也就是首部最长15*4=60B
    • 区分服务(8b):
    • 总长度(16b): 首部+数据的长度. 因为 TCP 的首部是在传输层加上的, 所以传输层的首部也会被认为是数据的一部分. IP 层可传输的数据长度为 65535-60=65475B
    • 标识(16b): 当数据包被分组时, 用于标识不同的分组. 方便接收方对数据包进行重组
    • 标志(3b): 用于一些特殊标志
    • 片偏移量(13b): 当数据包超出长度后, 会分组传输. 此字段标识数据的偏移量. 单位是/8B
    • 生存时间(8b): 数据包在网络中的寿命, 经过 n 跳之后就不再转发了
    • 协议(8b): 标识当前包的数据部分协议
    • 校验和(8b): 用于校验在网络传输中是否失真. 仅校验首部
    • 源地址(32b): 数据包的源IP地址
    • 目标地址(32b): 数据包的目标 IP 地址
    • 可选内容: 一些其他的可选字段

    对于网络层协议来说, 每增加一个字段, 都会影响整体的传输速度. 所以当初设计协议的时候, 定是经过了一再斟酌, 最终才保留了这些不可获取的字段.

    协议版本号

    标识当前协议的版本, 目前主要用来区分 IPV4和 IPV6.

    若此字段缺失, 则无法区分不同版本 IP 协议

    首部长度

    因为协议的首部存在可选字段, 所以需要添加字段用来指明首部的长度. 以4B 为一个单位应该也是经过多次探讨的了. 当首部为20b 时, 则没有使用可选字段.

    若此字段缺失, 无法正确识别协议首部结尾.

    区分服务

    标识此数据包在传输过程中的一些要求服务.

    • 1-3位: 标识数据包重要性. 在网络分组传输种, 较为重要的包会优先传输. 如一个语音通话的数据包, 和一个文件下载的数据包, 明显前者更为优先.
    • 4位: 0(正常延迟), 1(想要较低的延迟)
    • 5位: 1(想要高流量)
    • 6位: 1(要高可靠性)
    • 7位: 也是拥塞控制相关的.
    • 8位: 1(网络拥塞预警)

    总长度

    用于对识别当前数据报的结尾.

    标识

    因为数据在网络层会被分片, 所以增加标识分片所在分组.

    若此字段缺失, 则无法对数据包进行正确重组.

    标志

    • 第一位: 保留
    • 第二位: 0(可以分段), 1(不能分段)
    • 第三位: 0(当前是最后一个分段), 1(后面还有更多的分段)

    偏移量

    当接收方接收到多个数据分段时, 进行重组的依据. 该字段占13b, 单位是8B. 也就是说 IP 协议传输数据超过: (2^14-1)*8=131064B≈123kb. 不过一个网络层的包也不会这么大.

    而网络层对数据包进行分段是依据 MTU 计算的. MTU 则是其自动协商, 取链路最小值.

    若此字段缺失, 则接收方无法对数据包进行正确重组.

    生存时间

    就是你在使用ping命令时, 现实的ttl. 此值每经过一次转发, 就会减一. 当减到0的时候, 该数据包就被丢弃了.

    若此字段缺失, 当出现在网络中不存在的目标, 导致数据包在网络中循环传输时永远都不会消失. 而这样的数据一多, 则整个网络都会变得拥堵.

    协议

    标明数据部分的协议, 用于正确识别数据包上层协议, 并将数据正确转交给指定进程.

    搜一下: IP 协议号, 随便打开一个可以看到所有的协议.

    若此字段缺失, 则网络层无法将数据正确上交.

    校验和

    接收方校验在物理传输过程中, 协议首部是否存在损坏. 数据部分不做检查.

    若此字段缺失, 则接收方无法缺失接收的数据与发送的数据是否一致.

    源地址

    用于标识数据包的源地址.

    目标地址

    用于标识数据包的目标地址.

    可选内容

    方便后面对协议的扩充. 现在已有的如:

    • 记录路径: 每个路由器都记下其IP 地址
    • 记录时间戳: 每个路由都记下其IP 与时间
    • 等等

    感觉可选内容在使用中很少用到, 我抓了各种包, 暂时还没有碰到过有使用的.


    协议在设计的时候真的是省吃俭用啊, 平常开发时用到的数据都是以字节为单位的, 人家网络层协议是以位为单位使用的.

    后面再看TCP首部的时候, 也可以如此查看其在传输过程种的真正模样.

    爷们, 希望你看到这里了...

    展开全文
  • IP报文首部结构、TCP报文首部结构

    千次阅读 2017-11-26 11:22:32
    一、IP报文首部结构 每行32字节,一个元组(4字节) 1、版本 首部长度(因为有options存在) 服务类型(可靠?优先?) 总长度 2、分片ID(大的分片发,标编号便还原) R/DF(不分片)/ MF(更多分片)片偏移量
  • NFS即网络文件系统,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。我们通过捕获的文件进行分析:nfs.jpg ...
  • 数据包分析面试题带答案

    千次阅读 2020-10-26 12:51:15
    自己在学习Wireshark数据包分析实战过程中整理的问题。 1.请简单说明下数据包嗅探原理: 2.请写出几个常见的协议: 3.协议通常是用来解决什么问题的: 4.请写出七层OSI参考模型: 5.请简单写出七层OSI模型的功能: 6....
  • 在OSI七层模型中,每一层的作用和对应的协议如下: 二、TCP头部结构和字段介绍 从上面图片可以看出,TCP协议是封装在IP数据包中。 下图是TCP报文数据格式。TCP首部如果不计选项和填充字段,它通常是20个字节。 下面...
  • 源/目的端口:表示数据是从哪个进程来,到哪个进程去; 32位序号/32位确认:后面详细讲; 4位TCP报头长度:表示该TCP头部有多少个32位bit(有多少个4字节);所以TCP头部最大长度是 15 * 4 = 60 6位标志位: URG...
  • wireshark应用 github地址: github wireshark使用 wireshark视图以及各个字段说明 分析包的详细信息 后期会通过到处文本的方式进行注释,前期先使用图片,这样容易用...互联网层IP头部信息 Transmission Control Prot
  • 【Wireshark】数据包分层结构

    千次阅读 2020-02-26 20:07:24
    (互联网层) 提供了编址方案,IP协议工作的地方(数据包) 数据链路层 将由物理层传来的未经处理的位数据包装成数据帧 物理层 对应网线、网卡、接口等物理设备(位) 认识wireshark数据包 在Wireshark中...
  • 1. IP介绍IP是TCP/IP协议族中最为核心的协议。大家,如TCP、UDP、ICMP及IGMP数据,都是在IP数据报格式基础上再封装一层再来传输的(见图1 - 4)。不可靠(unreliable)的意思是它不能保证 IP数据报能成功地到达目的地。 ...
  • Wireshark抓包工具使用以及数据包分析 置顶qicheng7772017-07-06 11:06:3143050已收藏70 分类专栏:计算机网络文章标签:wireshark抓包数据分析IP首部TCP首部UDP首部 版权 多年之后,愿你有清风与...
  • 打开Wireshark抓包工具开始抓包会看到如下展开内容: 这里我是对wlan进行抓包,192.168.2.112是我当前wifi的ip地址。 点击某个包,可以查看具体内容,差不多刚好对于五层协议: Frame:物理层的数据帧概况。 Eth....
  • TCP报文解析

    千次阅读 2020-04-18 22:21:24
    TCP报头中的源端口和目的端口IP数据报中的源IP与目的IP唯一确定一条TCP连接。 顺序字段:占32比特。用来标识从TCP源端向TCP目标端发送的数据字节流,它表示在这个报文段数据部分的第一个字节。在TCP传送的流...
  • ARP(AddressResolutionProtocol,地址解析协议)是根据IP地址获取物理地址的一个TCP/IP协议。由于OSI模型把网络工作分为七层,IP地址在OSI模型的第三层,MAC地址在第二层,彼此不直接通信。在..
  • ip icmp flood 等 常见的攻击

    千次阅读 2019-09-12 10:23:00
    在这里就有一个安全漏洞可以利用了,就是如果黑客们在截取IP数据包后,把偏移字段设置成不正确的值,这样接收端在收到这些分拆的数据包后,就不能按数据包中的偏移字段值正确组合这些拆分的数据包,但接收端会不断...
  • 上一篇:DIY TCP/IP TCP模块的实现0 9.3 TCP数据帧的接收 基于9.1和9.2节的介绍,本节实现TCP数据帧的接收。IP模块将上层协议类型为0x06的IP数据帧交给TCP模块,TCP模块根据IP数据帧构造TCP伪头部,剥去IP头部后得到...
  • tplink的ip默认地址是什么?

    千次阅读 2020-12-23 13:58:19
    展开全部TPLINK默认IP地址是192.168.1.1。查看普联62616964757a686964616fe4b893e5b19e31333366303831TPLINK路由器背面或底部,有以下一种地址:可以看到路由器IP:192.168.1.1,如下:可以看到管理页面:tplogin.cn...
  • 如果ISN是固定的,攻击者很容易猜出后续的确认,因此 ISN 是动态生成的。 2、什么是半连接队列 服务器第一次收到客户端的 SYN 之后,就会处于 SYN_RCVD 状态,此时双方还没有完全建立其连接,服务器会把此种状态...
  • TCP/IP第四层--传输层TCP数据报文详解

    万次阅读 2019-01-28 19:47:48
    TCP/IP第四层--传输层TCP数据报文详解
  • 上一篇:DIY TCP/IP TCP模块的实现1 9.4 TCP连接的初始化 TCP是面向连接的协议,面向连接即有状态的协议。通信双方通过三步握手,达到连接建立的状态,然后基于这种状态交互TCP数据帧。断开连接是通信双方通过四步...
  • 表12-2 操作系统指纹术的数据包分类 协议头部 字段 数据包1的值 数据包2的值 IP 初始TTL 128 64 IP 不分片标志 设置/不设置 设置/不设置 TCP 最长段大小 1440 Bytes 1460 Bytes TCP 窗口大小 64240 Bytes 2920 ...
  • 展开此标题,你会发现这个数据包被列为数据包1的重复ACK。 图11-10 第一个重复ACK数据包 如图11-11所示,接下来的几个数据包继续这个过程。 图11-11 由于乱序数据包的影响,生成了额外的重复ACK 捕获文件的第4个...
  • 图9-10 DNS数据包结构 DNS ID(DNS ID Number):用来对应DNS查询和DNS响应。 查询/响应(Query/Response, QR):用来指明这个数据包是DNS查询还是响应。 操作码(OpCode):用来定义消息中请求的类型。 权威...
  • 前3项中只有MAC地址解析被选中了 Use captured DNS packet data for address resolution:从已捕获的DNS数据包中解析出了IP地址和DNS域名之间的映射。 Use an external network name resolver:允许Wireshark为你...
  • ICMP(我们会在这章之后介绍到)利用IP传递数据包,我们可以通过在Packet Details面板中展开IP头区段看到(见图7-11)。 你可以看到IP的版本为4,IP头的长度是20字节,首部和载荷的总长度是60字节,并且TTL域的值...
  • 取消TCP数据包序列号相对值的显示,改为绝对值,Edit→Preferences展开Protocols并选择TCP,然后取消勾选RelativeSequenceNumbers andWindowScaling框,点击OK即可 29、基于SSL协议的名称是TLSv1  加密后传输...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,744
精华内容 1,097
关键字:

19号数据包ip展开详情

友情链接: 8_wave energy.rar