某局点出口是一台MSR G2,下联核心交换机,上联公网设备。
原先业务一直正常,近期采购一台第三方厂商的审计设备,旁挂于MSR,希望内网流量上网时经过审计设备。在内网口部署策略路由强制上审计设备后,发现内网上不了外网了
1.未使用策略路由时,ping公网网关正常:
Ping 60.60.0.1 (60.60.0.1): 56 data bytes, press CTRL_C to break
56 bytes from 60.60.0.1: icmp_seq=0 ttl=254 time=10.000 ms
56 bytes from 60.60.0.1: icmp_seq=1 ttl=254 time=1.000 ms
56 bytes from 60.60.0.1: icmp_seq=2 ttl=254 time=1.000 ms
56 bytes from 60.60.0.1: icmp_seq=3 ttl=254 time=1.000 ms
56 bytes from 60.60.0.1: icmp_seq=4 ttl=254 time=1.000 ms
--- Ping statistics for 60.60.0.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 1.000/2.800/10.000/3.600 ms
< H3C>%Dec 13 17:40:14:345 2017 H3C PING/6/PING_STATISTICS: Ping statistics for 60.60.0.1: 5 packet(s) transmit ted, 5 packet(s) received, 0.0% packet loss, round-trip min/avg/max/std-dev = 1.000/2.800/10.000/3.600 ms.
2.审查组网思路,在内网接口用策略路由将内网流量强制上审计设备,审计设备用默认路由指向防火墙,在防火墙上再匹配默认路由指向公网出口,部署思路也没有问题。
3.调用策略路由后ping公网网关不通:
Ping 60.60.0.1 (60.60.0.1): 56 data bytes, press CTRL_C to break
Request time out
Request time out
Request time out
Request time out
Request time out
--- Ping statistics for 60.60.0.1 ---
5 packet(s) transmitted, 0 packet(s) received, 100.0% packet loss
< H3C>%Dec 13 17:45:41:409 2017 H3C PING/6/PING_STATISTICS: Ping statistics for 60.60.0.1: 5 packet(s) transmitted, 0 packet(s) received, 100.0% packet loss.
4.tracert测试转发路径,发现流量从内网口匹配策略路由后上了审计设备,然后在防火墙设备和审计设备之间来回转发,路由环路导致上外网不通。
traceroute to 60.60.0.1 (60.60.0.1), 30 hops at most, 40 bytes each packet, press CTRL_C to break
1 192.168.1.1 (192.168.1.1) 1.000 ms 1.000 ms 0.000 ms
2 192.168.0.20 (192.168.0.20) 2.000 ms 0.000 ms 0.000 ms
3 192.168.0.10 (192.168.0.10) 1.000 ms 1.000 ms 1.000 ms
4 192.168.0.20 (192.168.0.20) 1.000 ms 4.000 ms 3.000 ms
5 192.168.0.10 (192.168.0.10) 2.000 ms 1.000 ms 2.000 ms
6 192.168.0.20 (192.168.0.20) 1.000 ms 2.000 ms 5.000 ms
7 192.168.0.10 (192.168.0.10) 2.000 ms 1.000 ms *
8 192.168.0.20 (192.168.0.20) 2.000 ms 3.000 ms 7.000 ms
9 * 192.168.0.10 (192.168.0.10) 3.000 ms 3.000 ms
10 192.168.0.20 (192.168.0.20) 4.000 ms 6.000 ms 3.000 ms
11 192.168.0.10 (192.168.0.10) 2.000 ms 4.000 ms 2.000 ms
12 192.168.0.20 (192.168.0.20) 6.000 ms 3.000 ms 2.000 ms
13 192.168.0.10 (192.168.0.10) 3.000 ms 6.000 ms 2.000 ms
14 192.168.0.20 (192.168.0.20) 3.000 ms 2.000 ms 5.000 ms
15 192.168.0.10 (192.168.0.10) 4.000 ms 3.000 ms 2.000 ms
5.查看相应的快速转发表项,发现到公网网关的流量一直只匹配到出接口GE1/0/2,没有从GE1/0/0出去,导致环路。
[H3C]dis ip fast-forwarding cache
Total number of fast-forwarding entries: 2
SIP SPort DIP DPort Pro Input_If Output_If Flg
192.168.1.2 273 60.60.0.1 2048 1 GE1/0/1 GE1/0/2 1
60.60.0.1 273 192.168.1.2 0 1 GE1/0/2 N/A 1
6.查询防火墙的转发模式,默认情况下,不关心报文入接口,只关心报文的五元组情况,只要五元组相同,入接口不同的流量建立的是相同的快转表项,从而导致转发失败。
将默认的快转负载分担功能关闭后(undo ip fast-forwarding load-sharing),关心报文入接口,五元组相同,入接口不同的流量会建立新的快转表项,内网能正常访问外网。
[H3C]dis ip fast-forwarding cache
Total number of fast-forwarding entries: 4
SIP SPort DIP DPort Pro Input_If Output_If Flg
192.168.1.2 274 60.60.0.1 2048 1 GE1/0/2 GE1/0/0 1
192.168.1.2 274 60.60.0.1 2048 1 GE1/0/1 GE1/0/2 1
60.60.0.1 274 192.168.1.2 0 1 GE1/0/0 GE1/0/1 1
60.60.0.1 274 192.168.1.2 0 1 GE1/0/2 N/A 1
默认情况下,V7防火墙不关心报文入接口,只要五元组相同,入接口不同的流量建立的是相同的快转表项,当配置命令undo ip fast-forwarding load-sharing后,关心报文入接口,五元组相同,入接口不同的流量会建立新的快转表项。