我们都使用ping命令检查了主机和目标地址是否连接,自己主机和目标地址的通信数据包的通信速度,所谓的通信数据包是什么样的TCP/IP、UDP数据包。
关于路由跟踪:
路由命令在Linux上为traceroute,在windows上为tracert,这次主要是traceroute。
traceroute是一个工具,用于发现从发送数据包的主机到目标主机之间通过的网关数量。 跟踪的原理是尝试以最小的生存时间(TTL )发出探测分组并接收网关ICMP的响应,以跟踪数据包到达目标主机所通过的网关。 发送数据包的大小默认为38字节。
跟踪程序的完整过程:首先,向目标主机发送TTL字段为1的IP包,处理该包的第一个路由器将TTL值减少1,然后丢弃数据报,并向源主机发送ICMP消息“时间” 由于此消息包含路由器的IP地址,因此将得到第一个路由器的地址。 ”
1.命令格式:
traceroute [参数] [主机]
2.命令功能:
可以使用traceroute命令跟踪网络数据包的路径。 默认数据包大小为40字节,用户可以单独设置。
*具体参数格式: **traceroute [-dFlnrvx][-f生存数量][-g网关…][-i网络接口][-m生存数量][-p通信端口][-s源地址]
3 .命令参数:
使用-d套接字级调试功能。
-f设置第一个测试包的生存值TTL的大小。
-F设定为不发生断位。
-g配置源路由网关,最多可配置8个。
-i使用指定的网络接口发送数据包。
-使用ICMP响应而不是-IUDP数据信息。
-m设置检查数据包的最大生存值TTL的大小。
-n直接使用IP地址而不是主机名。
-设置-pUDP传输协议的通信端口。
-r忽略常规路由表,将包直接发送到远程主机。
-s设置本地主机发送数据包的IP地址。
-t设置测试数据包的TOS值。
详细显示-v命令的执行步骤。
-w设置等待来自远程主机报告的时间。
-检查x数据包有效/无效的正确性。 *4例:
实例4.1** : traceroute www.baidu.com
说明:
记录以序列号1开始。 每张唱片都是一跳。 每一跳代表一个网关。 你会发现每一行有三个时间。 单位是毫秒。 实际上是-q的默认参数。 探测分组向每个网关发送三个分组后,网关返回响应的时间; 使用traceroute -q 4 www.baidu.com,您将向每个网关发送四个数据包。 请参照下图:
跟踪主机时,可能会显示一些用星号标记的行。 如果发生这种情况,防火墙可能会阻止ICMP回复信息,从而导致无法获得相关的数据包回复数据。
我们在某个网关上可能延迟很长。 一个网关被阻止,或者可能是物理设备本身造成的。 当然,如果某个DNS发生问题,无法解析主机名、域名的话,延迟时间也可能会变长; 添加-n参数可以避免DNS分析,并以IP格式输出数据。
如果您位于局域网中的不同网段之间,则可以使用traceroute来排除问题。 是主机问题还是网关问题? 如果远程访问服务器时出现问题,使用traceroute跟踪数据包通过的网关并提交给IDC提供程序也有助于解决问题。 但是,现在国内似乎很难解决这样的问题。 即使我们发现问题,IDC服务商也不会帮助我们。
实例4.2:跳数设置
命令: traceroute -m 10 www.baidu.com
结果:
说明:结果中可以看到生存值=10,生存值=0时,主机取消数据包
实例3:探测包使用的基本UDP端口设置6888
命令: traceroute -p 6888 www.baidu.com
结果:
实例4:把对外发探测包的等待响应时间设置为3秒
命令: traceroute -w 3 www.baidu.com
结果:
本文参考资料:
3358 blog.csdn.net/sinat _ 33442459/article/details/75126149
此外,在具体的详细指令下安装,每个步骤的操作步骤和每个跳转的含义,请参照以下内容。
3358 blog.csdn.net/yongh 701/article/details/45599001