上一篇 下一篇 分享链接 返回 返回顶部

Centos使用traceroute排查网络系统问题

发布人:管理员 发布时间:2025-03-02 15:30 阅读量:141

Centos使用traceroute排查联机问题

本配置适用于centos6,7版本

通过traceroute命令可以用来排查一些联机的基础问题。

首先yum安装traceroute

yum install traceroute -y

1.命令格式:

traceroute[参数][主机]

2.命令功能:

traceroute命令让你追踪联机数目包的路由途径,预设数目包大小是40Bytes,使用者可另行设置。

具体参数格式:traceroute

[-dFlnrvx][-f<存活数值>][-g<网关>...][-i<联机界面>][-m<存活数值>][-p<交流数据端口>][-s<方式地址>][-t<服务项目类型>][-w<超时秒数>][主机名称或IP地址][数目包大小]

3.命令参数:

-d 使用Socket层级的排错功能。

-f 设置第一个检测数目包的存活数值TTL的大小。

-F 设置勿离断位。

-g 设置方式路由网关,最多可设置8个。

-i 使用指定的联机界面送出数目包。

-I 使用ICMP回应取代UDP资料资料。

-m 设置检测数目包的最大存活数值TTL的大小。

-n 直接使用IP地址而非主机名称。

-p 设置UDP传递合同的交流数据端口。

-r 忽略常见于的Routing Table,直接将数目包送到远端主机上。

-s 设置本地主机送出数目包的IP地址。

-t 设置检测数目包的TOS数值。

-v 具体显示命令的实施过程。

-w 设置等待远端主机收益的时间段。

-x 开启或关闭数目包的正确性检验。

4.使用实例:

实例1:traceroute 用法单纯、最常用的用法

命令:traceroute www.baidu.com

5.说明:

记载按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,我们看到每行有三个时间段,团体是

ms,其实就是-q的默认参数。探测数目包向每个网关发送三个数目包后,网关响应后返回的时间段;如果您用 traceroute -q 4 www.baidu.com

,表示向每个网关发送4个数目包。

有时我们traceroute

一台主机时,会看到有一些行是以星号表示的。出现这样的情况,可能是防火墙封掉了ICMP的返回资料,所以我们得不到什么相关的数目包返回数目。

有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理装置本身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会

有延时长的现象;您可以加-n 参数来避免DNS解析,以IP格式输出数目。

如果在局域网中的不同网段之间,我们可以通过traceroute

来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务项目器设备遇到问题时,我们用到traceroute

追踪数目包所经过的网关,提交IDC服务项目商,也有助于解决问题;但目前看来在国内解决这样的问题是比较辛苦的,就是我们察觉问题所在,IDC服务项目商也不可能帮助我们解决。

6.Traceroute的职业原理:

Traceroute最单纯的基本用法是:traceroute hostname

Traceroute软件的设计处理方案是利用ICMP及IP header的TTL(Time To

Live)栏位(field)。首先,traceroute送出一个TTL是1的IP

datagram(其实,每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间段标签)到目的地,当路径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此datagram丢掉,并送回一个「ICMP

time exceeded」告知(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),traceroute

收到这个告知后,便知道这个路由器存在于这个路径上,接着traceroute 再送出另一个TTL是2 的datagram,察觉第2 个路由器......

traceroute 每次将送出的datagram的TTL 加1来察觉另一个路由器,这个重复的动作一直保持到某个datagram

抵达目的地。当datagram到达目的地后,该主机并不会送回ICMP time

exceeded告知,因为它已是目的地了,那么traceroute如何得知目的地到达了呢?

Traceroute在送出UDP datagrams到目的地时,它所选择送达的port number 是一个一般使用场景软件都不会用的号码(30000

以上),所以当此UDP datagram 到达目的地后该主机会送回一个「ICMP port unreachable」的告知,而当traceroute

收到这个告知时,便知道目的地已经到达了。所以traceroute 在Server端也是没有所谓的Daemon 程式。

Traceroute提取发 ICMP TTL到期告知装置的IP地址并作域名解析。每次

,Traceroute都打印出一系列数目,包括所经过的路由装置的域名及 IP地址,三个包每次来回所花时间段。

目录结构
全文