当我想跟踪政府限制的 IP 时,我只会看到本地路由器的 IP 和私有 NAT IP 地址。之后,我看到的全是星号。这是我的示例输出:
traceroute to x.com (172.66.0.227), 30 hops max, 60 byte packets
1 home (192.168.1.1) 0.332 ms 0.437 ms 0.553 ms
2 172.x.x.x (172.x.x.x) 2.862 ms 2.837 ms 2.859 ms
3 * * *
4 * * *
5 * * *
6 * * *
通常情况下,我在私有 IP 后至少会看到一个 ISP 地址,但在这种情况下只有两个 IP 。它甚至没有到达 ISP 服务器吗?ICMP 超时响应来自哪里?我的路由器没有针对此问题进行任何特殊配置。我想知道这是怎么可能的。
听起来您的“私有 NAT”是 ISP 管理的 CGNAT 设备,因此这是第一个拒绝将数据包转发到任何地方的地方。
它还可能被路由到不发送 ICMP TTL 超出的其他网关,或者可能被不减少数据包中的 TTL 的过滤设备阻止,因此对于跟踪路由来说是不可见的。
例如,一些防火墙充当以太网级桥梁而不是 IP 网关,因此它们转发数据包而不应用任何 IP 处理(就像以太网交换机一样),因此不查看 TTL 字段。
甚至网关本身也可能具有路由之前的防火墙规则,并且在网关考虑其 TTL 之前数据包就会被丢弃。
无处可去。星号表示没有响应;超时的通常定义是响应未到达(在预期的时间内)。
只有第 1 行和第 2 行显示 ICMP 响应,该响应来自 traceroute 显示的地址。这些 ICMP“TTL 超出”或“跳数限制超出”错误(由 traceroute 故意引发)不被视为超时,尽管在 IP 的早期阶段,TTL 曾计划以秒为单位进行测量-但由于每跳最小值为 1,它很快就变成了跳数限制,而不是时间限制。