多出口防火墙同时有nat与策略路由导致的外网无法访问 2021-01-17 网络 暂无评论 2351 次阅读 防火墙连接两个出口,一个为电信路由,一个为教育网路由。 防火墙内FTP服务器内网地址经过教育网路由nat后,对外提供服务。 当外部用户数据包到达教育网路由时,目的地址nat成内网地址,到达服务器进行处理。数据包返回时,目的地址为用户外网地址,源地址为FTP本机内网地址。由于设置了策略路由,源地址为FTP本机地址的数据包将走向电信出口,无法流向教育网出口,导致从教育网进入访问FTP的用户无法得到回程数据包,无法访问。 解决方法,只能在策略路由时,排除TCP21号端口的数据报文,使FTP服务器既能自己走电信出口访问公网,也能够回应教育网的FTP服务。 参考acl ``` acl advanced 3001 rule 10 deny ip destination object-group 服务器管理及生产区 rule 15 deny tcp source 172.16.5.230 0 source-port eq ftp counting #排除tcp21端口 rule 20 permit ip source object-group DMZ走电信出口 ``` 参考策略路由 ``` policy-based-route DMZtodianxin permit node 100 if-match acl 3001 apply next-hop 10.2.144.254 direct #去电信路由 apply output-interface Vlan-interface144 ``` 但是FTP客户端会出现227 Entering Passive Mode,可以正常登录,但是无法读取列表。 原因是被动模式开启的端口,没有在策略路由中体现。可以增加一个如下规则,或更换相应的被动端口区域。至此圆满解决。 ``` rule 16 deny tcp source 172.16.5.230 0 source-port gt 49151 ``` windows自带ftp更改被动模式端口范围详见https://blog.moper.net/2195.html 。 标签: nat, 防火墙, 策略路由 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。