网络地址转换(Network Address Translation,NAT)是一种将内部私有网络地址转换为合法的外部网络地址的技术。在实际应用中,NAT主要用于实现私有网络访问公共网络的功能,使一个局域网中的多台主机使用少数的合法地址访问外部资源,也可以将按照要求设定内部的WWW、FTP、TELNET的服务提供给外部网络使用,有效地隐藏了内部局域网的主机IP地址,起到了安全保护的作用。这种通过使用少量的公有IP地址代表较多的私有IP地址的方式,有助于减缓可用IP地址空间的枯竭。RFC 1918为私有网络预留出了三个IP地址块,如下。
A类:10.0.0.0~10.255.255.255
B类:172.16.0.0~172.31.255.255
C类:192.168.0.0~192.168.255.255
这三类地址不会在互联网上被分配,因此可以在公司或企业内部使用。
当公网用户访问私网服务器的公网地址时,会将报文的目的地址转换为服务器的私网地址,但是在服务器端需要配置到该公网地址的路由。这样做会使服务器的私网地址暴露在公网上,同时还增加了配置。为了避免在服务器上配置到公网地址的路由,隐藏主机访问的源IP地址,从公网地址到私网地址的转换技术应运而生。
双向NAT技术要完成以下两方面的转换:
(1)正向NAT把私有网络发出的报文的源IP地址和端口号转换为该私有网络对应的公网IP地址和端口号。
(2)反向NAT把公有网络发出的报文的目的IP地址和端口号转换为私有网络内部主机的IP地址和端口号。
正向NAT的基本工作方式为:
(1)静态NAT私有IP地址与公有IP地址是固定一对一映射关系的。
(2)动态NAT将私有IP地址转换到公有IP地址池中的一个。多台主机可以共享一个公有IP地址,适用于公网地址略少于私网地址的情况。
(3)端口地址转换(PAT)将多个私有IP地址转换成一个相同的公有IP地址(多对一),使用TCP端口号来区分不同的转换,称为端口地址转换。
当ISP提供的合法IP地址略少于网络内部的计算机数量时,可以采用动态转换的方式。这是正向NAT的主要工作方式之一。NAT常配置在网络边界设备(防火墙、路由器)上。
NAT在路由器上的实现如下。
一个公司员工通过交换机连接在边界路由器上的FE0/0端口,路由器的FE0/1端口连接外部服务器。提供访问外部网络的合法IP地址范围为:202.201.1.3~202.201.1.4。要求该公司10.1.1.0/24网段的用户可以访问外网,其他用户不能访问外网。由于公网地址不多,需要用NAT技术进行地址转换。
在Cisco Packet Tracer模拟器上进行了实现,组网图如图5.10所示。其中,PC0的地址为10.1.1.2/24,FE0/0的地址为10.1.1.1/24,FE0/1的地址为202.201.1.1/24,外部服务器的地址为202.201.1.2/24。
图5.10 在路由器上配置NAT的组网图
实验步骤如下:
(1)配置路由器接口FE0/0,FE0/1,PC0,Server0的IP地址。
(2)配置ACL规则,确定NAT转换前的地址。Access-list number可以自定义为1。
access-list 1 permit 10.1.1.0 0.0.0.255
(3)配置NAT pool,确定NAT转换后的地址。nat pool name可以自定义为p1。
ip nat pool p1 202.201.1.3 202.201.1.4 netmask 255.255.255.0
(4)将ACL规则和NAT pool关联起来。
ip nat inside source list 1 pool p1
(5)将FE0/0设置为内网连接口,将FE0/1设置为外网连接口。
interface fastethernet 0/0
ip nat inside
interface fastethernet 0/1
ip nat outside
最后,打开路由器的debug开关。
配置完成后,在PC0上ping服务器,在路由器上得到的结果如图5.11所示。
图5.11 NAT在路由器上的实现
其中s代表源地址,也就是PC0的地址10.1.1.2。d代表目的地址,也就是服务器的地址202.201.1.2。从图5.11中可以看到,源地址发生了NAT转换,由10.1.1.2转换成了NAT地址池中的地址202.201.1.3。
正向NAT在防火墙上的实现组网如图5.12所示。
图5.12 正向NAT典型组网图
当PC A发送报文到SERVER时,其源地址为10.35.66.2,目的地址为220.35.66.2。此报文经过防火墙时,防火墙就去查找网络地址转换表,根据转换表,从地址池中选择地址来替换源地址。那么转换后,源地址为220.35.66.3,目的地址为220.35.66.2。此转换后的报文到达SERVER时,SERVER回复此报文。当回复的报文到防火墙,防火墙又进行相应转换。在转换过程中地址池中的地址可以复用。
反向NAT应用在公网主机访问内部服务器上,组网如图5.13所示。
图5.13 反向NAT典型组网图
当PC A发送报文到SERVER时,其源地址为220.35.3.2,目的地址为220.35.3.1。此报文经过防火墙时,防火墙就去查找NAT转换表,根据转换表,从地址池中选择地址来替换源地址,同时将服务器SERVER的外部地址变为内部地址。那么转换后,源地址为10.35.3.3,目的地址为10.35.3.2。此转换后的报文到达SERVER时,SERVER回复此报文。当回复的报文到防火墙,防火墙又进行相应转换。在转换过程中地址池中的地址可以复用。这样做,省去了在内部服务器上配置到公网地址的路由,同时隐藏了报文的源IP地址。
双向NAT组网图如图5.14所示。PC A处于防火墙的Trust域,SERVER B处于防火墙的DMZ域,SERVER A和PC B处于防火墙的Untrust域。提供的访问公网地址的范围为220.35.66.3~220.35.66.5。
图5.14 双向NAT组网图
1.组网需求
(1)需求1(www.xing528.com)
要求该公司Trust安全区域的10.110.66.0/24网段用户可以访问互联网,该安全区域其他网段的用户不能访问。提供的访问外部网络的合法IP地址范围为220.35.66.3~220.35.66.5。由于公有地址不多,需要使用NAT功能进行地址复用。采用PC A访问SERVER A检测正向NAT的配置。
(2)需求2
提供一个内部服务器供外部网络用户访问。内部服务器的内部地址为10.35.3.2/24,对外公布的地址均为220.35.3.1/24。采用PC B访问SERVER B检测反向NAT的配置。反向NAT地址池中的地址范围为10.35.3.3~10.35.3.5。
2.实验步骤
(1)配置防火墙接口E1/0/0,E1/0/1,E4/0/0,E4/0/1的IP地址。
(2)将接口加入相应的安全区域。
#将以太网接口1/0/1加入dmz区域
firewall zone dmz
add interface ethernet 1/0/1
#将以太网接口1/0/0加入trust区域
firewall zone trust
add interface ethernet 1/0/0
#将以太网接口4/0/0和4/0/1加入untrust区域
firewall zone untrust
add interface ethernet 4/0/0
add interface ethernet 4/0/1
(3)配置NAT地址池。
#配置私网地址到公网地址转换的地址池
nat address-group 0 220.35.66.3 220.35.66.5
#配置公网地址到私网地址转换的地址池
nat address-group 1 10.35.3.3 10.35.3.5
(4)配置NAT Server。
#配置内网服务器的公网地址
nat server global 220.35.3.1 inside 10.35.3.2
(5)配置与NAT绑定的ACL规则。
acl 3000
rule permit ip source 10.35.66.0 0.0.0.255
acl 3001
rule permit ip source 220.35.3.0 0.0.0.255
(6)在防火墙的安全区域之间应用NAT规则。
#在防火墙的trust域和untrust域间应用正向NAT规则
firewall interzone trust untrust
nat outbound 3000 address-group 0
#在防火墙的dmz域和untrust域间应用反向NAT规则
firewall interzone dmz untrust
nat inbound 3001 address-group 1
配置完毕后,用PC A ping SERVER A,能够ping通,用PC B ping SERVER B,能够ping通。在防火墙上运行以下命令检查配置结果。
display firewall session table
正向NAT的实验结果如表5.4所示。
表5.4 正向NAT实验结果表
反向NAT的实验结果如表5.5所示。
表5.5 反向NAT实验结果表
双向NAT技术有效界定了用户所在网络的范围,保证了用户访问内网服务器的最佳快速访问路由走向,同时可以隐藏报文的源地址,使得内网服务器回应数据包也能按照最快速的路由到达客户端。双向NAT为内网主机访问外网服务器以及外网主机访问内网服务器提供了有效的技术支持。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。