ICMP深入理解.docxVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? ? ? 第一节:基本原理: ICMP称为internet控制协议,主要用于传递IP网络中的差错及其他需要注意的控制信息。RFC 792中描述了ICMP协议:”ICMP是IP不可缺少的部分,所有的IP软件必须实现ICMP协议。” ICMP报文在以下几种情况下发送(RFC 792中提到) ?? 当数据报不能到达目的地 ?? 当网关已经失去缓存功能 ?? 当网关能够引导主机在更短路由上发送 类型:表示ICMP报文类型 代码:同类型字段相结合定义详细的ICMP报文 数据:根据不通类型和代码,数据域填充相应的内容 ? 类型代码描述00回显应带(Ping应答)3 ??目的不可达0网络不可达1主机不可达2协议不可达3端口不可达4需要进行分片但设置了不分片比特5源站选路失败6目的网络不认识7目的主机不认识8源主机被隔离(作废不用了)9目的网络被强制禁止10目的主机被强制禁止11由于服务类型TOS,网络不可达12由于服务类型TOS,主机不可达13由于过滤,通信被强制禁止14主机越权40源端被关闭(基于流控制)5?重定向0对网络重定向1对主机重定向2对服务类型和网络重定向3对服务类型和主机重定向80请求回显(即ping请求)90路由器通告100路由器请求11?超时0传输起见TTL为01在数据报文组装期间TTL为012?参数问题0坏的IP首部(包括各种差错)1缺少必须的选项130时间戳请求140时间戳应答150信息请求160信息应答170地址掩码请求180地址掩码应答? ? ? 第二节:Ping测试案例 Ping命令用于测试目的主机是否可达,该命令发送ICMP回显请求报文给目的主机,并等待返回ICMP回显应答。本节中将使用Ping命令作为诊断工具深入分析ICMP协议。 ? 案例一:请求回显/回显应答 在主机03上运行Ping 01的命令,主机03将会收到从01返回的ICMP回显应答。如下图所示: ? 通过本地抓包工具分析,我们可以看出从本地发出的ICMP报文是请求回显。 ? ? 而从PPTV.COM返回给本地的ICMP是回显报文: ? ? 案例二:请求超时 ? 我们ping一个不存在的地址,显示如下: 通过抓包工具的分析,可以看出:主机本地主机的ARP缓存中没有22 MAC地址的记录,所以本地主机首先会向网络广播ARP请求来获得22的MAC地址。由于主机22并不存在,所以本地主机不可能收到ARP响应。因此在执行完Ping命令后,如果主机本地主机在规定的时间内没有收到22的ICMP回显响应,那么将会在命令行界面中显示请求超时。 ? ? 案例三:MTU探测 ? MTU探测是探测方与通信方之间不用分片IP数据包就能交流MTU大小的功能,ICMP可以实现MTU探测。 以Windows系统为例,首先,探测方向目的主机送IP数据包时,先设置IP首部的分片禁止标志然后再发送。如下图所示,探测方发送大于1500字节的数据包,通信路径上MTU为1000 字节的节点将不允许超过1000字节的数据包通过。此节点尝试将IP数据包分片,但是因为数据包设置为禁止分片,所以不能分片。此节点就将该IP数据包丢弃,并用ICMP报文通知探测方“想分片,但不能分片”,同时也会将MTU=1000的信息告诉探测方。当探测方收到该ICMP 报文后就知道了不分片所能够传送的数据大小,重新发送IP数据包。通过重复以上的步骤, 就可以得到路径的MTU值的大小。 ? Ping命令可以实现MTU探测。选项“-l”指定发送ICMP报文的长度,“-f”设置分片禁止。在此案例中,网关的地址为,首先在网关上设置MTU为800,当主机03 ping (外网地址)时,就会收到“数据包需要分片,但是分片禁止”的响应消息。 通过wireshark103发送了ICMP响应的数据报,显示目的不可达,需要分片。 ? ? 案例四:记录路由 ? Ping命令使用“-R”选项,为我们提供了查看IP记录路由(RR)的机会。它使得Ping命令在发送出去的IP数据包中设置RR选项(该IP数据包包含ICMP回显请求报文)。这样,每个处理该数据包的路由器都把它的IP地址放入选项字段中。当数据包到达目的端时,IP地址清单将会复制到ICMP回显应答的报文中,这样返回途中所经过的路由器地址也会被加入清单中。当收到回显应答时,就会打印出这份IP地址清单。 记录路由的IP地址清单位于IP头中的选项数据中,如下图所示,由于IP头

文档评论(0)

mtyi297 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档