0
点赞
收藏
分享

微信扫一扫

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)

 1 拓扑与说明             

 

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_服务器


某公司的网络架构,这样的架构在目前的网络中是在常见的,假设您接收一个这样的网络,应该如何部署,该实战系列,就是一步一步讲解,如何规划、设计、部署这样一个环境,这里会针对不同的情况给出不同的讲解,比如拓扑中有2个ISP,假设客户需求是,想实现主备的效果,又或者是想负载分担。DHCP部署在防火墙上面或者是单独的服务器上面又该如何配置部署。

 2  源进源出功能         

    之前部署过NAT Server功能,但是存在这么一个问题,比如用户访问的联通的公网地址服务,通过映射到内网服务,服务器响应回包,达到防火墙的时候,防火墙会查询路由表,由于是两条默认路由,防火墙会随机选择一条发送出去,这样就有可能会导致,从联通的出口进来,从电信的出口出去,导致访问过慢或者直接丢包的情况发生。(注意模拟器的防火墙5500不支持该功能,USG6000V支持)

作者:网络之路一天  首发公众号:网络之路博客(ID:NetworkBlog)

[USG-GW]int g0/0/1
[USG-GW-GigabitEthernet0/0/1] reverse-route nexthop 202.100.1.1




[USG-GW]int g0/0/2
[USG-GW-GigabitEthernet0/0/2] reverse-route nexthop 61.128.1.1


(该功能不依赖默认路由,它的作用就是当数据包从这个接口进来,它出去的时候还是从这个接口出去,源进源出)


 3  NAT Server测试        

说明:之前部署了NAT Server功能,并且转换了2个地址,提供了对应WWW服务与FTP服务。目前用外网进行测试。

没看之前的文章的童鞋,可以点击这里

10、【实战中提升自己】华为 华三中小型企业网络架构搭建 【防火墙篇之安全策略与NAT部署】

 4  内网测试是否正常         


12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_USG防火墙_02

说明:可以看到2个服务都已经正常了。

外网PC访问对应服务【电信】

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_NAT_03

防火墙是有对应的NAT会话信息了,

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_华为USG防火墙_04

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_USG防火墙_05

WEB正常 FTP访问不了

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_NAT_06

外网PC访问对应服务【网通】

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_服务器_07

还是以公网地址充当外网访问的角色。

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_USG防火墙_08


12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_策略路由_09

一样无法打开。

 5  问题:为什么HTTP访问,而FTP却访问失败。          


说明:因为HTTP是单信道协议,而FTP则是多信道协议,而分为主动与被动模式,它会根据不同的模式在应用层动态的协商一个端口号与地址,所以导致NAT后,地址变化了,但是应用层的地址防火墙没有感知到,导致访问失败。

解决办法:【开启应用层网关功能 ALG】
[USG-GW]firewall interzone trust isp_dx
[USG-GW-interzone-trust-isp_dx]detect ftp

[USG-GW]firewall interzone trust isp_lt
[USG-GW-interzone-trust-isp_lt]detect ftp
说明:该配置就是开启了应用层网关功能,在trust到2个ISP之间。注意这个不区分方向的 双向开启。

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_策略路由_10

可以看到开启后,2个地址都可以正常访问了。

扩展:如果映射了PPTP服务器的话,也会出现问题。
说明:PPTP服务器除了映射端口号以外,它还会封装GRE,如果不是一对一的转换,则会出现问题,所以解决办法还是跟上面一样,在里面监控PPTP即可。


 6 工程中常见问题:如何使用公网IP或者域名访问内部服务器。         


说明:在工作当中,往往需要访问服务器,并且又对外提供了服务,这样的话,会让客户记住2个IP,一个内网访问的,一个外网访问的,这样非常不方便,也对于不懂IT技术的人来说不可行。所以我们希望的是,通过外网IP或者域名直接访问。

默认情况下用内网地址访问是没任何问题的。

 7 解决办法            

1、定义地址池
[USG-GW]nat address-group 5 200.1.1.1 200.1.1.1


2、定义域内NAT
[USG-GW]nat-policy zone trust

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_USG防火墙_11

说明:地址池的地址可以随意定义的,然后调用在域内NAT里面。如果是平时的话这里就可以结束了,可以正常访问了,但是在这个环境中还不行。

