NAPT地址转换表举例
发布时间:2014/9/4 21:01:17 访问次数:2804
当NAT路由器具有胛个全球IP地址时,专用网内最多可以同时有聆个主机接入到因特网。 NC7NZ04L8X这样就可以使专用网内较多数量的主机,轮流使用NAT路由器有限数量的全球IP地址。
显然,通过NAT路由器的通信必须由专用网内的主机发起。设想因特网上的主机要发起通信,当IP数据报到达NAT路由器时,NAT路由器就不知道应当把目的IP地址转换成专用网内的哪一个本地IP地址。这就表明,这种专用网内部的主机不能充当服务器用,因为因特网上的客户无法请求专用网内的服务器提供服务。
为了更加有效地利用NAT路由器上的全球IP地址,现在常用的NAT转换表把运输层的端口号也利用上。这样,就可以使多个拥有本地地址的主机,共用一个NAT路由器上的全球lP地址,因丽可以同时和因特网上的不同主机进行通信[COME06]。
由于运输层的端口号将在下一章5.1.3节讨论,因此,建议在学完运输层的有关内容后,再学习F面的内容。从系统性考虑,把下面的这部分内容放在本章中介绍较为合适。
使用端口号的NAT也叫做网络地址与端口号转换NAPT (Network Address and PortTranslation)。但在许多文献中,更常用的还是使用NAT这个更加简洁的缩写词。表4-11说明了NAPT的地址转换机制。
从表4-11可以看出,在专用网内主机192.168.0.3向因特网发送IP数据报,其TCP瑞口号选择为30000。NAPT把源IP地址和TCP端口号都进行转换(如果是使用UDPt,则对UDP的端口号进行转换。原理是一样的)。另一台主机192.168.0.4也选择了同样的TCP端口号30000。这纯属巧合(端口号仅在本主机中才有意义)。现在NAPT把专用网内不同的源IP地址,都转换为同样的全球IP地址。但对源主机所采用的TCP端口号(不管相同或不同),则转换为不同的新的端口号。因此,当NAPT路由器收到从因特网发来的应答时,就可以从IP数据报的数据部分找出运输层的端口号,然后根据不同的目的端口号,从NAPT转换表中找到正确的目的主机。
应当指出,从层次的角度看,NAPT的机制有些特殊。普通路由器在转发IP数据报时,对于源IP地址或目的lP地址都是不改变的。但NAT路由器在转发IP数据报时,一定要更换其lP地址(转换源lP地址或目的IP地址)。其次,普通路由器在转发分组时,是工作在网络层。但NAPT路由器还要查看和转换运输层的端口号,而这本来应当属于运输层的范畴。也正因为这样,NAPT曾遭受了一些人的批评,认为NAPT的操作没有严格按照层次的关系。但不管怎样,NAT(包括NAPT)已成为因特网的一个重要构件。
当NAT路由器具有胛个全球IP地址时,专用网内最多可以同时有聆个主机接入到因特网。 NC7NZ04L8X这样就可以使专用网内较多数量的主机,轮流使用NAT路由器有限数量的全球IP地址。
显然,通过NAT路由器的通信必须由专用网内的主机发起。设想因特网上的主机要发起通信,当IP数据报到达NAT路由器时,NAT路由器就不知道应当把目的IP地址转换成专用网内的哪一个本地IP地址。这就表明,这种专用网内部的主机不能充当服务器用,因为因特网上的客户无法请求专用网内的服务器提供服务。
为了更加有效地利用NAT路由器上的全球IP地址,现在常用的NAT转换表把运输层的端口号也利用上。这样,就可以使多个拥有本地地址的主机,共用一个NAT路由器上的全球lP地址,因丽可以同时和因特网上的不同主机进行通信[COME06]。
由于运输层的端口号将在下一章5.1.3节讨论,因此,建议在学完运输层的有关内容后,再学习F面的内容。从系统性考虑,把下面的这部分内容放在本章中介绍较为合适。
使用端口号的NAT也叫做网络地址与端口号转换NAPT (Network Address and PortTranslation)。但在许多文献中,更常用的还是使用NAT这个更加简洁的缩写词。表4-11说明了NAPT的地址转换机制。
从表4-11可以看出,在专用网内主机192.168.0.3向因特网发送IP数据报,其TCP瑞口号选择为30000。NAPT把源IP地址和TCP端口号都进行转换(如果是使用UDPt,则对UDP的端口号进行转换。原理是一样的)。另一台主机192.168.0.4也选择了同样的TCP端口号30000。这纯属巧合(端口号仅在本主机中才有意义)。现在NAPT把专用网内不同的源IP地址,都转换为同样的全球IP地址。但对源主机所采用的TCP端口号(不管相同或不同),则转换为不同的新的端口号。因此,当NAPT路由器收到从因特网发来的应答时,就可以从IP数据报的数据部分找出运输层的端口号,然后根据不同的目的端口号,从NAPT转换表中找到正确的目的主机。
应当指出,从层次的角度看,NAPT的机制有些特殊。普通路由器在转发IP数据报时,对于源IP地址或目的lP地址都是不改变的。但NAT路由器在转发IP数据报时,一定要更换其lP地址(转换源lP地址或目的IP地址)。其次,普通路由器在转发分组时,是工作在网络层。但NAPT路由器还要查看和转换运输层的端口号,而这本来应当属于运输层的范畴。也正因为这样,NAPT曾遭受了一些人的批评,认为NAPT的操作没有严格按照层次的关系。但不管怎样,NAT(包括NAPT)已成为因特网的一个重要构件。
上一篇:NAT地址转换表举例
上一篇:TCP/IP体系中的网络层