NAT一般分为两大类
转换源的NAT(SNAT)和转换目的的NAT(DNAT)
SNAT一般是内网访问Internet使用,DNAT一般是发布内网的服务供Internet的用户访问;
SNAT具体细分包括nat-static, NAT no-pat,NAPT,easy-ip;
DNAT具体包括nat-server(服务器映射)
nat-static一对一固定转换,只转换地址,不转换端口;
no-pat 一对一,不固定,只转换地址,不转换端口;
napt 多对一,多个私网地址转换到同一个公网地址上,为了区分内网的私网IP,需要同时转换端口(端口复用),需要提前配置地址池;
easy-ip 是napt特例,不需要地址池,直接往接口地址上转换,一般用于拨号环境;
easy-ip画图举例
服务器映射,对外发布一个公网地址+端口(可选),转换到内网的一个私网地址+端口;
防火墙NAT部署:
SNAT部署 略
DNAT部署
配置: nat server protocol [协议] global 200.1.1.1 [端口] inside 10.254.1.100 [端口]
正常情况下nat-server会产生正、反向的server-map
正向的server-map给外网用户匹配nat-server使用,
Type: Nat Server, ANY -> 200.1.1.1:21[10.254.1.100:21], Zone:---, protocol:t
cp 表示任何地址向200.1.1.1的21端口(ftp)连接转发到内网10.254.1.100的21端口;流量到达FW匹配server-map转换,所有防火墙上安全策略destination-address应该写转换后的地址(私网地址),首包创建会话,后续nat-server的流量不再匹配server-map而是直接匹配会话。
反向的server-map给服务器访问外网使用(无需给服务器配置SNAT)
Type: Nat Server Reverse, 10.254.1.100[200.1.1.1] -> ANY, Zone:---, protocol
:tcp 表示10.254.1.100向外网任何地址的TCP应用发起访问都转换到200.1.1.1上;同时注意需要配置安全策略(和ASPF产生的server-map不一样);
当出口为多出口时,配置nat-server会产生冲突,如图
解决方案:
(1)添加no-rever参数
此时不会server-map冲突
(2)通过绑定区域区分
此时反向server-map不冲突
其他NAT应用场景
(1)域间双向NAT
服务器不配置网关,外网用户也可以通过nat-server发起访问,但是服务器不能主动访问外网(安全性);
数据转换
(2)域内双向NAT
不配置域内双向NAT时访问失败,解决方案,配置源NAT,在nat-server转换数据包目的IP的同时转换数据包的源IP