`
123003473
  • 浏览: 1064073 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

traceroute & tracert的一些用法

 
阅读更多
traceroute 跟踪数据包到达网络主机所经过的路由工具;

traceroute 是用来发出数据包的主机到目标主机之间所经过的网关的工具。traceroute 的原理是试图以最小的TTL发出探测包来跟踪数据包到达目标主机所经过的网关,然后监听一个来自网关ICMP的应答。发送数据包的大小默认为 38个字节。

traceroute [参数选项] hostname,域名或 IP地址
参数选项:
-i 指定网络接口,对于多个网络接口有用。比如 -i eth1 或-i ppp1等;
-m 把在外发探测试包中所用的最大生存期设置为max-ttl次转发,默认值为30次;
-n 显示IP地址,不查主机名。当DNS不起作用时常用到这个参数;
-p port 探测包使用的基本UDP端口设置为port ,默认值是33434
-q n 在每次设置生存期时,把探测包的个数设置为值n,默认时为3;
-r 绕过正常的路由表,直接发送到网络相连的主机;
-w n 把对外发探测包的等待响应时间设置为n秒,默认值为3秒;
实例一: traceroute 用法简单、最常用的用法

就是后面直接接IP或hostname或域名;比如下面的示例;

[root@localhost ~]# traceroute linuxsir.org
traceroute to linuxsir.org (211.93.98.20), 30 hops max, 40 byte packets
1 sir01.localdomain (192.168.1.1) 0.151 ms 0.094 ms 0.146 ms
2 221.201.88.1 (221.201.88.1) 5.867 ms 7.588 ms 5.178 ms
3 218.25.158.149 (218.25.158.149) 6.546 ms 6.230 ms 8.297 ms
4 218.25.138.133 (218.25.138.133) 7.129 ms 7.644 ms 8.311 ms
......
注: 此例中,记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,我们看到每行有三个时间,单位是 ms,其实就是-q的默认参数。探测数据包向每个网关发送三个数据包后,网关响应后返回的时间;如果您用 traceroute -q 4 linuxsir.org ,表示向每个网关发送4个数据包;

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

有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备本身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会有延时长的现象;您可以加-n 参数来避免DNS解析,以IP格式输出数据;

如果在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在, 是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;但目前看来在国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。为什么呢?因为北方网通和南方电信各自为政。以前无论怎么说都是一张网,现在就是两张网,是通而不畅。咱们只能望网兴叹了;

实例二:一些参数的用法示例;

[root@localhost ~]# traceroute -m 10 linuxsir.org 把跳数设置为10次;
[root@localhost ~]# traceroute -n linuxsir.org 注:显示IP地址,不查主机名。
[root@localhost ~]# traceroute -p 6888 linuxsir.org 注:探测包使用的基本UDP端口设置6888
[root@localhost ~]# traceroute -q 4 linuxsir.org 注:把探测包的个数设置为值4;
[root@localhost ~]# traceroute -r linuxsir.org 注:绕过正常的路由表,直接发送到网络相连的主机;
[root@localhost ~]# traceroute -w 3 linuxsir.org 注:把对外发探测包的等待响应时间设置为5秒;


在XP系统中,用tracert来跟踪路由
分享到:
评论

相关推荐

    traceroute 安装包

    traceroute的使用方法非常简单,基本语法是`traceroute [选项] 目标地址`。例如,追踪到Google的路径: ```bash traceroute www.google.com ``` 它会显示每个跳点的IP地址、延迟时间以及到达该点的数据包数量。...

    nodejs-traceroute:围绕tracert和traceroute流程的Node.js包装器

    围绕Tracert和TraceRoute流程的Node.js包装器 安装 npm install --save nodejs-traceroute 强制使用IPv4或IPv6 默认情况下,给出的域名将自动解析。 通过将ipv4或ipv6传递给构造函数来显式强制进行IPv4或IPv6跟踪...

    traceroute-2.1.0.rar

    二、Traceroute命令用法 在Linux终端中,我们可以直接输入`traceroute`命令加上目标主机的域名或IP地址来使用Traceroute。基本格式如下: ``` traceroute [选项] 目标主机 ``` 常用的选项包括: - `-n`:不将IP...

    计算机网络技术实验3-tracert实战

    tracert命令,源自“traceroute”,在Windows系统中通过发送ICMP回显请求(ICMP echo request messages)来工作,而Linux下的traceroute则使用UDP数据报。两者都依赖IP分组的TTL(生存时间)字段,通过递增TTL值来...

    tracert程序

    标题中的“tracert程序”指的是网络诊断工具Traceroute,它是互联网协议(IP)网络上的一种重要工具,用于追踪数据包从源主机到目标主机所经过的路径。Traceroute通过发送带有不同时间戳(TTL,Time To Live)的ICMP...

    c# 实现tracert命令 地图显示路由信息

    在IT行业中,Tracert(也称为traceroute)是一个非常重要的网络诊断工具,它用于追踪数据包在网络中从源到目的地的路径。Tracert通过发送具有不同TTL(生存时间)值的数据包来实现这一功能,从而揭示了数据包在途中...

    traceroute程序设计与实现.doc

    程序代码的编写需要使用 Windows Sockets 网络环境,使用原始套接字编程实现 Tracert 的基本功能。 1. 初始化 Windows Sockets 网络环境 2. 解析命令行参数,构造目的端 socket 地址 3. 定义 IP、ICMP 报文 4. 接收...

    C#实现Tracert命令

    Tracert(traceroute)是网络管理员常用的工具之一,用于追踪数据包在网络中从源到目的地的路径,帮助定位网络延迟或丢包的问题。在VS2010环境下编译通过,表明这是一个兼容.NET Framework 4.0的项目,并且包含可...

    tracert命令使用说明1

    除了上述选项,Tracert还支持其他一些高级用法,如: - `-j`选项用于指定源路由,允许用户指定数据包应遵循的特定路径。 - `-r`选项让数据包绕过正常的IP路由表,直接发送到指定的路由器。 - `-s`选项允许设置源端口...

    traceroute-for-android:适用于Android的traceroute

    在Android上使用traceroute的简单方法。 描述 Traceroute跟踪从IP网络获取的路由数据包到达给定主机的过程。 它利用IP协议的生存时间(TTL)字段,并尝试从每个网关到主机的路径引发ICMP TIME_EXCEEDED响应。 渲染...

    常用网络命令的使用 ipconfig ping ARP FTP Netstat Route Tftp Tracert Telnet nslookup

    下面将详细介绍每个命令的功能和使用方法。 1. **ipconfig**: `ipconfig`命令用于显示系统中TCP/IP协议的配置信息,包括IP地址、子网掩码、默认网关、物理地址(MAC地址)等。例如,`ipconfig /all`会显示所有...

    tracert 由远及近探测

    **Tracert命令的使用方法:** 在Windows操作系统中,可以在命令提示符中输入`tracert [目标IP或域名]`来执行Tracert。在Linux或macOS系统中,对应的命令是`traceroute`。 **Tracert的输出解析:** Tracert的输出...

    自己实现的tracert命令,非常有用

    标题中的“自己实现的tracert命令”是指创建一个类似于操作系统自带的`tracert`(也称为`traceroute`)工具的程序。`tracert`是一个网络诊断工具,用于追踪数据包从源到目的地经过的路由器路径,这对于识别网络延迟...

    第6章 Tracert程序.zip

    Tracert(也称为traceroute)是网络诊断工具,用于追踪数据包从源到目标通过互联网所经过的路径。它在解决网络延迟、丢包等问题时非常有用。 描述中的“tracert代码,根据具体的tracert原理,完成的网络编程”暗示...

    如何使用ping和tracert命令检测丢包

    本文将详细介绍如何使用`ping`和`tracert`(或`traceroute`在Unix/Linux系统中)这两个基本但非常实用的网络诊断工具来检测和定位网络中的丢包问题。 #### 一、Ping命令详解 `Ping`命令是通过发送ICMP(Internet ...

    C#实现Tracert/Ping/快速判断端口是否开放

    Tracert(也称为traceroute)是一种网络诊断工具,用于显示数据包到达目标地址所经过的路径。在C#中,我们可以使用`System.Net.NetworkInformation`命名空间中的`Ping`类来发送ICMP回显请求,通过记录回应的时间来...

    Parallel Traceroute

    对比不使用并行传输的情况,如“tracert chord.hanyang.ac.kr”,可以看到响应的序列号并不一定按顺序出现,因为并行发送的探针包可能以任意顺序返回,例如: ``` >>Hop:1 Seq:1 IP:166.104.30.1 >>Hop:3 Seq:3 IP:...

    计算机网络新版.pdf

    此外,文档中还讨论了路由选择的概念,包括traceroute 和 tracert 工具的使用、路由跟踪、跳数和地理距离的关系等。在这部分中,我们可以看到计算机网络中路由选择的基本概念和应用。 本文档为我们提供了计算机网络...

Global site tag (gtag.js) - Google Analytics