静态目的NAT
是一种转换报文目的IP地址的方式,且转换前后的地址存在一种固定的映射关系。
通常情况下,出于安全的考虑,不允许外部网络主动访问内部网络。但是在某些情况下,还是希望能够为外部网络访问内部网络提供一种途径。例如,公司需要将内部网络中的资源提供给外部网络中的客户和出差员工访问。
当Host访问Server时,FW的处理过程如下:
- FW收到Internet上用户访问1.1.1.10的报文的首包后,将匹配NAT策略的报文的目的地址进行转换。
- FW选择一个私网IP地址,替换报文的目的地址,同时可以选择使用新的端口替换目的端口号或者端口号保持不变。公网地址与私网地址一对一进行映射的场景下,公网地址与目的地址池地址按顺序一对一进行映射,FW从地址池中依次取出私网IP地址,替换报文的目的地址。
- 报文通过安全策略后,FW建立会话表,然后将报文发送至内网服务器。
- FW收到Server响应Host的报文后,通过查找会话表匹配到3中建立的表项,用原Host报文的目的地址(1.1.1.10)替换Server的IP地址(192.168.1.2),然后将报文发送至Host。
- 后续Host继续发送给Server的报文,FW都会直接根据会话表项的记录对其进行转换。
为了兼容V500R003C00之前版本的NAT,保留了NAT server。NAT Server会生成Server-map表,并通过Server-map保存地址转换前后的映射关系。与NAT Server不同,基于NAT策略的静态目的NAT不会产生Server-map表。但如果转换前的地址没有变化,转换后的目的地址也不会改变,转换前后的目的依然会存在固定的映射关系。FW在进行地址转换的过程中还可以选择是否多个地址转换为同一个目的地址,是否选择端口转换,以满足不同场景的需求。
实验拓扑
实验一:公网地址与私网地址一对一进行映射
防火墙配置:
1.配置接口IP地址和安全区域
-配置接口IP:
[FW]interface GigabitEthernet 1/0/0
[FW-GigabitEthernet 1/0/0]ip address 10.2.0.1 24
[FW-GigabitEthernet 1/0/0]quit
[FW]interface GigabitEthernet 1/0/1
[FW-GigabitEthernet 1/0/1]ip address 1.1.1.1 24
[FW-GigabitEthernet 1/0/1]quit
-将接口分别加入Untrust区域、DMZ区域
[FW]firewall zone untrust
[FW-zone-untrust]add interface GigabitEthernet 1/0/1
[FW-zone-untrust]quit
[FW] firewallzone dmz
[FW-zone-dmz]add interface GigabitEthernet 1/0/0
[FW-zone-dmz]quit
2.配置安全策略
[FW]security-policy
[FW-policy-security]rule name policy1 (命名)
[FW-policy-security-rule-policy1]source-zone untrust (设置来源区域)
[FW-policy-security-rule-policy1]destination-zone dmz (设置目的区域)
[FW-policy-security-rule-policy1]destination-address 10.2.0.0 24 (设置目的匹配的网段)
[FW-policy-security-rule-policy1]action permit (设置动作允许通过)
[FW-policy-security-rule-policy1]quit
[FW-policy-security]quit
3.配置目的NAT地址池
[FW]destination-nat address-group nat1 (命名)
[FW-dnat-address-group-addressgroup1]section 10.2.0.7 10.2.0.8 (服务器两个IP地址)
[FW-dnat-address-group-addressgroup1]quit
4.配置NAT策略
[FW]nat-policy
[FW-policy-nat]rule name policy_nat1 (命名)
[FW-policy-nat-rule-policy_nat1]source-zone untrust (设置来源区域)
[FW-policy-nat-rule-policy_nat1]destination-address range 1.1.10.10 1.1.10.11 (设置目的匹配转换的两个地址,与设置匹配的地址池地址顺序一一对应)
[FW-policy-nat-rule-policy_nat1]service http (开启web服务)
[FW-policy-nat-rule-policy_nat1]service ftp (开启ftp服务)
[FW-policy-nat-rule-policy_nat1]action destination-nat static address-to-address address-group nat1 (设置动作匹配地址池)
[FW-policy-nat-rule-policy_nat1]quit
[FW-policy-nat]quit
5.配置黑洞路由 以防路由环路
[FW]ip route-static 1.1.10.10 32 NULL0
[FW]ip route-static 1.1.10.11 32 NULL0
6.开启FTP协议的NAT ALG功能
[FW]firewall interzone dmz untrust
[FW-interzone-dmz-untrust]detect ftp
[FW-interzone-dmz-untrust]quit
7.配置默认路由,使内网服务器对外提供的服务流量可以正常转发至ISP的路由器
[FW]ip route-static 0.0.0.0 0.0.0.0 1.1.1.254
AR1配置:
配置接口IP地址
[AR1]int g 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 1.1.1.254 24
[AR1-GigabitEthernet0/0/0]q
[AR1]int g 0/0/1
[AR1-GigabitEthernet0/0/1]ip address 172.16.1.254 24
[AR1-GigabitEthernet0/0/1]q
配置到公网地址的静态路由,使得去服务器的流量能够送往FW
[AR1]ip route-static 1.1.10.0 24 1.1.1.1
实验结果一:
客户端FTP登录成功
客户端ping通web服务IP
转换地址详细分别转换
实验二:公网端口与私网端口一对一进行映射
在实验一的基础配置上配置
防火墙配置:
在实验一的基础配置上多增设一条地址池和NAT策略即可
1.配置目的NAT地址池
[FW]destination-nat address-group nat2 (命名)
[FW-dnat-address-group-addressgroup1]section 10.2.0.9 10.2.0.9 (服务器公用的一个IP地址)
[FW-dnat-address-group-addressgroup1]quit
2.配置NAT策略
[FW]nat-policy
[FW-policy-nat]rule name policy_nat2 (命名)
[FW-policy-nat-rule-policy_nat1]source-zone untrust (设置来源区域)
[FW-policy-nat-rule-policy_nat1]destination-address 1.1.10.12 32 (设置目的匹配转换的地址,与设置匹配的地址池对应)
[FW-policy-nat-rule-policy_nat1]service protocol tcp destination-port 2000 to 2001 (设置自定义目的端口)
[FW-policy-nat-rule-policy_nat1]action destination-nat static port-to-port address-group nat2 80 to 81 (设置动作匹配地址池 端口设置为80和81)
[FW-policy-nat-rule-policy_nat1]quit
[FW-policy-nat]quit
实验结果二:
web服务以80端口登录
ftp服务以81端口登录