注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 IB客座主编(四)美国西蒙公..
 帮助

用NAT解决地址交叉问题


2007-03-04 10:48:35
 标签:NAT   [推送到技术圈]

版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。
 
   正常情况下如果想访问192.168.1.3。从主机A是不会走路由的。因为根据判断B会认为是子  网内的主机。发送ARP广播来查找。这就是地址重叠带来的问题。如果希望能够在不重新编址的情况下进行互访。就必须有DNS服务器的存在。访问也不能直接采用IP。而只能采用域名的方式来访问。
 
主机A访问主机B。只能访问B的域名。向网络上的DNS 发出请求。解析域名的IP地址。
 
 
DNS 给出了回应。显示查找域名的IP为192.168.1.3。并回应172.2.2.2。这个地址不是192.168.1.2。这是因为192.168.1.2地址在出去时被NAT转换为内部全局地址172.2.2.2才能在网上被使用。这是inside地址池中的地址。
 
 
当目的地址经过路由器172.2.2.2被转换为内部局部地址192.168.1.2。将DNS 给出的192.168.1.3变更为外部局部地址172.3.3.2。否则主机A还是会认为目的主机是一个子网内的主机。
 
 
主机A现在知道访问对方主机B的目的地址为172.3.3.2。这样就会将数据包发给网关。也就是路由器来处理。
 
     当数据包经由路由器转发时。192.168.1.2 变为172.2.2.2。172.3.3.2 变成 192.168.1.3 。这样B就可以接受到主机A的数据包。
 
router>en
router#conf t
router(config)#int f 0/0
router(config-if)#ip add 192.168.1.254 255.255.255.0
rotuer(config-if)#ip nat inside
router(config-if)#des inside network port
router(config-if)#no shut
router(config-if)#int s 1/0
router(config-if)#ip add 172.16.25.24 255.255.255.0
router(config-if)#ip nat outside
router(config-if)#des outside network port
router(config-if)#no shut
router(config-if)#exit
router(config)#access-list 1 permit 192.168.1.0 0.0.0.255
router(config)#ip nat pool in 172.2.2.1 172.2.2.254 prefix-length 24
router(config)#ip nat pool out 172.3.3.1 172.3.3.254 perfix-length 24
router(config)#ip nat inside source list 1 pool in
router(config)#ip nat outside source list 1 pool out
 
 
这样的做法虽然解决了地址重叠的问题。但是不断的改变数据包的源地址和目的地址。势必会增加延时。只是部门在合并过程中的一个权宜之计。
 
 
 

本文出自 “人类一思考,上帝都发笑” 博客,转载请与作者联系!





    文章评论
 
2007-03-04 23:56:04
好啊 不错 过程详细 一目了然!我喜欢 我投一票!地址池 端口 静态NAT PAT 都有啊 高手!

2007-03-05 09:20:49
的确很清楚。

2007-03-28 09:19:23
好文章!

 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: