NAT技术ppt参考幻灯片课件.ppt
1,NAT/NPAT技术,2,一、NAT概述,NAT是将一个IP地址转换为另一个IP地址的功能。,通常,一个局域网由于申请不到足够多的IP地址,或者只是为了编址方便,在局域网内部采用私有IP地址为设备编址,当设备访问外网时,再通过NAT将私有地址翻译为合法地址。,3,局域网专用IP地址,局域网专用IP地址是Internet特别划分出来的,它们不会注册给任何组织。,实际上,用户可以使用任意IP作为私有地址,但有可能导致某些外网的站点无法访问。,4,使用私有地址的注意事项:,私有地址不需要经过注册就可以使用,这导致这些地址是不唯一的。所以私有地址只能限制在局域网内部使用,不能把它们路由到外网中去。,5,R1,E0,S0,192.168.*.*,192.168.1.1/24,200.1.1.1/24,Internet,R1是局域网和外网的边界路由器。局域网中使用私有IP地址进行编址。如果在R1上启用RIP协议,则:,R1(config)# router ripR1(config-router)# network 200.1.1.0R1(config-router)# network 192.168.1.0,这里不应该在私有地址上启用路由,它会导致私有地址被外网路由器学习到,扩大了它的有效范围。,6,NAT基本原理,当一个使用私有地址的数据包到达NAT设备时,NAT设备负责把私有IP地址翻译成外部合法IP地址,然后再转发数据包,反之亦然。,端口多路复用技术:NAT支持把多个私有IP地址映射为一个合法IP地址的技术,这时各个主机通过端口进行区分,这就是端口多路复用技术。利用端口多路复用技术可节省合法IP地址的使用量,但会加大NAT设备的负担,影响其转发速度。,7,NAT4种地址类型,内部局部地址,外部局部地址,外部全局地址,内部全局地址,8,Internet,10.1.1.1,10.1.1.2,172.20.7.3外部主机B,NAT,NAT转换表,1,2,3,4,5,静态转换,9,PAT,Internet,10.1.1.1,10.1.1.2,172.20.7.3外部主机B,NAT,NAT转换表,1,2,3,4,5,10,NAT转换类型,1、静态NAT:将内部地址和外部地址进行一对一的转换。这种方法要求申请到的合法IP地址足够多,可以与内部IP地址一一对应。静态NAT一般用于那些需要固定的合法IP地址的主机,比如Web服务器、FTP服务器、E-mail服务器等。,192.168.1.1,192.168.1.2,200.10.1.5,200.10.1.6,11,1、静态NAT:,Internet,192.168.100.3,155.34.2.3,NAT,NAT转换表,192.168.100.1,61.159.62.130,192.168.100.2,12,2、NAT池(动态NAT):将多个合法IP地址统一的组织起来,构成一个IP地址池,当有主机需要访问外网时,就分配一个合法IP地址与内部地址进行转换,当主机用完后,就归还该地址。对于NAT池,如果同时联网用户太多,可能出现地址耗尽的问题。,192.168.1.1,192.168.1.2,NAT池,13,3、PAT(端口NAT):使用端口多路复用技术,将多个内部地址映射为一个合法地址,用不同的端口号区分各个内部地址。这种方法只需要一个合法IP地址。路由器支持的PAT会话数是有限制的,所以使用PAT的局域网,其网络的规模不应该太大。,192.168.1.1,192.168.1.2,S0:200.1.1.1/24,14,Internet,155.34.2.3,NAT,NAT转换表,10.1.1.1,61.159.62.130,14,10.1.1.2,10.1.1.3,15,4、复用NAT池(复用动态NAT):将多个合法IP地址构成一个NAT池,使用复用技术映射其中的地址,每个地址有可以对应多台主机,各主机用端口进行区分。复用NAT池是NAT池和PAT技术的结合,可用于大规模的局域网。,说明:在端口复用技术中,用端口区分的不是一台主机,而是一个网络连接(会话),当一台主机同时建立了多个会话时,它的每个会话会占用一个端口映射。假如一台路由器支持4000个会话,那么它支持的主机数量会远少于4000台。,16,5、TCP负载均衡: 如果一个服务器的访问量非常大,我们通常会建立多台映像服务器对访问进行分流。从外部来看,这些服务器的IP地址相同,NAT设备会把多个对服务器的访问映射到不同的服务器上,实现负载均衡。,192.168.1.1,192.168.1.2,S0:200.1.1.1/24,TCP负载均衡与其它NAT的主要区别在于,它是把来自外网的同一合法IP地址翻译成不同的内网IP地址。,17,二、常用NAT设备,实现NAT可以使用不同的设备,它们的基本功能相同,但功能强弱有别,应根据需要进行选用。常用的设备有:1、路由器:功能强,支持多种NAT设置;2、防火墙:除NAT转换外,还提供多种保护功能;3、代理服务器:提供局域网接入功能;4、双网卡计算机:功能较弱,多用于小型网络。,18,三、 NAT的配置,1、静态NAT,把私有地址和合法地址作一对一地转换。,192.168.1.1,192.168.1.2,200.10.1.5,200.10.1.6,E0,S0,配置命令:Router(config)# ip nat inside source static 内部地址 外部地址,另外,还需要把E0口指定为NAT内部接口,S0口指定为NAT外部接口。,19,例:Router(config)# ip nat inside source static 192.168.1.1 200.10.1.5Router(config)# ip nat inside source static 192.168.1.2 200.10.1.6Router(config)# interface e0Router(config-if)# ip nat insideRouter(config-if)# interface s0Router(config-if)# ip nat outside,20,2、NAT池(动态NAT),192.168.1.1,192.168.1.2,NAT池,主要工作:建立一个IP地址池。设定被转换的IP地址范围。建立转换关系。设定转换的入口和出口。,21,1)建立IP地址池Router(config)# ip nat pool 地址池名字 起始IP 结束IP netmask 子网掩码,例:建立一个地址范围为200.1.1.1200.1.1.10/24的IP地址池。Router(config)# ip nat pool P1 200.1.1.1 200.1.1.10 netmask 255.255.255.0P1是地址池的名字。,说明:地址池中的地址应该是经过注册的合法IP地址。,22,2)设定被转换的地址范围:被转换的地址范围使用标准访问控制列表进行定义。比如:被转换的地址是形如192.168.*.*/24的地址,则可定义:Router(config)# access-list 1 permit 192.168.0.0 0.0.255.255说明:这里定义的ACL不是用于数据过滤的,它只是用于指定参与NAT转换的私有地址范围的。所以,我们不必把它用在一个接口上。,23,3)建立被转换的地址和地址池间的关系:Router(config)# ip nat inside source list ACL表号 pool 地址池名字,例:把1号ACL定义的地址与名为P1的地址池建立NAT转换关系。Router(config)# ip nat inside source list 1 pool P1,说明:经此定义后,每当路由器收到一个数据包,就检测它的源地址,如果和1号ACL相匹配,就使用P1中的地址进行NAT转换。,24,4)指定NAT转换的入口和出口:Router(config)# interface 内部接口Router(config-if)# ip nat insideRouter(config)# interface 外部接口Router(config-if)# ip nat outside,说明:每种NAT都需要指定内部接口和外部接口。,25,例:,NAT池,200.1.1.1-200.1.1.254/24,10.0.0.0/8,内部网络地址为10.0.0.0/8,注册的IP地址是200.1.1.1-200.1.1.254,用这些地址为内网的各个访问提供NAT翻译。,R1,f0/0,s0/0,26,R1(config)# ip nat pool ippool 200.1.1.1 200.1.1.254 netmask 255.255.255.0R1(config)# access-list 30 permit 10.0.0.0 0.255.255.255R1(config)# ip nat inside source list 30 pool ippoolR1(config)# interface f0/0R1(config-if)# ip nat insideR1(config-if)# interface s0/0R1(config-if)# ip nat outside,27,3、复用NAT池,当NAT池中的地址耗尽时,会导致后来的主机无法上网。所以当内网的主机数超过NAT池中的地址数时,通常应配置成复用NAT池,这样每个IP地址可对应多个会话,各个会话用端口号进行区分。 理论上讲,一个IP地址可以映射约65000个会话,但实际的路由器往往只支持几千个会话(Cisco支持约4000个)。 在复用NAT池中,Cisco首先复用地址池中的第一个地址,达到能力极限后,再复用第二个地址,依此类推。 复用NAT池的配置方法与NAT池的配置方法基本相同,只是:Router(config)# ip nat inside source list ACL表号 pool 地址池名字 overload 在上面的命令中加上 overload 关键字表示使用端口复用技术。,28,4、PAT,PAT是复用NAT池的特例,它是通过端口复用技术用于一个合法IP地址映射内网的所有私有IP地址,这个地址往往就是路由器出口的IP地址。,10.0.0.0/8,R1,f0/0,s0/0: 195.4.10.2,上例中,把内网的私有IP地址都映射为R1的S0/0口的IP地址就是PAT。,29,PAT的配置方法可以使用复用NAT池的配置方法,只要建立一个起始地址和结束地址相同的NAT池就行了。也可以不建立NAT池,用以下命令进行配置:R1(config)# access-list 30 permit 10.0.0.0 0.255.255.255R1(config)# ip nat inside source list 30 interface s0/0 overloadR1(config)# interface f0/0R1(config-if)# ip nat insideR1(config-if)# interface s0/0R1(config-if)# ip nat outside,30,PAT的配置方法可以使用复用NAT池的配置方法,只要建立一个起始地址和结束地址相同的NAT池就行了。也可以不建立NAT池,用以下命令进行配置:R1(config)# access-list 30 permit 10.0.0.0 0.255.255.255R1(config)# ip nat inside source list 30 interface s0/0 overloadR1(config)# interface f0/0R1(config-if)# ip nat insideR1(config-if)# interface s0/0R1(config-if)# ip nat outside,PAT可最大限度的节省IP地址用量,但由于它只能同时支持几千个会话,所以使用PAT易造成拥塞。为了避免PAT和复用NAT池的拥塞,一方面可以多申请一些IP地址,建立一个大些的NAT池,另一方面也应该限制用户使用那些占用会话数很多的应用(如BT)。,31,TCP负载均衡是为了把一个外部的合法地址交替映射到多个内部地址上,这样可以使多台服务器使用同一个外部地址进行访问。,192.168.1.1,192.168.1.2,S0:200.1.1.1/24,E0,5、TCP负载均衡,32,1、建立内部地址池,其中的地址必须是各服务器的真实地址(加上rotary关键字)。R1(config)# ip nat pool p1 192.168.1.1 192.168.1.2 netmask 255.255.255.0 rotary2、建立访问控制列表,定义转换的合法IP地址R1(config)# access-list 1 permit host 200.1.1.13、用地址池和访问控制列表建立映射R1(config)# ip nat inside destination list 1 pool p1,33,4、指定NAT入口(E0口)和出口(S0口)R1(config)# interface e0R1(config-if)# ip nat insideR1(config-if)# interface s0R1(config-if)# ip nat outside,配置了TCP负载均衡后,路由器会把对地址200.1.1.1的访问交替映射到192.168.1.1192.168.1.2的各个地址上,使它们访问不同的服务器主机。 对使用TCP负载均衡的各服务器必须建立为镜像服务器,它们可通过同步保持内容的一致性。,