6.4.1 互联网路由探测与发现(一)
对于路由探测和发现是非常实用的互联网应用,因为他可以协助网络管理和维护人员进行网络故障的诊断和排查。我们就来熟悉一下路由跟踪程序的使用方法并结合网络协议分析软件分析并深入理解路由跟踪所涉及到协议的工作过程。我们主要使用ping程序、tracert程序、Wireshark程序。
对于普通的网络用户来说从接入网到核心网整个互联网的拓扑结构是透明的,不得而知的,虽然说运行ping命令和tracert命令能够获得数据分组传输路径上每一跳路由功能设备的IP地址,但对于普通用户对于地址列表形式所呈现的传输路径并没有直观上的感受,再加上互联网中有些路由设备会屏蔽或过滤掉探测报文,造成探测路由失败,或探测到的路径有可能不完整。
-
打开命令行窗口,使用ping命令
-
ping 192.168.184.2:最简单的命令形式,探测与网络接口(192.168.1.253)的连通性。该命令会连续的发送四个ICMP报文来探测到192.168.184.2的连通性。
-
ping -n 10 192.168.184.2:通常情况下,Windows内的ping程序发送4个探测报文。参数n的作用是设定发送的探测报文的数目。这里,会发送10个报文。
-
ping -l 200 192.168.184.2
Windows系统下ping程序默认发送探测报文数据长度是32字节,在ping命令的可选参数中加入l,可以重新指定报文数据的长度,最大不得超过65500。这里,每个探测报文数据长度设定为200字节。
-
ping -r 8 192.168.184.2
参数r表示ping程序将使用IP的记录路由选项来跟踪数据包的传输路径。其数值指明了选项中最多包含的路由器地址数目。最大不得超过9。它不仅实现了连通性的测试,还能够探测到数据包的实际的传输路径。参数的数值指明所能探测的最大的跳数不能超过9。
-
-
Windows系统中ping程序的运行结果
-
在连通状态下,运行结果会显示4条来自目标主机的回复,并会给出关于发送接收数据包的统计信息以及往返时延的估计值。
-
如果运行失败ping程序的运行结果会有两种
-
四条回复都表明无法访问目标主机。在统计信息中发送和接收报文的数目都相同都是4,在这种情况下连不通的原因是什么?
分析:我们发现这4条回复并不是来自目的主机,而是主机192.168.184.133,这个地址是运行ping程序的源主机的IP地址。从地址上看源主机和目的主机是位于相同的网段,由此我们基本可以断言,是因为目的主机不存在造成源主机的ARP地址解析无法完成。
-
四条回复信息都是请求超时,从统计信息上看接收报文为0,造成这样的结果有几种可能,比如目标主机不存在。或者目标主机上有可能运行着防火墙程序过滤掉了ICMP报文等。
-
-
-
Tracert
tracert是trace route的缩写,是用于路由探测最广泛的工具
tracert -h 可以设置跟踪的最大路由的跳数。
tracert -w 可以设置超时的时间
tracert -j 用于指定原路由跟踪
tracert命令的运行结果是按照顺序列出了传送路径中每一个路由器的信息。这中间我们会发现有些跳会显示请求超时,原因是有些路由器设置了过滤ICMP请求报文。如果跟踪失败则报告无法访问目的主机,这里发送该报告正是源主机,这是在源主机与目的主机在相同网段的情况下。如果源主机与目的主机不在相同的网段,如果目标主机不存在就会造成源主机因为地址解析失败会报差错。