1、一、问题描述组网图:组网说明:G0/0/0 是联通链路 地址 58.23.90.58G0/0/1 是电信链路 地址121.205.3.126联通地址和电信地址的 8008 端口分别映射内部服务器 8008 端口要求:联通用户通过联通地址访问,电信用户通过电信地址访问。客户设备做的是上出口链路,nat server 配置如下:nat server 14 protocol tcp global 121.205.3.126 8008 inside 10.1.11.206 8008 no-reversenat server 15 protocol tcp global 58.23.90.58 8008
2、 inside 10.1.11.206 8008 no-reverseip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/0 121.205.3.1ip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/1 58.23.90.57以上配置,通过电信的地址 121.205.3.126 的 8008 端口可以访问内部服务器,但是通过联通地址 58.23.90.58 不可以访问二、告警信息无三、处理过程USG2200-hidecmddisplay firewall session table verbos
3、e_hide both-direction source global 218.17.167.151tcp VPN:public public Zone: untrust trust TTL: 00:00:05 Left: 00:00:03 Interface: Vlanif1 NextHop: 10.1.100.1 MAC: 80-fb-06-b0-0d-4d packets:1 bytes:60 218.17.167.151:206658.23.90.58:800810.1.11.206:8008 tcp VPN:public public Zone: trust untrust TTL:
4、 00:00:05 Left: 00:00:03 Interface: GigabitEthernet0/0/0 NextHop: 121.205.3.1 MAC: 00-e0-fc-65-0c-01packets:1 bytes:64 10.1.11.206:800858.23.90.58:8008218.17.167.151:2066通过以上命令显示可以看出访问 58.23.90.58:8008 时,报文由接口 GigabitEthernet0/0/1(联通接口)进入,回程报文由 GigabitEthernet0/0/0(电信接口)发出,上行路由器开启URPF(严格路由检查)会丢掉这类报文
5、。acl number 3010rule 15 permit ip source 10.1.11.206 0acl number 3011rule 15 permit ip source 10.1.11.106 0现在从外网通过联通电信地址访问都正常了,但是从内部通过公网地址访问不了,而且在设备上 ping 不通服务器的地址。我们来看看域内 NATnat address-group 3 1.1.1.1 1.1.1.2acl number 3010rule 15 permit ip source 10.1.11.206 0acl number 3011rule 15 permit ip sour
6、ce 10.1.11.106 0现在从外网通过联通电信地址访问都正常了,但是从内部通过公网地址访问不了,而且在设备上 ping 不通服务器的地址。我们来看看域内 NATnat-policy zone trustpolicy 1action source-natpolicy source 10.1.0.0 0.0.255.255policy destination 121.205.3.126 0policy destination 58.23.90.58 0address-group 3没有发现域内 NAT 有问题,所以问题出现在策略路由上,因为策略路由最优先,所以导致回包的时候也匹配策略路由,
7、直接从外网口转发出去了。这个时候我们需要把不走策略路由的流量 deny 掉。配置如下:acl number 3010rule 0 deny ip destination 10.1.0.0 0.0.255.255rule 1 deny ip destination 10.1.100.2 0rule 2 deny ip destination 1.1.1.1 0rule 3 deny ip destination 1.1.1.2 0rule 5 permit ip source 10.1.11.206 0acl number 3011rule 0 deny ip destination 10.1.
8、0.0 0.0.255.255rule 1 deny ip destination 10.1.100.2 0rule 2 deny ip destination 1.1.1.1 0rule 3 deny ip destination 1.1.1.2 0rule 5 permit ip source 10.1.11.106 0四、根因1、电信地址能访问,说明到服务器地址可达。2、在外网 telnet 联通地址 8008 端口也是可以通,另外通过联通地址访问的时候,查看会话也是有的。说明映射没有问题。3、 怀疑可能是端口问题,把 8008 替换成其他端口,比如 10000 端口,但还是不能访问。4、问题可能出现在来回路径不一致上,之前也出现似的案例。五、建议与总结双出口链路做端口映射的时候,上行路由器开启 URPF(严格路由检查)如果路径不一致,会丢掉报文,导致有些端口不能访问,建议可以用以上的方法解决,另外需要注意的是策略路由的配置,把不需要走策略路由的流量排除。