NAT工作模型和特点
概念
NAT(网络地址转换协议):替换IP报文头部的地址信息。NAT通常部署在一个组织的网络出口位置,通过将内部网络IP地址替换为出口的IP地址提供公网可达性和上层协议的连接能力。NAT协议是为解决IPv4
地址短缺而开发的技术。通俗讲是将多个私有地址网络映射为一个合法的公网地址。
功能
NAT不仅能解决IP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。
-
宽带分享:这是 NAT 主机的最大功能。
-
安全防护:NAT 之内的 PC 联机到 Internet 上面时,其所显示的 IP 是 NAT 主机的公共 IP,所以 Client 端的 PC 当然就具有一定程度的安全了,外界在进行 portscan(端口扫描) 的时候,就侦测不到源Client 端的 PC 。
实现方式
NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad。
静态转换是指内部本地地址一对一转换成内部全局地址,相当内部本地的每一台PC都绑定了一个全局地址。一般用于在内网中对外提供服务的服务器。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。
端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,网络中应用最多的就是端口多路复用方式。
工作原理
借助于NAT,私有(保留)地址的"内部"网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。
NAT将自动修改IP报文的源IP地址和目的IP地址,Ip地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据部分嵌入IP地址的应用程序就不能正常工作。
配置内部源地址静态NAT
当内部网络需要与外部网络通讯时,需要配置NAT,将内部私有IP地址转换成全局IP地址。可以配置静态或动态的NAT来实现互联互通的目的,或者需要同时配置静态和动态的NAT。
静态NAT,是建立内部本地地址和内部全局地址的一对一永久映射。当外部网络需要通过固定的全局可路由地址访问内部主机,静态NAT就显得十分重要。要配置静态NAT,在全局配置模式中执行以下命令:
配置内部源地址动态NAT
动态NAT,是建立内部本地地址和内部全局地址池的临时映射关系,过一段时间没有用就会删除映射关系。要配置动态NAT,在全局配置模式中执行以下命令:
配置重叠地址NAT
两个需要互联的私有网络分配了同样IP地址,或者一个私有网络和公有网络分配了同样的全局IP地址,这种情况称为地址重叠。两个重叠地址的网络主机之间是不可能通信的,因为它们相互认为对方的主机在本地网络。重叠地址NAT就是专门针对重叠地址网络之间通信的问题,配置了重叠地址NAT,外部网络主机地址在内部网络表现为另一个网络主机地址,反之一样。
重叠地址NAT配置,其实分为两个部分内容:(1)内部源地址转换配置,如何配置请参见上文;(2)外部源地址转换配置,只有与内部网络地址重叠的外部网络需要配置外部源地址转换,外部源地址转换可以采用静态NAT配置或动态NAT配置。
要配置外部源地址的静态NAT,在全局配置模式中执行以下命令:
配置NAT实现TCP负载均衡
当内部网络某台主机TCP流量负载过重时,可用多台主机进行TCP业务的均衡负载。这时,可以考虑用NAT来实现TCP流量的负载均衡。NAT创建了一台虚拟主机提供TCP服务,该虚拟主机对应内部多台实际的主机,然后对目标地址进行轮询置换,达到负载分流的目的。要配置目标地址轮询转换,在全局配置模式中执行以下命令: