1. pathping命令的主要功能是什么?有那些主要参数?各个参数的作用是什么?
提供有关在源和目标之间的中间跃点处网络滞后和网络丢失的信息。Pathping 在一段时间内将多个回响请求消息发送到源和目标之间的各个路由器,然后根据各个路由器返回的数据包计算结果。因为 pathping 显示在任何特定路由器或链接处的数据包的丢失程度,所以用户可据此确定存在网络问题的路由器或子网。Pathping 通过识别路径上的路由器来执行与 tracert 命令相同的功能。然后,该命令在一段指定的时间内定期将 ping 命令发送到所有的路由器,并根据每个路由器的返回数值生成统计结果。如果不指定参数,pathping 则显示帮助。
语法
pathping [-n] [-h MaximumHops] [-g HostList] [-p Period] [-q NumQueries [-w Timeout] [-i IPAddress] [-4 IPv4] [-6 IPv6][TargetName]
参数
-n
阻止 pathping 试图将中间路由器的 IP 地址解析为各自的名称。这有可能加快 pathping 的结果显示。
-h MaximumHops
指定搜索目标(目的)的路径中存在的跃点的最大数。默认值为 30 个跃点。
-g HostList
指定回响请求消息利用 HostList 中指定的中间目标集在 IP 数据头中使用“稀疏来源路由”选项。使用稀疏来源路由时,相邻的中间目标可以由一个或多个路由器分隔开。HostList 中的地址或名称的最大数为 9。HostList 是一系列由空格分隔的 IP 地址(用带点的十进制符号表示)。
-p Period
指定两个连续的 ping 之间的时间间隔(以毫秒为单位)。默认值为 250 毫秒(1/4 秒)。
-q NumQueries
指定发送到路径中每个路由器的回响请求消息数。默认值为 100 个查询。
-w Timeout
指定等待每个应答的时间(以毫秒为单位)。默认值为 3000 毫秒(3 秒)。
-i IPAddress
指定源地址。
-4 IPv4
指定 pathping 只使用 IPv4。
-6 IPv6
指定 pathping 只使用 IPv6。
TargetName
指定目的端,它既可以是 IP 地址,也可以是主机名。
/?
在命令提示符下显示帮助。
注释
Pathping 参数区分大小写。
为避免网络拥塞,应以足够慢的速度发送 ping 信号。
要尽可能地减小爆发丢失所造成的影响,请不要频繁发送 ping 信号。
使用 -p 参数时,ping 将单独发送到各个中间跃点。因此,向同一跃点发送 ping 命令的时间间隔为 period 乘以跃点数。
使用 -w 参数时,可以同时发送多个 ping 命令。因此,Timeout 参数中指定的时间量不受 Period 参数指定的时间间隔的限制。
只有当“Internet 协议 (TCP/IP)”在 网络连接中安装为网络适配器属性的组件时,该命令才可用。
示例
下面的示例说明了 pathping 命令的输出:
D:\>pathping -n corp1
Tracing route to corp1 [10.54.1.196]
over a maximum of 30 hops:
0 172.16.87.35
1 172.16.87.218
2 192.168.52.1
3 192.168.80.1
4 10.54.247.14
5 10.54.1.196
Computing statistics for 125 conds...
Source to Here This Node/Link
Hop RTT Lost/Sent = Pct Lost/Sent = Pct Address
0 172.16.87.35
0/ 100 = 0% |
1 41ms 0/ 100 = 0% 0/ 100 = 0% 172.16.87.218
13/ 100 = 13% |
2 22ms 16/ 100 = 16% 3/ 100 = 3% 192.168.52.1
0/ 100 = 0% |
3 24ms 13/ 100 = 13% 0/ 100 = 0% 192.168.80.1
0/ 100 = 0% |
4 21ms 14/ 100 = 14% 1/ 100 = 1% 10.54.247.14
0/ 100 = 0% |
5 24ms 13/ 100 = 13% 0/ 100 = 0% 10.54.1.196
Trace complete.
当运行 pathping 时,将首先显示路径信息。此路径与 tracert 命令所显示的路径相同。接着,将显示约 90 秒(该时间随着跃点数的变化而变化)的繁忙消息。在此期间,命令会从先前列出的所有路由器及其链接之间收集信息。期间结束时将显示测试结果。
在上面的示例报告中,This Node/Link、Lost/Sent = Pct 和 Address 列显示 172.16.87.218 与 192.68.52.1 之间的链接丢失了 13% 的数据包。跃点数 2 和 4 的路由器也在丢失发送到它们的数据包,但这种丢失不会影响它们转发通信(此通信不是发送给它们)的能力。
在 Address 列中所显示的链接丢失速率(以垂直线 | 表示)表明造成路径上转发数据包丢失的链路拥挤状态。路由器所显示的丢失速率(由 IP 地址标识)表明这些路由器已经超载。
格式化图例
格式 含义
斜体 用户必须提供的信息
粗体 用户必须准确键入的要显示的元素
省略号 (...) 在命令行中可多次重复的参数
中括号 ([]) 可选项
大括号 ({});选项用竖线 (|) 分隔。例如:{even|odd} 用户必须从选项集合中选择一个
Courier 字体 代码或程序输出
ping,tracert和pathping命令的联系与区别分别是什么?
楼上的说的道理。但是比较简单,我就补充点我自己的理解。
ping就是确定对方主机是否响应ping,一般返回ping的信息就表示本地到该主机的网络线路连通。但是很多服务器为了防止攻击,一般会关闭对ping的响应。所以ping一般作为测试连通性使用。
tracert就是确定本主机到目的主机的通信的路径。这个比较好理解。原理就是每次都ping目的主机,但是TTL从1递增,每次加1。根据中间通过的路由器发回的丢弃包的回复来确定路由器。
pathping会先显示中间的通过的路由器,然后对每个中间路由器(我下面以节点代替)发送一定数量的ping包,通过统计他们对ping包响应的数据包来分析通信质量。但是,我上面也说了,有的路由器对ping关闭了响应,所以有的节点的丢包率会达到100%,所以这种一般就是关闭了ping回复。你可以自己ping试一下。还有,对ping包丢弃程度只是节点本身对ping的处理,并不一定影响他的通信,具体你可以看一下它之后的节点,对ping包丢弃有的会是0,说明回复的包都成功发送回来。不说了,话太多了。
如何使用pathping命令解决网络常见故障
一般来说用
ping
命令能够
ping
通对方的
IP地址,则表示网络是连通状态,否则就不通。但是还有这种情况就是:对方的机器上关闭了ping
服务,所以即使网络是通畅的,但是你也ping不到对方机器。这时候就需要你多测试几台机器来进行测试。望采纳。
几个日常使用的网络故障排查命令总结
作为一名网络管理员,需要掌握日常一些日常的网络故障测试命令将会大大提高故障检测水平。
1、Ping命令。
当您的终端设备不能访问Internet,首先确认是否是本地局域网的故障。首先需要确认一下设备的网卡是否正常,很简单,ping127.0.0.1即可,通了则说明网卡设备正常;其次ping网关是否能通,通了则说明到网关的链路是通的;再次ping局域网内的其他设备,如您的设备ip地址为192.168.101.10,可以ping同网段内的其他设备ip地址,如:192.168.101.100,通则说明本地局域网内通信正常。假如您需要访问的外网段的服务器IP地址为202.222.83.111,您可以使用ping 202.222.83.111命令查看本机是否与外网段的服务器能互通,通则说明网络层面正常,不同则需要排查网络配置。
很多电脑或者是服务器为了防止遭受攻击,会开启防火墙功能,本机的防火墙关闭了ICMP回显响应功能,这个时候是ping不通的,只要将防火墙关闭即可再次测试。
反馈信息(百度百科)
Request timed out
a.对方已关机
b.对方与自己不在同一网段内,通过路由也无法找到对方
c.对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置)
怎样知道对方是存在,还是不存在呢,可以用带参数 -a 的Ping命令探测对方,如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。
d.错误设置IP地址
Destination host Unreachable
对方与自己不在同一网段内,而自己又未设置默认的路由,或者网络上根本没有这个地址,比如上例中A机中不设定默认的路由,运行Ping 192.168.1.4就会出现“Destination host Unreachable”。
网线出了故障
这里要说明一下“destination host unreachable”和 “time out”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“time out”,如果路由表中连到达目标的路由都没有,那就会出现“destination host unreachable”。
Bad IP address
这个信息表示您可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是IP地址不存在。
Source quench received
这个信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。
Unknown host ——不知名主机
这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成IP地址。故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。
No answer ——无响应
这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的 路由器 没有工作;通信线路有故障;中心主机存在路由选择问题。
Ping 127.0.0.1: 127.0.0.1是本地循环地址
如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作。
no rout to host: 网卡工作不正常
transmit failed,error code: 10043网卡驱动不正常
unknown host name: DNS配置不正确
2、tracert
我在刚刚进入单位之前笔试测试即考过了该命令,简述traceroute的工作原理。
tracert用于windows系统,traceroute用于linux系统。
本质原理都是相同的,即利用ip数据包的生存时间值(ttl)和icmp的错误消息来测试到目标设备的路由问题,显示数据包在ip网络中经过路由器的ip地址。当你的计算机发出tracert 命令时候,计算机向目标地址发送ip数据包,数据包会设置存活时间值(ttl值),每当数据包经过一个路由器,存活时间减1,当存活时间减为0的时候,路由器将不再转发该数据包,而是发出一个icmp ttl 数据包给最初发出数据包的计算机。tracert程序首先向目标地址发送出ttl为1的数据包,当数据包去往目标地址的时候,经过第一个路由器,其生存时间就会减1,ttl值变成0,于是向最初发出数据包的计算机发送一个icmp ttl 数据包,tracert 便获知在路径上的第一个路由器的ip地址,后面依次再发出ttl为2的数据包,经过第二个路由器时候,ttl值已然又变成0,再次向最初计算机发送回icmp ttl 数据包,计算机便获知第二个路由器的ip地址,依次往复,依次向目标地址发送ttl为3.4.5....的数据包,逐个探测出去向目标主机的路由器ip地址,直到到达目标地址,由于tracert通过UDP数据包向不常见端口(30000以上)发送数据包,因此会收到「ICMP portunreachable」消息,故可判断到达目的地。
tracert 有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP TTL到期消息的响应。然后,Tracert给TTL记数器加1,继续进行。
3、pathping (百度)
Pathping是一个基于TCP/IP的路由跟踪工具,该命令结合了 ping 和 tracert 命令的功能, 返回两部分内容,第一部分显示到达目的地经过了哪些路由,第二部分显示了路径中每个路由器上数据包丢失方面的信息。反映出数据包从源主机到目标主机所经过的路径、网络延时以及丢包率,能够有效地帮助我们解决网络问题。
它使用ICMP回应信息来分析网络连通情况。Pathping发送回应信息到源地址与目标地址之间的所有路由器,它会计算出源主机与目标主机之间的每一个路由器的反应时间,通过这些数据,我们能够很方便地测出网络延时,有助于找出带宽瓶颈。
提供有关在源和目标之间的中间跃点处网络滞后和网络丢失的信息。Pathping 在一段时间内将多个回响请求消息发送到源和目标之间的各个路由器,然后根据各个路由器返回的数据包计算结果。因为 pathping 可以表示在任何特定路由器或链接处的数据包的丢失程度,所以用户可据此确定可能存在网络问题的路由器或子网。Pathping 通过识别路径上的路由器来执行与 tracert 命令相同的功能。然后,该命令在一段指定的时间内定期将 ping 命令发送到所有的路由器,并根据每个路由器的返回非数值计算统计结果。
路由跟踪的探测方式
有3种方式用来探测一个数据包从源点到目的地经过了哪些中转路由器,这3种方式分别是:基于记录路由选项的路由探测,基于UDP协议的路由探测,基于ICMP Echo Request的路由探测。三种方式都可以用来探测一个数据包到达目的设备经过了哪些中间路由器,但实现的过程却截然不同。
注意:理解这些探测方法的关键要领是熟悉IP数据报和ICMP数据报的格式。 (记录路由选项)的路由探测
这种方式是我们最容易理解的探测路由方式。比如,我想知道一封从上海发出,目的地是北京的信,中间经过了多少个邮局转发。这个过程很简单,只要中间邮局在转发的信件扣上他们自己的邮戳,这封信到达目的地北京后,北京再把这封信回邮给我,当我收到回信后,只要看信上的邮戳,便知道中间经过哪些邮局。
ping -R(大写) www.aorb .org命令便可实现这种记录中间路由的功能,返回的结果是中间路由器的IP地址。
1) ping命令发出的是类型为8的ICMP数据报,当使用ping -R时,这个类型为8的ICMP数据报被装在一个IP数据报里,IP数据报的Options(选项)字段预留出给中间路由器扣戳的地方,这个地方不太大,只能容纳9台中转路由器的IP地址。
2) 当这个数据报被发送端送出后,每经过一个中转路由器,中转路由器的IP软件便会在此IP数据报的选项字段中加入一条这个中转路由器的IP地址。
3) 当这个数据包到达目的地时(如,www.aorb. org),目的设备便会生成一条类型为0的ICMP数据报,这个ICMP数据报被封装在一个新的IP数据报里,新IP数据报的Options字段中拷贝了刚才收到的IP数据报中的Options字段。
4) 当这个新IP数据报回送到源发送端时,您便会在屏幕上看见一些中间路由器的IP地址了。 tracert是Windows下常用的命令行工具,UNIX下与之对应的是traceroute。若想知道自己的电脑到www.aorb. org 经过了多少个路由器,可在命令行下输入tracert www.aorb. org进行探测,返回结果也许会与ping -R相同,但它是以另一种方式实现的。这种方式并没有像Record route options探测技术中使用IP协议包的Options字段,而是利用了IP协议包中的TTL字段。
基本思路是这样的:www.aorb. org这台服务器即卖茄子(提供HTTP服务),也卖黄瓜(提供FTP服务),但不卖土豆(未监听的UDP端口)。有位买家,为了知道一封信到达蔬菜供应商www.aorb. org中间需要经过几个邮局(路由器),于是写信给www.aorb. org询问土豆的价格。
第一步,买家在信封的TTL位置写上数字1,当这封信到达与自己相邻的第一个邮局时,邮局的人把TTL值减1,于是TTL为0,邮局章程规定,把TTL值为0的信丢到垃圾桶里,然后给买家发一封名曰超时的信,信上写了丢信邮局的名字,以告诉买家信被谁丢掉了。
第二步,买家在信封的TTL位置写上数字2,当这封信到达与自己相邻的第一个邮局时,邮局的人把TTL值减1,现在TTL值为1,邮局章程规定, TTL值不为0的数据报需要继续转发给下一个邮局,于是这封信又被转发到了下一个邮局。当下一个邮局收到这封信时,邮局的人把TTL值减1,于是TTL为 0,邮局章程规定,把TTL值为0的信丢到垃圾桶里,然后给买家发一封名曰超时的信,信上写了丢信邮局的名字,以告诉买家信被谁丢掉了。
通过第一步,买家知道了第一个中转路由器。通过第二步,买家知道了第二个中转路由器。那么买家只需要不断的把TTL值加1,便可根据如上步骤探测出中间经过了哪些路由器。
第三步,我们假设中间只经过两个邮局信便到达目的地了。接着第二步,买家选在把TTL值设置为3,当这封信到达与自己相邻的第一个邮局时,邮局的人把TTL值减1,现在TTL值为2,邮局章程规定,TTL值不为0的数据报需要继续转发给下一个邮局,于是这封信又被转发到了下一个邮局。当下一个邮局收到这封信时,邮局的人把TTL值减1,于是TTL为1,邮局章程规定,TTL值不为0的数据报需要继续转发给下一个邮局,于是这封信又被转发到了下一个邮局,但下一个邮局已经就是最终目的地www.aorb .org了,尽管www.aorb .org把TTL减1的结果为0,但却不会丢弃它,因为目的地就是 www.aorb. org呀!于是www.aorb .org把这个IP层邮递员送来的信交付给负责卖土豆人,但我们开始说了,www.aorb .org并不卖土豆,于是就回送一个名曰终点不可达(ICMP类型为3,代码为3)的信给买家。
第四步,当买家收到类型为终点不可达的信时,就不再把那封问土豆价格的信上的TTL加1了,因为他已经知道了到达目的地的全部路由。
具体实现过程可以用下面两幅图来理解 这种探测方式与基于UDP协议的路由探测的实现步骤一样,但发送端送出的不是一个UDP数据包,而发送的是一个ICMP类型为8的Echo Request(回显请求)数据报文。与基于UDP协议的路由探测技术一样,每次发送端都会把TTL值加1,每个中转路由器都对TTL值减1,如果为0,便丢弃后给发送端发送一个超时报文,若不为0,则继续转发给下一跳。唯一不同的是,当这个数据报到达最终目的节点时,由于发送端发送的是Echo Request报文,所以接收端就会相应一个ICMP类型为0的数据报文。这样,当发送端收到ICMP类型为0的数据报文时,就知道了全部路由已经查询完毕,终止继续探测。
其他
pathping
pathping是tracert和ping的混合体。命令行下输入pathpingwww.aorb. org,返回两部分内容,第一部分显示到达目的地经过了哪些路由,第二部分显示了路径中每个路由器上数据包丢失方面的信息。