ping命令和tracert命令

ping命令

当我们在使用ping命令测试网络是否连通的时候,输出的最后一项一般都是TTL=XX这样的形式,那么TTL到底代表什么呢?TTL是IP协议包中的一个值,它告诉网络路由器包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。例如,不正确的路由表可能导致包的无限循环。所以需要在包中设置这样一个值,包在每经过一个节点,将这个值减1,反复这样操作,最终可能造成两个结果:包在这个值还为正数的时候到达了目的地,或者是在经过一定数量的节点后,这个值减为了0。前者代表完成了一次正常的传输,后者代表包可能选择了一条非常长的路径甚至是进入了环路,这显然不是我们期望的,所以在这个值为0的时候,网络设备将不会再传递这个包而是直接将他抛弃,并发送一个通知给包的源地址,说这个包已传输失败。每个操作系统可能会有不同的TTL初值,如果想查看这个初值,比较简单的办法也是使用ping命令:

ping 127.0.0.1

就是ping自己的回环地址,这样的话这个ping的数据包直接就返回了,所以TTL的值不会减小,所以也就得到了TTL的初值。

tracert命令

tracert命令作为一个路由跟踪、诊断实用程序,在DOS和Unix系统下都有此命令,它通过发送Internet控制消息协议(ICMP)回显请求和回显答复消息,产生关于经过每个路由器的命令行报告输出,从而跟踪路径。该程序是网管必备的TCP/IP工具之一,经常被用于测试网络的连通性,确定故障位置。这个命令会输出数据包中间经过的路由器地址。当数据报从你的计算机经过多个网关传送到目的地时,Tracert命令可以用来跟踪数据报使用的路由(路径)。该实用程序跟踪的路径是源计算机到目的地的一条路径,不能保证或认为数据报总遵循这个路径。

该诊断实用程序将包含不同生存时间(TTL)值的Internet控制消息协议(ICMP)回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的TTL之前至少递减1,必需路径上的每个路由器,所以TTL是有效的跃点计数。数据包上的TTL到达0时,路由器应该将“ICMP已超时”的消息发送回源系统。Tracert先发送TTL为1的回显数据包,并在随后的每次发送过程将TTL递增1,直到目标响应或TTL达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP已超时”的消息来确定路由。不过,有些路由器悄悄地下传包含过期TTL值的数据包,而tracert看不到。

然而我自己在家做测试的时候分别使用命令:

ping www.baidu.com

返回的TTL=54,而我的电脑的TTL起始值为64,也就是说中间经过了64-54=10次转发。

使用tracert www.baidu.com

返回的只有一个路由器表的地址,这个非常奇怪......,这也就是说明tracert命令发送TTL=1的第一个数据包就到达了目的地!也就是说明我的路由器反悔了一个ICMP-ECHO而并非返回的是ICMP已超时,所以我的PC就以为数据包已经到达了目的地址。最终导致这个结果的原因是我使用的是TP-Link的路由器,而这款路由器是不支持tracert命令的,这款路由器本身不对tracert数据包进行解析,所以,中间的跳数都看不到。

时间: 2024-12-27 12:18:18

ping命令和tracert命令的相关文章

网络管理常用命令之五 - Tracert 命令详解(图文)

5.tracert命令... Tracert工作原理... 不带选项... -d选项... -h选项... -w选项... 5.tracert命令 Tracert是路由跟踪程序,用于确定 IP 数据报访问目标所经过的路径.Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由. 在工作环境中有多条链路出口时,可以通过该命令查询数据是经过的哪一条链路出口. Tracert一般用来检测故障的位置,我们可以使用用tracert IP命令确定

通过ping和tracert命令来判断网络经过多少个路由

摘抄自: https://blog.csdn.net/foreverhuylee/article/details/49853075 当我们访问某个网络时,通过tracert命令,就能知道本机与目标主机之间经过多台主机, 即经过多少路由. ------------------------------------------------------------------- eg: C:\Users\acer>tracert www.datang.com 通过最多 30 个跃点跟踪到 www.dat

Tracert 命令

Tracert 命令 一.实验目的 通过抓包,了解Tracert 命令的工作方式 二.实验拓扑 一.实验步骤 1.为每个路由器配置IP 2.配置RIP,确保全网互通 3.使用Tracert命令,在RT1上Tracert 3.3.3.2,通过在RT1上的G0/0接口抓包,查看数据包的内容 四.实验内容 RT1 <H3C>system-view [H3C]sysname ZJRT1 [ZJRT1]interface GigabitEthernet 0/0 [ZJRT1-GigabitEtherne

tracert命令详解_tracert结果详解_tracert命令使用详解

17:06:40 正在等待客服售后工程师令狐冲接入,您可以先简单描述所要咨询的问题,如果长时间没有响应,您也可以 重新选择客服 . 17:06:42 您好,客服售后工程师令狐冲为您服务.售后工程师令狐冲 17:06:52 尊敬的用户您好,很高兴为您服务,请问有什么可以帮到您呢?前端 17:06:58 你好,帮看下这个vps[图]2/3地区ping不通前端 17:07:05 售后工程师令狐冲 17:07:18 请您提供您的FTP名(虚拟主机用户)及服务器IP(VPS 用户),我帮您查询!好吗?前端

tracert命令详解及应用

Tracert是什么? Tracert(跟踪路由)是路由跟踪实用程序,用于确定 IP 数据包访问目标所采取的路径.Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由. Tracert使用UDP服务,使用了两个ICMP报文——超时报文和终点不可达报文来找出一个分组的路由.下面是使用截图: ①    一般而言,图中的第一个往返时间都会比较大,这是因为第一次发送IP分组,需要使用ARP协议找到路由器的物理地址的原因.此时路由器的物理地址

命令提示符(cmd)中的tracert命令详解(小技巧)

tracert也被称为Windows路由跟踪实用程序,在命令提示符(cmd)中使用tracert命令可以用于确定IP数据包访问目标时所选择的路径.本文主要探讨了tracert命令的各个功能. 百度经验:jingyan.baidu.com 工具/原料 计算机一台,要求安装Windows操作系统,本例中采用的是Win7版本. 百度经验:jingyan.baidu.com 方法/步骤 1 进入Windows命令提示符程序.Win7系统直接在开始菜单下方的输入框中输入“cmd”或“命令提示符”就可以进入

tracert 命令详解

tracert 命令详解 How to Use the TRACERT Utility The TRACERT diagnostic utility determines the route to a destination by sending Internet Control Message Protocol (ICMP) echo packets to the destination. In these packets, TRACERT uses varying IP Time-To-Li

ping一个网段内所有命令的批处理命令

for /l %%p  in (x,1,y) do @ping 192.168.1.%%p -n 1  >> c:\1.txt 保存为1.bat,其中比如ping 192.168.1.1~192.168.1.255,则x为1,y为255. 输出在C盘下面1.txt.每次ping一个包. 然后再在命令行下面运行arp -a 即可查看该网段内所有主机mac——ip对应表 ping一个网段内所有命令的批处理命令

命令提示符(cmd)中的tracert命令详解

tracert也被称为Windows路由跟踪实用程序,在命令提示符(cmd)中使用tracert命令可以用于确定IP数据包访问目标时所选择的路径.本文主要探讨了tracert命令的各个功能. 工具/原料 计算机一台,要求安装Windows操作系统,本例中采用的是Win7版本. 方法/步骤 1 进入Windows命令提示符程序.Win7系统直接在开始菜单下方的输入框中输入"cmd"或"命令提示符"就可以进入了.XP系统需要在开始菜单中找到运行(或按下快捷键R),在运行