首页 > 代码库 > 外网主机如何将数据包发送到共用一个公网IP的局域网某特定主机上的
外网主机如何将数据包发送到共用一个公网IP的局域网某特定主机上的
内网的一台电脑要上因特网对外开放服务或接收数据。都须要port映射。port映射分为动态和静态。
动态port映射:内网中的一台电脑要訪问站点。会向NAT网关发送数据包。包头中包含对方站点IP、port和本机IP、port,NAT网关会把本机IP、port替换成自己的公网IP、一个未使用的port。而且会记下这个映射关系,为以后转发数据包使用。然后再把数据发给站点,站点收到数据后做出反应。发送数据到NAT网关的那个未使用的port。然后NAT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯.当连接关闭时,NAT网关会释放分配给这条连接的port,以便以后的连接能够继续使用。
动态port映射事实上也就是NAT网关的工作方式。
静态port映射:就是在NAT网关上开放一个固定的port,然后设定此port收到的数据要转发给内网哪个IP和port,无论有没有连接。这个映射关系都会一直存在。
就能够让公网主动訪问内网的一台电脑。
NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为还有一个IP 地址的过程。
在实际应用中。NAT 主要用于实现私有网络訪问公共网络的功能。这样的通过使用少量的公有IP 地址代表较多的私有IP 地址的方式。将有助于减缓可用的IP地址空间的枯竭。NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat和port多路复用OverLoad。
静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址仅仅转换为某个公有IP地址。借助于静态转换。能够实现外部网络对内部网络中某些特定设备(如server)的訪问。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,全部被授权訪问上Internet的私有IP地址可随机转换为不论什么指定的合法IP地址。也就是说,仅仅要指定哪些内部地址能够进行转换,以及用哪些合法地址作为外部地址时,就能够进行动态转换。动态转换能够使用多个合法外部地址集。
当ISP提供的合法IP地址略少于网络内部的计算机数量时。能够採用动态转换的方式。
port多路复用(Port address Translation,PAT)是指改变外出数据包的源port并进行port转换,即port地址转换(PAT,Port AddressTranslation).採用port多路复用方式。内部网络的全部主机均可共享一个合法外部IP地址实现对Internet的訪问,从而能够最大限度地节约IP地址资源。同一时候,又可隐藏网络内部的全部主机,有效避免来自internet的攻击。因此,眼下网络中应用最多的就是port多路复用方式。
外网主机如何将数据包发送到共用一个公网IP的局域网某特定主机上的