• 【计算机网络】IP协议分析


    实验目的

    应用所学知识:

          ①熟悉IP报文格式以及关键字段含义。

          ②掌握IP地址的分配方法。

          ③理解路由器转发IP数据报的流程。

    实验步骤与结果

    1.任务一:观察路由表

    打开Router0命令行输入指令查看路由表:

    Router0存在三条直接路由,一条通往10.1.2.0的静态路由,还有一条默认静态路由。

    同样地,查看Router1和Router2的路由表:

    可以看出,Router1存在两条直接路由,一条通往10.1.1.0的静态路由。

    Router2存在两条直接路由,两条分别通往10.1.1.1和10.1.2.0的静态路由。

    2.任务二:观察数据包的封装及字段变化

    首先初始化所有设备的ARP表信息,使PC0向PC2发送一个携带ICMP报文的IP数据报,随后观察IP数据报的转发:

    对比Inbound PDU和Outbound PDU的信息,发现在Outbound PDU中IP分组的TTL字段值由255减成254;另外源目IP地址字段在转发过程中始终保持不变,但是其mac地址发生了变化。

    3.任务三:观察路由器转发IP数据报的方式

    同时观察三个路由器的路由表:

    再次使PC0向PC2发送一个携带ICMP报文的IP数据报,随后观察IP数据报在PC0到PC2的往返过程:

    在OSI模型选项卡中可以发现,PC0到PC2的数据报往返可以正常进行,因为Router0有一个朝向Route2的默认路由,且Router2也有到达10.1.1.1的特定路由。

    类似地,删除所有场景,使PC2向PC1发送一个携带ICMP报文的IP数据报,随后观察IP数据报在PC2到PC1的往返过程,发现数据报会转发失败:

    检查数据包信息,根据过程分析失败原因:

    由于Router2具有10.1.2.0/24的路由,所以数据报可以到达PC1,但是Router1没有10.1.3.0/24的路由,也没默认路由,因此PC2回复的数据报被Router1丢弃。

    4.任务四:观察IP分片过程

    如下图创建需要分片的数据报:

    发送数据包可以看到,数据包产生了分片:

    观察数据报信息可以发现:

     

    两个分片ID一样,一个长度为1500bytes,一个长度为48bytes,因为原ICMP报文总长度超出了以太网帧的负载上限,必须执行分片操作。

    5.思考题

    (1)生存时间TTL、首部校验和等。

    (2)为了进行分组转发算法。

    (3)丢弃。

    (4)IP 数据报超出了以太网帧的负载上限。

    (5)加上ICMP报文首部8bytes,一共1500+8=1508bytes,封装后每一个分片IP首部还有20bytes,所以一共是1548bytes。根据贪心算法,会产生一个分片为1500,另一个分片为48bytes共两个分片。

  • 相关阅读:
    主成分分析法(数学建模)教授先生
    淘宝天猫API:buyer_cart_add-添加到购物车
    MySQL游标
    纯前端也可以访问文件系统!
    Win10/Linux+Qt+GSL配置、编译和测试
    爬虫 — Js 逆向案例一英汉互译
    代码随想录算法训练营第23期day52|300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组
    如何创建一个浏览器版的`Window11`
    d用户反驳移植到jai的经验
    2.JavaSe_数据类型&标识符
  • 原文地址:https://blog.csdn.net/Mitchell_Donovan/article/details/126311981