一、本机策略路由----有效排查步骤 1、本机主动发包:如设备访问百度, 则去匹配策略。 这里要注意, 本机策略路由只匹配目的IP。 2、本机回应包:如ping设备的管理口,管理口的回应包。 是查找这个指定的IP有没有对应的策略路由出接口,如果有则直接查这张策略路由表, 没有则去匹配其它路由。 二、AF策略路由的特殊机制 1、对称路由 为了实现从一个接口进来的数据包依然能从这个接口出去, AF在策略路由流程中做了特殊处理:数据从wan口进来并且这个接口是策略路由出接口(只看接口、其他条件不看),则把这个接口对应的策略路由表ID保存在连接跟综中, 回应包直接去查这张策略路由表,不再匹配策略,也不查其它表。 这个处理会导致满足条件的包,回包时不再匹配VPN路由, 7.1中把对称路由放在vpn路由查找之后了。 假如对应的入接口有多个策略路由、多个策略路由下一跳有不同的网段地址,则必须保证策略路由下一跳上标记的ip必须跟接口上的下一跳网关一样,才会生效。 2、会话保持 只对多线路由源策略路由有效, 一对IP查过策略路由后会把表ID保存下来,下次就不再匹配策略直接查对应的表ID了,重新下发策略会清空这张表, 查看方式: cat /proc/net/policy_route/persist 三、策略路由常见问题总结 1、现象:AF路由模式部署,建立了VPN,VPN不通。 排查过程 1.1、AF6.8版本,抓包发现在vpntun口抓到了请求包,在内网口也抓到了内网的回应包,在vpntun口没抓到回应包。在外网口抓到了回应包。 1.2、确认过来时的接口是策略路由出接口, 并且是wan口。 如果是这种情况, 那么可以确认是我们的对称路由的问题, 在7.1之前的版本对称路由是先于vpn路由的, 这会导致vpn数据不通。 解决方案: 升到7.1及以上版本解决 2、现象:AF路由部署在互联网出口,有2条线路配置策略路由,突然发现策略路由不生效 排查过程: 2.1、系统故障日志显示探测到链路发生故障, 然后故障过的链路对应的策略路由就不生效了。在界面上点下对应策略路由,发现策略路由就正常生效了。 解决方案: 问题是策略路由会话保持机制引起。如客户一定要避免这个问题,需要禁用策略路由会话保持机制。 升级到AF8.0.2以上版本,可以用如下命令禁用 PS:该命令是高危操作,使用前跟专家确认 echo "ps_disable=1" > dev/sinfor/fw/proute 3、现象:策略路由有时正常,有时失效 排查过程 3.1、查看系统故障日志是有链路故障日志, 黑盒的dmesg文件有接口不断up/down信息。 解决方案: 策略路由下发过程中会暂时失效的, 而接口up/down会触发策略路由重新下发。 链路故障检测失败也会导致策略路由不生效。 查清接口up/down 或连接探测失败的原因 4、现象:策略路由配置了根据ISP选路,发现内网访问外网的地址没有匹配上对应策略路由。 排查过程: 4.1 检查对应的ISP地址库,发现对应的地址没有在对应的ISP地址库中 ISP地址库在如下目录查看 cat /etc/sinfor/fw/isp.ini |