关于Ping命令的问题

首先说明: 所使用操作系统为虚拟机内Red Hat linux 9.0操作系统 主机为XP系统
               虚拟机版本为VMware_Workstation ACE 6.0.2版本   
       测试Ping程序IP记录路由选项功能时,数据报中RR选项为什么始终填写第一项,而且这第一项的IP地址就是本机出口IP地址,测试结果截图如下,请大家帮忙看看,小弟先行谢过:
关于Ping命令的问题_第1张图片

自我解答:估计是我的路由器不支持记录路由选项,路由器型号TP-WR340g+
测试:
1,虚拟机采用NAT模式上网,虚拟机中linux中运行PING -R www.sina.com,可以Ping通,而且请求的数据报长度为124字节(84+40),启用RR选项,可以记录Linux系统IP地址,并存放于第一项。返回的数据报没有启用RR项,长度为84字节
2,虚拟机采用网桥模式上网后,再次运行ping -R www.sina.com,却P不通,然后改用Ping www.sina.com,又可以正常P通
由此,我估计是本地路由器对RR选项不支持,然而问题又来了,既然本地路由器对RR选项不支持,那么本地路由器是哪种方式的不支持呢?这里有两种方式:
第一种,本地路由器不认识这种启用RR选项的数据报,接受后直接丢弃,然后返回一个ICMP差错数据报给源主机,显然根据实际情况,本地路由器没有这样做
第二种,本地路由器认识这种包,但是却没有往RR选项上写IP地址的功能,只是把这份数据报进行转发,并不对它进操作。
     从实际测试情况来看,似乎第二种情况靠得住,因为能P通,说明数据报已经通过本地路由器。然而事实是,从本机到sina服务器,中间起码也得经过上十个路由器,难道中间的所有路由器都不支持RR选项,或许真有这样的巧事,那么为什么测试的结果是请求数据报中包含RR选项并且在第一项写进本机IP地址,而应答数据报RR选项却是空的呢?《TCP/IP详解 卷一协议》中第七章知识,第66页倒数第二段“RFC指定路由器记录出口IP地址”,“当原始主机收到带有RR选项的ICMP回显应答时,它也要把它的入口IP地址放入清单中.",由此可知,最容易理解的测试结果应该是请求数据报中RR选项是空的,而应答数据报中RR选项第一项写入本机IP地址。实际结果却截然不同。
     本人之所以要把自己所想详尽写出来,就是希望能有高手指出我的错误所在,即使大家没有肯定的答案,一起参与讨论也是值得高兴的!

本文出自 “个人学习” 博客,谢绝转载!

你可能感兴趣的:(命令,职场,ping,休闲)