ICMP

实验九

Ping 程序

  1. 打开cmd

  2. 启动嗅探器,开始捕获

  3. 输入“ping –n 10 www.mit.edu”

    image.png

    ​ 主机上的 ping 程序发送了10 个查询包并收到了 10 响应对于每个响应,源计算往返时间(RTT),数据包平均为 343 毫秒。

    4.Ping 程序终止时,停止在 Wireshark 中捕获数据包。 image.png

    ​ 数据包列表显示 20 个数据包,说明源发送的 10 个 Ping 查询和源接收的 10 个 Ping 响应。数据包内容区域可以查看此数据包的信息,该数据包中的 IP 数据报的协议号ICMP 的协议号 01,这表示 IP 数据报的有效载荷是 ICMP 数据包。

    ​ image.png

    ​ image.png

    ​ 该 ICMP 包的详情信息,数据包包含校验和,标识符和序列号,该 ICMP 数据包是类型 8 和代码 0,也就是“回应请求”数据包。

  4. 源主机的 IP 地址是多少?目标主机的 IP 地址是多少?

    源主机:192.168.31.79
    目标主机:23.66.153.41

  5. 为什么 ICMP 数据包没有源端口号和目的端口号?

    因为 ICMP 报文作为 IP 有效载荷承载的,不需要像 TCP 或 UDP 那样需要端口号。

  6. 查看任意的请求 ICMP 数据包,ICMP 类型和代码是什么?该 ICMP 数据包还有哪些其他字段?校验和,序列号和标识符字段有多少字节?

    类型 8 和代码 0,也就是回应请求报文,还有校验和,序列号和标识符字段,都是 4 字节。

  7. 查看任意的响应 ICMP 数据包,ICMP 类型和代码是什么?该 ICMP 数据包还有哪些其他字段?校验和,序列号和标识符字段有多少字节?

    image.png

    类型 0 编码 0 是回显应答报文,还有校验和,序列号和标识符字段,都是 4 字节。

    Traceroute 命令

    1. 打开 cmd

    2. 启动嗅探器,并开始捕获

    3. 输入“tracert www.inria.fr”

    4. tracert 程序终止时,停止在 Wireshark 中捕获数据包。

      image-20211029200859501

      image.png

      ​ 对于每个 TTL 值,源程序发送三个探测包。 Traceroute 显示每个探测包的 RTT,以及返回 ICMP TTL 超出消息的路由器的 IP 地址和名称。

  8. 您的主机的 IP 地址是多少?目标目标主机的 IP 地址是多少?

    源主机:192.168.31.70
    目标主机:128.93.162.83

  9. 如果 ICMP 发送了 UDP 数据包(如在 Unix / Linux 中),那么探测数据包的 IP 协议号仍然是 01 吗? 如果没有,它会是什么?

  10. 检查屏幕截图中的 ICMP 响应数据包。这与本实验的前半部分中的 ICMP ping 查询数据包不同吗?如果不同,请解释为什么?

    image.png

    ​ 不同,这里的 ICMP 报文时TTL 报文(类型 11 编码 0),这个是在 Traceroute 程序中,路由器检查到 Traceroute 发出的 IP 数据报中 TTL 正好过期,因此路由器就需要丢包并且发送该警告报文返回源主机。这个与 Ping 程序中所要达成的目的不同,Ping 程序是为了请求响应。

    4.检查屏幕截图中的 ICMP 错误数据包。它具有比 ICMP 响应数据包更多的字段。这个数据包含哪些内容?

    ​ image.png

    ​ 比响应数据包多了 ICMP 请求数据包的内容。

    5.检查源主机收到的最后三个 ICMP 数据包。这些数据包与 ICMP 错误数据包有何不同?他们为什么不同?

    ​ image.png

    ​ 这个是目的主机返回的回显应答报文,因为 tracert 程序的原理是发送 TTL 增加的数据包,当 TTL = 1 的包达到路由器,该路由器会将该包丢弃,并且发送 ICMP 错误给请求的机器。而最后一组 3 个数据报时可以到达目的主机的,这时由于是被目的主机接收,目的主机不会丢包,而是确确实实收到的这个探测的数据报并进行了响应。

    6.在 tracert 跟踪测量中,是否有一个连接的延迟比其他连接长得多?是否有连接的延迟明显长于其他连接?根据路由器名称,您能猜出这个连接末端的两个路由器的位置吗?

    ​ 在第 8 个节点时延突增,之后的节点时延都达到了 250+ ms。之后的路由器名都是英文名,且目的地是法国,那应该是连接到了亚洲转欧洲的分界路由器了。