IP Masquerade mini HOWTO( 三 )


签入并起始 SLIP/or/PPP连结.

第二个系统(不必是执行 Linux的系统)拨接进入 Linux
机器并起始 SLIP/or/PPP连结.它在网际网路上并没有指定的
IP位址所以它使用 192.168.1.100.(参阅下述)

配合 ip_masquerade及适当递送配置(routing configured)
Anybox这台机器可以跟网际网路交流就如同它真的连在上面般
(除了少数例外).

节录 Pauline Middelink:
别忘记提到 ANYBOX 应该把 Linux机器当作它的闸道(无论是
预设递送路径或只是个子网路都没关系).如果 ANYBOX 不能够
这样设 ,  Linux机器应该为所有要递送的位址做代理位址解析
析协定(proxy arp) 服务 , 但代理位址解析的设定超过这份文件
的□围.

下面节录自 comp.os.linux.networking 的一篇布告并且稍加编辑以
符合上述□例的用词:

。我告诉 ANYBOX 这台机器跑 slip 的 linux机器是它的闸道.
。当一个封包从 ANYBOX 进入 linux机器时 , 它会指定新的来源埠
号(source port number) , 把它自己的 ip 位址塞入封包的标头并
储存原来的.然後它将会藉由 SLIP/or/PPP界面把修改过的封包
送上网际网路.
。当一个封包从网际网路来到 linux机器时 , 如果埠号是上面指定
的其中一个 , 它将会取出原来的埠号以及 ip 位址 , 把它们放回封
包的标头 , 并且把封包送往 ANYBOX .
。送出封包的主机将永远不知道其中的差别.


一个 IP Masquerading 的例子:

下面的图示是典型的例子:-


----------
||Ethernet
| abox |::::::
||2:192.168.1.x
----------:
 :----------PPP
----------:1|Linux | link
|| ::::| masq-gate|:::::::::// Internet
| bbox |:::::: ||
||3:----------
----------:
 :
----------:
|| :
| cbox |::::::
||4
----------


<-Internal Network->

在这个例子中我们考虑四台电脑系统(想必遥远的右方还有些东西让你到网际网路的 IP 连线能够连接 , 以及一些(远超过这一页)在网际网路上你有兴趣交换资讯的东西).这个 Linux 系统 masq-gate 是 abox, bbox, cbox 内部网路机器连接网际网路的伪装闸道.内部网路使用指定的私用(private) 网路位址 , 在这个案例中是 class C 网路 192.168.1.0, Linux 机器拥有位址 192.168.1.1 而其它系统也拥有此网路上的位址.
这三台机器 abox, bbox 以及 cbox (它们可以执行任何作业系统 - 像是 Windows 95, Macintosh MacTCP 或甚至是另一台 Linux 机器 , 只要它们能了解 IP)可以连线到网际网路上的其它机器去 , 然而这个伪装系统闸道 masq-gate 转换它们所有的连线所以这些连线看起来像是原本即从伪装闸道 masq-gate 本身发出的 , 而且还安排伪装连线传回的资料转回原先的系统 - 所以在内部网路上的系统看到的是直接通往网际网路的递送路径而且不知道他们的资料被伪装过.


2.6 在 Linux 2.x 上使用 IP Masquerade 的需求

** 请参考 IP Masquerade Resource 以获得最新资讯 , 因为经常更新这份 HOWTO 是满困难的. **

核心 2.0.x 的原始程式码可以从这里取得 ftp://ftp.funet.fi/pub/Linux/kernel/src/v2.0/
(是的 , 你将得配合加入一些支援来编译你的核心.... 建议最新的稳定版本)
可载入核心模组 , 最好是 2.0.0 或更新的版本 , 可以从这里取得 http://www.pi.se/blox/modules/modules-2.0.0.tar.gz
(至少需要 modules-1.3.57)
设定良好的 TCP/IP 网路
涵盖於 Linux NET-2 HOWTO 及网路管理者指引(Network Administrator"s Guide) Network Administrator"s Guide

推荐阅读