转载自:
https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2/2985755
+
https://blog.csdn.net/wallezhe/article/details/50783828
NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad。
静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。
端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。
-------------------
端口多路复用:
NAT服务器有两个网卡:一个和内网相连,此网卡IP是私有地址,另外一个网卡是公有地址。NAT通过这两个网卡卡将局域网和外网连接起来,并完成内外网地址(IP+端口)的映射工作。
eg: 内网电脑开启ie浏览器(源地址: 192.168.1.100:1111),访问一条新闻(新闻服务器地址: 12.130.132.30:80),NAT服务器在发送此数据包之前,会把此数据包的源地址由192.168.1.100:1111改为122.192.93.74:2222(公有网卡ip),等到新闻服务器返回给122.192.93.74:2222,NAT将通过映射关系,找到192.168.1.100:1111,完成数据包的传递共工作】
【NAT服务器可以提供上万个端口,通过这种技术,可供局域网多台主机同时工作】