Max—— 前端攻城狮 's Blog

A Simple pure blog generated by jekyll

利用Traceroute追踪路由情况

<< Back

利用Traceroute追踪路由情况

先来看看百度百科的定义:traceroute,现代Linux系统称为tracepath,Windows系统称为tracert,是一种电脑网络工具。它可显示数据包在IP网络经过的路由器的IP地址。

互联网中,信息的传送是通过网中许多段的传输介质和设备(路由器,交换机,服务器,网关等等)从一端到达另一端。每一个连接在Internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP地址。

通过Traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。

UNIX系统中,我们称之为Traceroute,微软的Windows中为Tracert。 Traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备Traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其IP地址。

例如在Windows系统下,直接执行命令行:

	$ tracert www.baidu.com
	

例如在Linux系统下,直接执行命令行:

	$ tracepath www.baidu.com
	

例如在Mac OSX系统下,直接执行命令行:

	$ traceroute www.baidu.com
	

呈现的结果是:

	Mac-Max: max$ traceroute www.baidu.com
traceroute: Warning: www.baidu.com has multiple addresses; using 180.97.33.107
traceroute to www.a.shifen.com (180.97.33.107), 64 hops max, 52 byte packets
 1  192.168.1.1 (192.168.1.1)  1.563 ms  0.814 ms  0.800 ms
 2  58.62.72.1 (58.62.72.1)  3.285 ms  2.916 ms  2.804 ms
 3  59.42.127.89 (59.42.127.89)  2.679 ms
    59.42.127.73 (59.42.127.73)  2.891 ms
    59.42.127.89 (59.42.127.89)  2.729 ms
 4  119.145.81.125 (119.145.81.125)  7.477 ms
    119.145.81.253 (119.145.81.253)  3.386 ms
    121.8.195.125 (121.8.195.125)  5.180 ms
 5  121.8.192.157 (121.8.192.157)  7.648 ms
    58.61.216.57 (58.61.216.57)  5.804 ms
    61.144.3.178 (61.144.3.178)  5.088 ms
 6  202.97.64.41 (202.97.64.41)  33.041 ms  34.201 ms
    202.97.64.65 (202.97.64.65)  33.085 ms
 7  202.102.69.2 (202.102.69.2)  34.439 ms  36.748 ms  35.908 ms
 8  * * *
 9  180.97.32.34 (180.97.32.34)  43.393 ms
    180.97.32.14 (180.97.32.14)  29.785 ms
    180.97.32.10 (180.97.32.10)  30.936 ms
10  * * *
11  * * *
12  * * *

	

解释如下:

第一行告诉我们: www.baidu.com 这个域名有多个物理地址 目前正在使用的是 180.97.33.107

观察第一跳:首先连接的是本地的路由器的地址192.168.1.1

观察第二跳:连接的是本地moden(调制解调器)的物理地址

可以看到数据包是一步一步的通过这样的层级关系发送出去的。

发表于: 22 Dec 2012