系统:Fedora 21
问题:实际上已经很好地描述了这里但不幸的是,没有任何解释为什么 TCP 的跟踪路由不显示 ICMP 响应,并且使用其他工具而不是跟踪路由(对我来说不满意)的解决方案。
使用 ICMP 或 UDP 发送跟踪路由工作正常:
跟踪路由-I www.here.com
traceroute to www.here.com (54.230.156.129), 30 hops max, 60 byte packets
1 192.168.178.1 (192.168.178.1) 6.565 ms 8.483 ms 21.137 ms
2 ppp-default.m-online.net (82.135.16.28) 34.677 ms 37.296 ms 37.495 ms
3 ae2.rt-decix-2.m-online.net (82.135.16.209) 44.127 ms 45.428 ms 46.566
...
跟踪路由 -U -p 53 www.here.com
traceroute to www.here.com (54.230.156.9), 30 hops max, 60 byte packets
1 192.168.178.1 (192.168.178.1) 2.275 ms 7.949 ms 8.842 ms
2 ppp-default.m-online.net (82.135.16.28) 36.303 ms 37.817 ms 38.685 ms
3 ae2.rt-decix-2.m-online.net (82.135.16.209) 46.860 ms 47.964 ms 48.778 ms
...
但是,TCP Traceroute 不显示任何结果:
跟踪路由 -T -p 443 www.here.com
traceroute to www.here.com (54.230.156.9), 30 hops max, 60 byte packets
1 * * *
2 * * *
3 * * *
奇怪的是,在(wireshark)跟踪中可以看到 ICMP DU 响应:
我正在检查 iptables DROP 和 REJECT 规则计数器,它们没有改变,所以我猜 iptables 可以被排除......
[编辑] 刷新 iptables 也没有显示出任何改进,也没有为回复 IP 添加 INPUT 规则。计数器显示使用了这些 ACCEPT 规则,因此可以排除 iptables 作为此问题的根源
> Chain INPUT (policy ACCEPT 180 packets, 39653 bytes)
> pkts bytes target prot opt in out source destination
> 3 168 ACCEPT all -- * * 82.135.16.28 0.0.0.0/0
> 3 264 ACCEPT all -- * * 192.168.178.1 0.0.0.0/0
有人可以给我一些关于如何调试这个问题的提示,甚至从头到尾知道问题是什么吗?
答案1
不满意的解决方案:重新启动
我上次重新启动是很久以前的事了,因为我定期更新系统,所以我猜这导致了错误行为。我对更新后重新启动系统的建议有一个模糊的记忆,因为它们可能会修改库,这可能会导致仍在旧版本的 RAM 中运行的二进制文件出现错误行为。
调试这个并理解发生了什么仍然是有趣和有教育意义的。