【计网实验】Lab-ICMP

Lab-ICMP

一、实验操作

Step1:命令行输入 ping www.baidu.com 进行测试。
Step2:命令行输入 tracert www.baidu.com
Step3:打开wireshark,使用icmp过滤,同时开启Resolve network names。
然后再次在命令行内进行step1和step2的操作。得到结果图下图所示。
在这里插入图片描述

二、查看

各字段描述如下在这里插入图片描述

回答下列问题:(底下的问题中文翻译有点怪怪的,懒得改了)

  1. ICMP 回显请求和回显应答数据包的 Type/Code 值分别是什么?
    答:请求包Type/Code为0x0800;应答包为0x0000。
  2. 如何比较一个回显请求的标识符和序列号和对应的回声回复?
    答:一个请求包对应的应答包的Sequence Number相同。
  3. Identifier 和 Sequence Number 如何比较连续的 echo request 数据包?
    答:由上图可以看出,连续的请求应答包在Sequence Number会增加1。
  4. echo reply中的数据和echo request中的数据是一样的还是不同的?
    答:是相同的。

三、TTl超时的包。

选中TTL超时的包(黑色的),进行展开查看。
在这里插入图片描述

绘制TTL超时包的结构图

TypeCodeChecksumUnusedIPICMP
1 Byte1 Byte2 Byte4 Byte20 Byte8 Byte

其中IP

VersionHeader LengthDiffrentiate Services FieldTotal LengthIdentificationFlags,Fragment OffsetTime to LiveProtocolHeader ChecksumSource AddrDestination Addr
4 Bit4 Bit1 Byte2 Byte2 Byte2 Byte1 Byte1 Byte2 Byte4 Byte4 Byte

回答问题:

  1. ICMP TTL 超出数据包的类型/代码值是多少?
    答:0x0b00
  2. 说明如果接收者不提前知道期待什么样的 ICMP 消息,它如何安全地找到并处理所有 ICMP 字段。
    答:ICMP在沟通之中,主要是透过不同的类别(Type)与代码(Code)让机器来识别不同的连线状况,从而对应不同的ICMP消息格式。
  3. TTL Exceeded数据包的ICMP头有多长?
    答:8B
  4. ICMP 有效载荷包含一个 IP 报头。 此标头中的 TTL 值是多少?
    答:TTL=1。数据包每经过一个路由器TTL将会减1,当TTL为0时将丢弃这个包。所以此时TTL=1的包经过处理后TTl将变为0,路由器将会丢弃此IP包并向IP包的发送者发送 ICMP time exceeded消息。在这之前它是2。

四、网络路径

1、你的计算机(源)如何从一个TTL超出的数据包中学习沿路径的路由器的IP地址?
答:TTL超时包的负载部分的IP报头里面有两端的路由器IP地址。
工作原理:

  1. 从源地址发出一个ICMP请求回显(ICMP Echo Request)数据包到目的地址,并将TTL设置为1;
  2. 到达路由器时,将TTL减1;
  3. 当TTL变为0时,包被丢弃,路由器向源地址发回一个ICMP超时通知(ICMP Time Exceeded Message),内含发送IP包的源地址,IP包的所有内容及路由器的IP地址;
  4. 当源地址收到该ICMP包时,显示这一跳路由信息;
  5. 重复1~5,并每次设置TTL加1;
  6. 直至目标地址收到探测数据包,并返回ICMP回应答复(ICMP Echo Reply);
  7. 当源地址收到ICMP Echo Reply包时停止tracert

2、沿着traceroute探测的路径,每个路由器要探测多少次?
答:Traceroute每跳默认发送3个探测包。在未能到达路由器或未返回ICMP超时通知的情况下,相应的延时位置会以*显示。(tracert一样)

3、你的计算机(源)是如何发送一个请求包来寻找(通过触发TTL超时响应)路由器N沿着路径跳转到目的地的?
答:
在这里插入图片描述
如图,源地址172.22.160.28向目的地址110.242.68.3发送ICMP请求回显(ICMP Echo Request)数据包,每跳默认发送3个,TTL设置为1;数据包遇到路由器之后,被丢弃,返回Time tolive exceeded超时通知,解析出路由器IP地址172.19.251.13。源地址再发数据包,设置TTL=2,从而解析出第二跳路由172.16.201.66。同理,解析出第三跳路由61.49.176.89。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值