5.2.3 内/外部地址NAT转换原理

http://book.51cto.com  2010-10-19 11:00  王达  华中科技大学出版社  我要评论(0)
5.2.3 内/外部地址NAT转换原理
下面介绍同时进行内、外部地址NAT转换原理及基本配置步骤。它需要同时定义内部本地地址、内部全局地址、外部本地地址和外部全局地址。此时无论数据包是从哪个方向发送的,数据包中的源地址和目的地址都将发生变化。
同样以图5-8所示的基本网络结构为例进行介绍。本示例要实现的目的是:在下面的示例中,通过配置可实现:当NAT路由器内部网络接口s0接收到来自内部网络,源地址为内部本地地址10.10.10.1,目的地址为外部全局地址10.10.10.5的数据包,在转发到s1接口后,这个数据包中的源地址将转换成内部全局地址171.16.68.5,目的地址将被转换成外部本地地址171.16.68.1。
当NAT路由器外部接口s1接收到来自外部网络,源地址为外部本地地址171.16.68.1,目的地址为内部全局地址172.16.68.5的数据包时,源地址将转换成外部全局地址10.10.10.5,目的地址将被转换成内部本地址10.10.10.1。
下面是内、外部地址同时NAT转换的配置步骤,详细的NAT配置方法将在本章后面具体介绍。
  1. Router(config)#ip nat inside source static 
    10.10.10.1 171.16.68.5    # 在内部本地地址
    10.10.10.1与内部全局地址171.16.68.5之间建立静态
    NAT转换关系,使内部网络主机知道要以171.16.68.5
    这个地址到达外部网络主机  
  2. Router(config)#ip nat outside source static
    171.16.68.1 10.10.10.5    # 在外部本地地址
    171.16.68.1与外部全局地址10.10.10.5之间建立
    静态NAT转换关系,使外部网络主机知道要以10.10.10.5
    这个地址到达内部网络主机  
  3.  
  4. Router(config)#interface s 0  
  5. Router(config-if)#ip nat inside  
  6. Router(config-if)#end  
  7. Router(config)#interface s 1  
  8. Router(config-if)#ip nat outside  
  9. Router(config-if)#end  
  10. Router(config)# end  
  11. Router#show ip nat translations  
  12.  
  13. Pro   Inside global      Inside local        
    Outside local        Outside global  
  14.          --- ---           ---               
    10.10.10.5           171.16.68.1  
  15.        171.16.68.5        10.10.10.1        
    ---                    --- 
同样,如果此时分别执行一个从内部主机到外部主机,以及从外部主机到内部主机的ping操作,然后再在路由器特权模式下执行"show ip nat translations"命令,则显示如下结果。因为此时同时配置了内、外部本地地址和全局地址,所以结果中显示了两条NAT配置项,分别显示了与外部网络和内部网络中的本地地址和全局地址转换对应的ping操作icmp消息:与外部本地地址和全局地址对应的Ping操作ICMP消息中显示内部网络中的本地地址和全局地址是一样的,而与内部网络本地地睛和全局地址对应的Ping操作ICMP消息中显示外部网络中的本地地址和全局地址是一样的,都是对应的Ping操作目的主机地址。
  1. Router#show ip nat translations  
  2.  
  3. Pro Inside global      Inside local      
    Outside local      Outside global  
  4. ---      ---                ---          
    10.10.10.5       171.16.68.1  
  5. icmp 10.10.10.1:4      10.10.10.1:4      
    10.10.10.5:4       171.16.68.1:4  
  6. icmp 171.16.68.5:39    10.10.10.1:39     
    171.16.68.1:39     171.16.68.1:39  
  7. ---  171.16.68.5       10.10.10.1        
    ---                 --- 
经过以上配置后,数据包发送(无论是从哪个方面发送的)时不仅源地址会发生变化,目标地址也会同时发生变化,如图5-11所示。经过内、外部地址同时NAT转换后,数据包中的源地址是由发送数据包的源主机的本地地址(可能是内部本地地址,或者外部本地址)在经过NAT路由器后变成为目的主机所在网络的全局地址(可能是内部本局地址,或者外部全局地址);数据包中的目标地址则先是封装为目的主机所在网络的全局地址,在经过NAT路由器后变成为目的主机地址(可能是内部全局地址,或者外部全局地址)。具体来讲,如果数据包是从内部网络发往外部网络,则源地址和目的地地址的转换方式如图5-12所示;而如果数据包是从外部网络发往内部网络,则源地址和目的地址的转换方式如图5-13所示。
5.2.3 内/外部地址NAT转换原理_职场 
(点击查看大图)图5-11  同时配置了内、外部地址转换后的地址转换示例
5.2.3 内/外部地址NAT转换原理_地址_02 
图5-12 数据包从内部网络发
到外部网络时的地址转换方式
5.2.3 内/外部地址NAT转换原理_地址_03 
图5-13 数据包从外部网络发到
内部网络时的地址转换方式
从以上两图示可以看出,两种数据包发送方向中的源地址、目标地址转换恰好是相反的,图5-12中的源地址转换过程恰好是图5-13中的目的地址转换过程。同理,图5-12中的源地址转换过程恰好是图5-13中的目的地址转换过程。但无论数据包是发往哪个方面,源地址的转换过程都由本地地址(Local Address)转换成全局地址(Global Address),而目的地址转换则是相反的,即由全局地址转换成本地地址。从目的地址的转换过程还可以看出,数据包在NAT服务下的发送数据包的真正主机地址被所配置的本地网络全局地址屏蔽了,保护了本地网络;数据包的传送也不是一直以同一个目的地址,一步到位转发的,而是先把从发送主机中把数据包交给本地网络的全局地址,然后再从全局地址转发到真正的地址,也就是经过了两个步骤。
【责任编辑:云霞 TEL:(010)68476606】