做Double NAT的一种可行方法
来源:互联网 发布:用手机淘宝怎么交电费 编辑:程序博客网 时间:2024/04/29 03:56
当两个子网通过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的解决办法。
- 做Double NAT的一种可行方法
- 一种不需要握手服务器穿透NAT的UDP通讯方法
- FEDORA 20尝试了各种安装FCITX拼音的方法,只有一种是可行的
- 一种可行的系列动画播放方式
- 一种可行的系列动画播放方式
- 一种可行的Android.mk配置
- 一种可行的云服务架构实现
- 一种可行的STM32F103外设RTC使用方法
- 一种可行的持续集成架构介绍
- FPGA在线升级的一种可行方案
- 做脚印效果的一种方法
- 简洁常用权限系统的设计与实现(七):一种错误的不可行的构造树的方法
- 一种能比较准确地猜测NAT的影射端口的方法
- 一种能比较准确地猜测NAT的影射端口的方法
- 批判性地看待一种可行的表示技术:JavaServerPages se
- 批判性地看待一种可行的表示技术:JavaServerPages se
- 一种简约可行的后台界面UI开发方案+感想
- pymssql中文乱码问题(一种可行的解决方案)
- [翻译] Effective C++, 3rd Edition, Item 25: 考虑支持一个 non-throwing swap(不抛异常的 swap)(下)
- 使用Eclipse进行SWT编程(5)
- ASCII表
- 关于_IS_ISC.dll解决方案
- QQ宠物外挂
- 做Double NAT的一种可行方法
- 2004中国大学研究生院3个计算机专业(二级学科)排名
- 窗口处理技巧大全
- 线虫研究发现另一种乙酰胆碱受体的亚单元
- 肌肉收缩研究取得突破
- [翻译]-WinCE 程序设计 (3rd 版)--1.2 依然是Windows编程
- 关于IE缓存的解决方案
- 辞职信的写法
- 关于金属分类