我在同一个网络中的tracert(Windows)和traceroute(linux)之间跟踪一些服务器。
但是输出是不同的。
tracert可以跟踪目标服务器。
但是traceroute不能。traceroute输出在下面(一些星号省略)。
traceroute to xxx.com (112.125.57.195), 64 hops max, 52 byte packets
1 192.168.1.1 (192.168.1.1) 1.347 ms 0.729 ms 1.083 ms
2 113.109.124.1 (113.109.124.1) 6.519 ms 5.903 ms 6.368 ms
3 183.56.38.137 (183.56.38.137) 6.094 ms 37.891 ms 5.314 ms
4 58.61.243.129 (58.61.243.129) 7.002 ms 8.967 ms 7.673 ms
5 61.144.3.22 (61.144.3.22) 6.169 ms 6.147 ms 5.359 ms
6 202.97.34.117 (202.97.34.117) 40.194 ms 532.342 ms 536.089 ms
7 220.181.16.54 (220.181.16.54) 578.522 ms 586.950 ms 627.117 ms
8 220.181.70.150 (220.181.70.150) 607.408 ms 681.635 ms 671.447 ms
9 182.92.255.228 (182.92.255.228) 760.188 ms 766.492 ms 399.930 ms
10 * * *
11 * * *无法跟踪目标服务器的。所有输出都是星号。
发布于 2016-10-19 06:34:33
tracert(windows)和traceroute(linux)的区别在于:
tracert(windows)只使用ICMP回送请求。
traceroute(linux) 并且有点依赖于linux发行版.默认为UDP回送请求。
这两种解决方案都非常古老,而且令人惊讶的是,这两种解决方案在很长一段时间里一直有效,因为在互联网历史的很大一部分时间里,互联网的许多部分仍将传递--无需过滤就沿着这两种类型的流量运行。然而,随着时间的推移,越来越多的核心流量路由器开始过滤这些“回声”请求。(有关回显请求的更多信息,请从这里开始:https://en.wikipedia.org/wiki/Echo_协议)
TCP Traceroute使用ICMP或UDP回显请求的替代方案,因为它使用能够更好地穿越现代防火墙的TCP SYN数据包。
TCP Traceroute on Windows And Linux
http://simulatedsimian.github.io/tracetcp.html
https://github.com/SimulatedSimian/tracetcp/releases关于它是如何工作的:
https://support.logicboxes.com/helpdesk/index.php?/Knowledgebase/Article/View/11/37/using-tcp-traceroute-on-windows-and-linux下面是一个简单/典型用法示例的副本:
C:\tracetcp>tracetcp www.redhat.com:443 -h 3
Tracing route to 184.85.48.112 [a184-85-48-112.deploy.akamaitechnologies.com] on
port 443
Over a maximum of 30 hops.
3 32 ms 50 ms 56 ms 172.20.16.65
4 34 ms 14 ms 33 ms 172.26.16.1
5 503 ms 14 ms 68 ms 172.20.7.34
6 43 ms 170 ms 25 ms 203.117.35.9
7 28 ms 86 ms 26 ms 203.117.34.2
8 216 ms 168 ms 99 ms 203.117.34.14
9 * * * Request timed out.
10 Destination Reached in 211 ms. Connection established to 184.85.48.112
Trace Complete.您必须安装winpcap库才能使此版本正常工作。tracetcp已经用这个库的版本3.*和4.*进行了测试。(因为WinXP SP2删除了原始套接字。)但是如果你是一个网络爱好者,你可能已经安装了winpcap&wireshark。
发布于 2012-05-03 03:42:00
大多数版本的traceroute在*NIX (操作系统)中默认发送UDP数据包(尽管通常有更改的选项),Windows将默认使用ICMP回送请求。
https://serverfault.com/questions/385529
复制相似问题