Traceroute 将目的地显示为下一跳,即使不是,也没有响应

网络工程 思科 路由 虚拟专用网 跟踪路由
2022-02-03 05:59:39

我正在尝试测试我配置的新 B2B VPN。我试图从我这边的主机 ping 到它,但失败了。因此,我运行了一个跟踪路由,显示数据包在防火墙/ASA(我将其称为 R1)之前的多层交换机上消失。我登录了那个开关,并试图从那里追踪路线。然后事情变得奇怪了。我将目的地列为下一跃点,即使它在防火墙的另一侧有几个跃点,并且路由表将防火墙的内部接口列为到达该目的地的数据包的下一跃点。

R1# traceroute 10.6.115.135

1 10.6.115.135 8 msec 4 msec 4 msec
2 10.6.115.135 4 msec *  0 msec
3  *  4 msec *
4  *  *  *
5  *  *  *
6  *  *  *

由于 10.6.115.135 没有连接到 R1,也没有在路由表中具体列出,我不知道为什么它被列为下一跳,或者为什么我一开始会得到它的响应时间。我猜它与VPN有关,但是在路由器上配置了VPN......下一跳不应该还是R1连接的路由器接口吗?提前致谢。

1个回答

通过隧道的跟踪路由仅显示隧道端点。数据包,包括traceroute数据包,被封装在外层数据包中,与携带traceroute的数据包没有相同的TTL设置方式,traceroute依赖于TTL来发现路由器跳点在哪里。

隧道欺骗 traceroute 认为隧道端点是直接连接的。这种事情也可能发生在其他协议(例如 MPLS)中。