首页 > 其他分享 >路由追踪以及常用命令tracert\pathping

路由追踪以及常用命令tracert\pathping

时间:2024-07-22 12:24:57浏览次数:13  
标签:选项 pathping tracert IP地址 常用命令 路由 路由器

一、常用的命令:
对于网络工程师来说,需要熟练掌握的Windows路由追踪命令有两个:tracert和pathping,其中pathping是tracert和ping命令的结合,不但可以追踪目标IP地址的路由,还可以测试经过的每一跳的时延和丢包率。
1.1 tracert命令及举例
tracert命令,通过向目标IP地址发送不同 TTL值的Internet 控制消息协议ICMP回应数据包,发送规则是:先发送 TTL 为 1 的回应数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标IP地址响应或 TTL 达到最大值。

路径上的每个路由器,在转发数据包之前至少将数据包上的 TTL 递减 1,直到 TTL 减为 0 时,路由器将ICMP超时消息发回源地址。通过检查ICMP超时信息,tracert命令就可以显示出目标IP地址所经过的路径。

Tracert命令格式如下:

Tracert[-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name

如果不带选项的话,会将IP地址解析成主机名,因为需要查询DNS,所以速度比较慢。

-d选项:不将IP地址解析成主机名,因此路由追踪速度快很多。

-h选项:说明路由的最大跳数,默认是30跳。

-w选项:说明等待每一个ICMP响应报文的时间,默认4s,如果接收超时,则显示星号*。跳数和等待时间,使用默认值即可,所以平时一般都不需要添加这两个选项。

-j选项:说明ICMP报文要使用IP头中的松散源路由选项,后面是经过的中间节点的地址或主机名字,最多9个,各个中间节点用空格隔开。

这里说明下松散源路由和严格源路由,严格源路由是指,相邻路由器之间不得有中间路由器,并且所经过路由器的顺序不可更改。

而松散源路由,则相反,相邻路由器之间可以有中间路由器。一般的路由追踪,也用不到-j这个选项。除非是针对大的网络故障,需要检测几条路径到达同一个目的地址,才需要使用-j选项。

所以,通常情况下,我们使用tracert–d这种格式就可以了。我们以追踪百度网站为例。
在这里插入图片描述
从路由表中,可以清楚看出到达百度站点的每一跳的IP地址。如果追踪不了目的地址,那么故障肯定出在第一个请求超时的节点。

当能够追踪目的地址的时候,有时候也会出现请求超时的现象。这是因为某些核心节点,为了防止IP泄露,设置了禁止跟踪。

从路由表中,我们还可以看出,每一条都有三个时间,这是因为tracert 每一跳会发出三个TTL包,三个数字都表示ping值。有时候,这三个时间,也有可能个别出现星号,即意味着数据报超时没有返回,该节点可能存在问题。当然,也有可能是由于路由器限速的原因。

从tracert每一跳的三个时间值,我们也可以大致得出每一跳的网络时延。比如在私网和省内,时延都在10ms以内,到了省外就超过了20ms了。

如果需要了解每一跳的丢包率等信息,那就必须使用pathping命令了。

1.2 pathping命令及举例
Pathping命令的格式如下:

pathping [-g host-list] [-hmaximum_hops] [-n] [-p period] [-q num_queries] [-w timeout] target_name

-g选项:使用松散源路由,功能与tracert 命令的-j选项相同。

-h选项:追踪的最大跳数,功能与tracert 命令的-h选项相同。

-n选项:不将IP地址解析成主机名,功能与tracert 命令的-d选项相同。

-q选项:发送给每个路由器的请求报文的数量,默认100个。

-p选项:两次ping之间的时间间隔,默认0.25秒。

-w选项:每次等待回声响应的时间,默认3秒。功能与tracert 命令的-w选项相同。

因此,在通常情况下,我们使用pathping -n格式就行了,路由追踪速度更快。下面,还是以百度为例:

Pathping运行的第一个结果就是路由表,这个和tracert的结果是一致的。
在这里插入图片描述
经过200秒的统计时间,显示时延和丢包率的测试结果。往返时延RTT,显示省内都在10ms以内,省外时延20毫米以上,链路丢包率都是0,网络质量还是不错的。
在这里插入图片描述
针对CDN网络,当接到客户反馈网络质量不稳定的时候,就可以用pathping命令,根据时延和丢包率,来简单判断到底是哪个节点出现了问题。

总结,常用这两个:tracert -d/pathping -n

标签:选项,pathping,tracert,IP地址,常用命令,路由,路由器
From: https://blog.csdn.net/crayonlittlestar/article/details/140604802

相关文章

  • git 常用命令
    gitk      //查看基线gitstatus     //查看当前版本状态gitbranch  //查看本地所有分支gitbranch-a       //查看所有分支gitbranch-r      //查看远程所有分支gitcommit -m"xx需求"      //......
  • mysql常用命令总结
    连接数据库格式mysql-h连接地址-u用户-p密码-P端口例如mysql-h127.0.0.1-uroot-p123456-P3310 常用用户管理操作https://dev.mysql.com/doc/refman/8.0/en/create-user.html创建用户CREATEUSER'用户名字'@'%'IDENTIFIEDBY'密码';例如CREATEUSER'wxh......
  • redis常用命令大全
    以下是一个以表格形式总结的Redis命令概览:命令类别命令描述通用PING查看服务是否运行通用DBSIZE查看当前数据库中key的数目通用SELECTindex切换到指定的数据库通用FLUSHDB清空当前数据库的所有key及其值通用FLUSHALL清空所有数据库的所有key及其值通用QUIT/EXIT退出当前......
  • Linux常用命令
    Linux常用命令文件操作命令ls命令ls-l//列出文件和目录的详细信息ls-R//列出所有文件ls-a//列出隐藏文件mv命令mvexample.txt/lem///移动目录下mvoldnamenewname//重命名rm命令rmexample.txt//移除文件cp命令cpexample.txtexample_c......
  • mysql数据库常用命令(补充)
    1、查看表的所有内容select*from表名;2、查看指定内容selectname,agefromtest;select表示查询,name表示名字,age表示年龄,from是从的意思,test是表名。翻译过来就是:从test表中查询名字和年龄字段的内容。在select后面指定要查询的项,可以是一项也可以多项。在select后面添......
  • docker镜像常用命令
    1.使用"ls"查看镜像列表dockerimagels查看现有的镜像列表。dockerimagels-q仅查看镜像的ID信息。dockerimagels-a查看所有的镜像,包括中间镜像,尤其是在后期查看基于dockerfile的时候很有用呢2.使用"pull"拉取镜像dockerimagepullbus......
  • mysql数据库常用命令
    mysql数据库创建表的内容需要声明数据类型,数据类型分为整数Int、浮点数也就是小数、字符串、日期时间data。如id的话需要用整数int,商品价格的话用浮点数,名字用字符串varchar(30)括号里面是字符串的长度。常用命令:1、声明要使用的数据库use名称;2、创建表createtabletest(......
  • docker常用命令
    1.Docker的安装和配置(centos下)1)卸载旧版Docker:yumremovedocker\   docker-client\   docker-client-latest\   docker-common\   docker-latest\   docker-latest-logrotate\   ......
  • MySQL常用命令的实战应用
    MySQL常用命令全攻略:从入门到精通的实用指南在数字化时代的浪潮中,MySQL作为关系型数据库管理系统的佼佼者,以其稳定性和高效性赢得了全球用户的青睐。无论是新手还是资深开发者,掌握MySQL的常用命令都是提升数据库管理能力的基础。以下是一份详尽的MySQL命令指南,涵盖从基础的连......
  • Linux常用命令
    一.常用命令1.whereis文件查询命令文件位置(如cd,ping)2.File查看文件的类型3.Who查看有谁登录该系统,当前在线的用户4.Pwd查看文件当前所在路径5.Clear清屏6.Uname-a查看内核信息7.Echo打印8.History显示所敲命令的历史,9.History-c清除所敲命令的历史10......