|
知识路径: > 计算机系统基础知识 > 计算机网络基础知识 > Internet 基础知识 > Internet基础知识 > Internet地址 >
|
相关知识点:6个
|
|
|
|
因特网面临IP地址短缺的问题。这个问题有所谓长期的或短期的两种解决方案。长期的解决方案就是使用具有更大地址空间的IPv6协议,网络地址翻译(Network Address Translators,NAT)是许多短期的解决方案中的一种。
|
|
|
NAT技术最初提出的建议是在子网内部使用局部地址,而在子网外部使用少量的全局地址,通过路由器进行内部和外部地址的转换。NAT的实现主要有两种形式。
|
|
|
第一种应用是动态地址翻译(Dynamic Address Translation)。为此,首先引入存根域的概念。所谓存根域(Stub Domain),就是内部网络的抽象,这样的网络只处理源和目标都在子网内部的通信。任何时候存根域内只有一部分主机要与外界通信,甚至还有许多主机可能从不与外界通信,所以整个存根域只需共享少量的全局IP地址。存根域有一个边界路由器,由它来处理域内与外部的通信。假定:
|
|
|
|
|
当m:n翻译满足条件(m≥l andm≥n)时,可以把一个大的地址空间映像到一个小的地址空间。所有NAT地址放在一个缓冲区中,并在存根域的边界路由器中建立一个局部地址和全局地址的动态映像表,如下图所示。
|
|
|
|
|
这个图显示的是把所有B类网络138.201中的IP地址翻译成C类网络178.201.112中的IP地址。这种NAT地址重用有如下特点:
|
|
|
(1)只要缓冲区中存在尚未使用的C类地址,任何从内向外的连接请求都可以得到响应,并且在边界路由器的动态NAT表中为之建立一个映像表项。
|
|
|
(2)如果内部主机的映像存在,就可以利用它建立连接。
|
|
|
(3)从外部访问内部主机是有条件的,即动态NAT表中必须存在该主机的映像。
|
|
|
动态地址翻译的好处是节约了全局使用的IP地址,而且不需要改变子网内部的任何配置,只需在边界路由器中设置一个动态地址变换表就可以工作了。
|
|
|
另外一种特殊的NAT应用是m:1翻译,这种技术也叫作伪装(masquerading),因为用一个路由器的IP地址可以把子网中所有主机的IP地址都隐藏起来。如果子网中有多个主机要同时通信,那么还要对端口号进行翻译,所以这种技术更经常被称为网络地址和端口翻译(Network Address Port Translation,NAPT)。在很多NAPT实现中,专门保留一部分端口号给伪装使用,叫作伪装端口号。下图中的NAT路由器中有一个伪装表,通过这个表对端口号进行翻译,从而隐藏了内部网络138.201中的所有主机。
|
|
|
|
|
|
(1)出口分组的源地址被路由器的外部IP地址所代替,出口分组的源端口号被一个未使用的伪装端口号所代替。
|
|
|
(2)如果进来的分组的目标地址是本地路由器的IP地址,而目标端口号是路由器的伪装端口号,则NAT路由器就检查该分组是否为当前的一个伪装会话,并试图通过它的伪装表对IP地址和端口号进行翻译。
|
|
|
伪装技术可以作为一种安全手段使用,借以限制外部对内部主机的访问。另外,还可以用这种技术实现虚拟主机和虚拟路由,以便达到负载均衡和提高可靠性的目的。
|
|
|