中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > Linux > Linux综合
做Double NAT的一种可行方法
作者:未知 时间:2005-09-13 22:40 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:做Double NAT的一种可行方法
当两个子网通过NAT网关相连,而且子网与子网又有ip重叠的话,你该怎么办呢?Double NAT可以解决这个问题,但记住这个方法是Hacker-Style的——怪异却工作的方法。

  • 看如下的情形:
Network 1
192.168.150.0 (Corporate)

--------------/-------------------------


Network 2
192.168.150.0 (Untrusted Network)
怎么连接这两个子网呢?注意到,他们的网段是重叠的。

  • 首先,从两网段各抽出一台机器做NAT网关,情形如下:
Network 1
192.168.150.0 (Corp)
|
Network 2 |
192.168.180.0 (Intermediate)
|
NAT BOX 1 |
eth0 192.168.180.180
eth1 10.15.15.1
|
NAT BOX 2 |
eth0 10.15.15.2
eth1 192.168.150.252
|
Newtwork 3 |
192.168.150.0 (Untrusted Network)
  • 现在开始配置。

在NAT BOX 1, 给eth0建立三个别名.

        ifconfig eth0:0 192.168.180.181 netmask 255.255.255.0
ifconfig eth0:1 192.168.180.182 netmask 255.255.255.0
ifconfig eth0:2 192.168.180.183 netmask 255.255.255.0

NAT BOX 2也是。

        ifconfig eth0:0 10.15.15.181 netmask 255.255.255.0
ifconfig eth0:1 10.15.15.182 netmask 255.255.255.0
ifconfig eth0:2 10.15.15.183 netmask 255.255.255.0
接下来给出iptables的,你一看应该就会明白了:

在NAT BOX 1給eth0做三个DNAT:

        iptables -t nat -A PREROUTING -d 192.168.180.181 -i eth0 \
-j DNAT --to-destination 10.15.15.181
iptables -t nat -A PREROUTING -d 192.168.181.182 -i eth0 \
-j DNAT --to-destination 10.15.15.182
iptables -t nat -A PREROUTING -d 192.168.181.183 -i eth0 \
-j DNAT --to-destination 10.15.15.183

还有一个SNAT:

        iptables -A POSTROUTING -s 192.168.150.0/255.255.255.0 \
-d 10.15.15.0/255.255.255.0 -j SNAT -o eth1 \
--to-source 10.15.15.1

网段2也类似

        iptables -t nat -A PREROUTING -d 10.15.15.181 -i eth0 \
-j DNAT --to-destination 192.168.150.10
iptables -t nat -A PREROUTING -d 10.15.15.182 -i eth0 \
-j DNAT --to-destination 192.168.150.11
iptables -t nat -A PREROUTING -d 10.15.15.183 -i eth0 \
-j DNAT --to-destination 192.168.150.12

        iptables -A POSTROUTING -s 10.15.15.0/24 \
-d 192.168.150.0/24 -j SNAT -o eth1 \
--to-source 192.168.150.252

好了,现在目的是达到了,但缺点很明显的——维护起来太麻烦了。呵呵,我说过的这是Haker-Style的解决办法。
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有