使用策略路由(PBR)后traceroute不工作
路由器启用策略路由,用户上网、ping等一切正常,但是traceroute无法工作,具体体现为:
[root@NAT natlog]# traceroute -n cpan.wenzk.com traceroute to cpan.wenzk.com (221.203.119.98), 30 hops max, 40 byte packets 1 10.0.0.6 0.265 ms !H * *
网络拓扑图:
由于路由器A接口1启用了策略路由,所有允许访问Internet的用户发送过来的数据包都直接修改下一跳为路由器B的接口1的地址,所以在路由器A上就未设置默认路由(也就是8个0的路由)。路由器A为思科的12404路由器。
解决办法:在路由器增加默认路由,默认路由的下一跳可以为任意有效的下一跳地址,有默认路由后traceroute就正常了。
估计思科路由器在执行PBR之前会试图查找路由表,确定下一跳地址为多少,之后才是PBR生效,修改下一跳地址。