3、在双ISP+策略路由的情况下特别需要注意的地方。
(1)问题:双ISP绑定了Zone
说明:上面那2个配置只适合没有绑定Zone的,也就是在输入时没有加入对应的Zone参数,没加的话属于任何一个Zone都可以,如果加了则只处理该Zone的数据包转换,而之前定义的都是绑定了出口ISP的,所以只能转换从2个ISP来的流量,而内部来的则不能正常转换。这样会导致失效。
解决办法:no-reverse

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_NAT_12

加了两条绑定Trust Zone的,这样的话就可以处理Trust来的转换了,实际就是在域内直接转换了。这里只给出了WWW的,FTP的就不演示了,注意同一个Zone是需要加no-reverse参数的,否则配置不上。
4、策略路由影响
分析:如果在平时的话,上面3个配置绝对可以解决问题了,但是,在这个环境下,我们还部署了一个策略路由,策略路由是优先于NAT转换的,也就是说,它会按照策略路由指定的下一跳转发,那么导致的情况是,本来已经转换成功了访问,但是策略路由交给的下一跳是丢给ISP的,而不是服务器。

 8 解决办法:          

1、定义新的ACL

[USG-GW]acl number 3001
[USG-GW-acl-adv-3001]rule deny ip source 192.168.0.0 0.0.255.255 destination 192.168.88.251 0
[USG-GW-acl-adv-3001]rule permit ip source 192.168.19.0 0.0.0.255
[USG-GW-acl-adv-3001]rule permit ip source 192.16.21.0 0.0.0.255
[USG-GW]acl number 3002
[USG-GW-acl-adv-3002]rule deny ip source 192.168.0.0 0.0.255.255 destination 192.168.88.251 0
[USG-GW-acl-adv-3002]rule permit ip source 192.168.20.0 0.0.0.255

说明:ACL从标准的变为了扩展的,可以看到先是deny掉了,当192.168.0.0访问服务器的时候做转换,平时肯定是直接通过三层交换机进行转换了,没经过防火墙,但是做域内NAT的话,其实就是在防火墙的入接口上面做了一下转换,但是在入接口上面又调用了策略路由,之前的话是匹配了直接交给ISP,这样的话导致本来正常转换了的数据包,想发送给服务器,但是由于策略路由的存在,就强行的发送给ISP了,所以这里deny掉,就是让它正常按路由表转发,而不受策略路由的控制。

2、策略路由改动【把ACL调用为修改后的】

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_策略路由_13

3、应用入接口(不在演示)

4、FTP的需要注意的地方。
除了之前的NAT Server在Trust定义以外,还需要调用一个应用层监控,因为之前是在域间转换的,所以在域间调用了ALG功能,但是这次是域内转换,所以需要再次 监控。
[USG-GW]firewall zone trust
[USG-GW-zone-trust]detect ftp

 9  结果测试            


12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_策略路由_14

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_NAT_15

可以看到通过IP地址可以正常访问了,当然通过域名的方式也是可以的,这里就不搭建环境测试了。


 10   总结            

     可以看到策略、NAT 双ISP的情况出现,需要考虑的因素会非常多,比如策略需要考虑需求,要结合NAT、时间策略等因素进行部署,达到效果,源NAT没什么需要太多注意的地方,但是NAT Server的需要注意几点,如果是同一个zone的话,必须加no-resver参数,不同Zone可以不加。而双ISP的存在,需要考虑到路由的切换,检测机制,跟策略路由的部署,这里策略路由的ACL强烈建议用扩展ACL,因为可以看到如果需求有变化的话,标准ACL立马显得无奈,只有扩展的才能更好的匹配。最后是如果部署需要通过公网IP或者域名访问公司内部服务器的话,则必须部署域内NAT。但是有绑定Zone跟策略路由的情况下,需要非常注意。最后就是NAT的ALG功能,对于多信道的协议必须开启应用层监控功能,否则NAT识别不了,常见的比如FTP、PPTP、QQ等都有,如果发现该应用工作不正常,则加入ALG功能即可

12、【实战中提升自己】防火墙篇之NAT存在的问题(通过公网地址或者域名方式访问)_华为USG防火墙_16

举报

相关推荐

0 条评论