Chinaunix首页 | 论坛 | 博客

qsh

  • 博客访问: 4055648
  • 博文数量: 1015
  • 博客积分: 15904
  • 博客等级: 上将
  • 技术积分: 8572
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-04 19:16
文章分类

全部博文(1015)

文章存档

2019年(1)

2017年(1)

2016年(19)

2015年(27)

2014年(30)

2013年(95)

2012年(199)

2011年(72)

2010年(109)

2009年(166)

2008年(296)

分类:

2008-08-01 14:55:26

使用IP NAT Outside Source List命令的配置样例
使用的组件
  本文不局限于特殊的软件和硬件版本。
  
  配置
  本部分向您提供配置本文所述功能所需要的信息。
  
  网络图
  本文使用下图所示的网络设置。
  
 
  从Router 2514w的loopback0接口(172.16.88.1)到Router 2501e的171.68.1.1的ping 数据包成功。在Router 2514x的外部接口上,该包有源地址(SA)172.16.88.1 和目的地地址(DA)171.68.1.1。如果SA允许在 ip nat outside source list命令使用的访问表1中,那么该SA将被转换成NAT 池 Net171中的地址。请注意, ip nat outside source list 命令 参考了 NAT 池 "Net171"。在本例中,该地址被转换成 171.68.16.10。转换之后,Router 2514x 在路由表中搜索目的地并传送数据包。Router 2501e在入局接口上发现这个数据包,SA 为171.68.16.10,DA 为171.68.1.1。Router 2501e发出一个互联网控制消息协议(ICMP)响应来答复171.68.16.10。如果它没有路由,那么它就丢弃这个数据包。在本例中,由于Router 2501e有一个(默认的)路由,因此,Router 2501e使用 171.68.1.1 的SA和 171.68.16.10的DA将数据包发送到Router 2514x。Router 2514x发现这个包并检查去往171.68.16.10 地址的路由。如果Router 2501e没有一个路由,那它就发送ICMP不可到达的应答来作响应。在本例中,由于它有去往171.68.16.10的路由,因此它将这个数据包转换回172.16.88.1地址,并将该包路由出自己的外部接口。
  
  配置
  
 
    
    
  检验
  此配置目前没有检验程序。
  
  故障检修
  本部分向您提供可以用于配置排障的信息。
  
  以下输出是从Router 2514w的 loopback0 接口地址(172.16.188.1)ping到Router 2501e的loopback0接口地址(171.68.1.1)时,在Router 2514x上运行debug ip packet 和 debug ip nat 命令的结果。
  
  rp-2514x#
   NAT: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [40] 
   IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len 
   100, forward ICMP type=8, code=0
   NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [40] 
   IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 
   100, forward ICMP type=0, code=0 
   
   NAT: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [41] 
   IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len 
   100, forward ICMP type=8, code=0 
   NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [41] 
   IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 
   100, forward ICMP type=0, code=0 
  
   NAT: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [42] 
   IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len 
   100, forward ICMP type=8, code=0 
   NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [42] 
   IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 
   100, forward ICMP type=0, code=0 
  
   NAT: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [43] 
   IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len 
   100, forward ICMP type=8, code=0 
   NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [43] 
   IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 
   100, forward ICMP type=0, code=0 
  
   NAT: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [44] 
   IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len 
   100, forward ICMP type=8, code=0 
   NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [44] 
   IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 
   100, forward ICMP type=0, code=0
  
  总结
  使用 ip nat outside source list 命令(动态NAT)而不是 ip nat outside source static 命令(静态NAT)的主要区别在于,在(为NAT配置的)路由器检验数据包的转换标准之前,在转换表中没有条目。在上例中,SA为172.16.88.1的数据包(进入Router 2514x的外部接口)符合访问列表1,即 ip nat outside source list 命令使用的标准。因此,在内部网络的包可以与Router 2514w的loopback0接口通信之前,必须从外部网络始发数据包。
  
  本例中需要注意两点:
  第一,当数据包从外部传输到内部时,先进行转换,然后检查目的地的路由表。当数据包从内部传输到外部时,先检查目的地的路由表,然后进行转换。
  
  第二,使用上述每条命令时,记录IP数据包的哪个部分被转换很重要。下表给出了一个纲要:
  

  以上表明有多种方法可以转换包。根据您的具体要求,您应该确定如何定义NAT接口(内部或外部),以及路由表在转换之前或之后应该包含哪些路由。一定要记住,包被转换的部分取决于该包传输的方向以及您如何配置NAT。
阅读(1446) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~