分享
 
 
 

Linux主机用IP Masquerade功能 ,使其他没有IP地址电脑经由Linux机器访问网络(1)

王朝system·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

这份文件描述如何在一台 Linux 主机上起动 IP Masquerade 功能

,允许没有注册网际网路 IP 位址的连线电脑经由你的 Linux 机器

连接网际网路。

1. 简介

1.1. 简介

这份文件描述如何在一台 Linux 主机上起动 IP Masquerade 功能

,允许没有注册网际网路 IP 位址的连线电脑经由你的 Linux 机器

连接网际网路。你的机器可能是以乙太网路连接 Linux, 也可能是其

它种类,像是拨接的点对点(ppp) 连线。这份文件将会强调乙太网路

连线的情况,因为这应该是最常见的案例。

这份文件倾向给使用 2.0.x 核心的使用者参考,不包含发展中

的 2.1.x 核心。

1.2. 前言,回馈&参考资讯

首先,我想让你知道我不是对 IP masquerade 了解非常透彻或很有

经验的人。

我发现新手在较新的核心上,像是 2.x 核心,设定 IP Masguerade

时非常困惑。虽然有份常见问答集(FAQ) 与邮递列表(mailing list)

,然而没有一份这方面的专门文件;而且在邮递列表上有些对於这样

一份说明文件(HOWTO) 的请求。所以,我决定撰写它给所有新手作为

一个起点,并且希望能抛砖引玉,作为那些非常了解它的使用者建立

文件的基础。如果你认为我做的不好,不要在意告诉我,这样我能把

它做得更好。

这份文件很多是以原先 Ken Eves 的常见问答集以及 ip_masq 邮递

列表里许多有帮助的讯息作为基础。特别感谢 Mr. Matthew Driver

在邮递列表中的讯息引发我设立 ip_masq 的灵感以及最後撰写了这

份文件。

如果我的任何资讯有误或遗漏任何资讯,请别介意把任何回馈或意见

寄到 achau@wwonline.com 来。你的无价回馈将影响未来的这份说明

文件!

这份说明文件是想作为让你的 IP Masquerade 能在最短时间内运作

的快速指引。最新的消息以及资讯可以在我所维护的 IP Masquerade

Resource 网页上找到。如果你有任何关於 IP Masquerade 的技术

问题,请加入 IP Masquerade 邮递列表而别寄电子邮件给我,因为

我的时间有限,而且 IP_ Masq 的发展者们更有能力回答你的问题。

这份文件最新的版本可以在 IP Masquerade Resource 上找到,里面

也有 HTML 以及 postscript 的版本。

。 http://www.wwonline.com/~achau/ipmasq/

。 http://www.hwy401.com/achau/ipmasq/

。 http://www.leg.uct.ac.za/mirrors/ipmasq/

。 http://130.89.230.132/linux/ipmasq/

1.3. 版权&宣告

这份文件版权属於 Ambrose Au, 而且是免费的文件。你可以在 GNU

的通用公开授权方式下散播它。

这份文件中的资讯跟其它内容都已经尽了我最大的努力。无论如何,

ip_masq 是实验性的,而且我也可能会犯些错误;所以你应该自己决

定是不是要照著这份文件中的资讯做。

没有人会为使用这份文件中的资讯所造成的电脑损坏或其它损失负责

。i.e.

作者不对依照这份文件内容动作所造成的损害负责。

This document is copyright(c) 1996 Ambrose Au, and it's a free

document. You can redistribute it under the terms of the GNU General

Public License.

The information and other contents in this document are to the best of

my knowledge. However, ip_masq is experimental, and there is chance

that I make mistakes as well; so you should determine if you want to

follow the information in this document.

Nobody is responsible for any damage on your computers and any other

losses by using the information on this document. i.e.

THE AUTHOR IS NOT RESPONSIBLE FOR ANY DAMAGES INCURRED DUE

TO ACTIONS TAKEN BASED ON THE INFORMATION IN THIS DOCUMENT.

2. 背景知识

2.1. 什麽是 IP Masquerade?

IP Masquerade 是 Linux 发展中的一种网路功能。如果一台 Linux

主机使用 IP Masquerade 功能连线到网际网路上,那麽接上它的电

脑(不论是在同一个区域网路上或藉由数据机连线)也可以接触网际

网路,即使它们没有获得正式指定的 IP 位址。

这使得一些电脑可以隐藏在闸道(gateway) 系统後面存取网际网路而

不被发现,看起来就像只有这个系统在使用网际网路。突破设定良好

的伪装(masquerade)系统之安全防护应该会比突破良好的封包过滤式

防火墙(packet filter firewall)来得更加困难(假设两者之中都没

有错误)。

2.2. 现况

IP Masquerade 仍然在实验阶段。无论如何,核心从 1.3.x 开始已

经内建这项支援。许多个人甚至公司正在使用它,而有满意的结果。

浏览网页以及远端签入(telnet)已经有回报表示可以在 ip_masq 上

运作。档案传输(FTP), 网路交谈(IRC) 以及聆听 Real Audio 现在

可以载入某些模组配合。其它的网路资料流音讯 (streaming audio)

像是 True Speech 以及 Internet Wave 也能运作。一些邮递列表

中的使用夥伴甚至还尝试过视讯会议软体。 Ping 现在配合新近可以

取得的网际网路控制讯息协定(ICMP)修补档也能运作。更完整的支援

软体列表请参考 4.3 节。

IP Masquerade 在数种不同的作业系统及平台上与'客户端机器'配

合良好。成功的案例有使用 Unix , Windows95 , Windows NT ,

Windows for Workgroup (with TCP/IP package) , OS/2, Macintosh

System's OS with Mac TCP, Mac Open Transport, DOS with NCSA

Telnet package, VAX, Alpha with Linux, 甚至 Amiga with AmiTCP

or AS225-stack 的系统。

2.3. 谁可以从 IP Masquerade 中获益?

。如果你有台连接网际网路的 Linux 主几,而且

。如果你有一些执行 TCP/IP 连接到 Linux 机器的电脑在区域网路

上,以及/或是

。如果你的 Linux 主机有一个以上的数据机并且作为 PPP 或 SLIP

伺服器连接其它电脑,它们

。这些”其它”机器没有正式指定的 IP 位址。(这些机器从这里开

始以後就称为”其它”机器)

。而且当然,如果你希望这些”其它”机器不必花额外的费用就能连

上网际网路:)

2.4. 谁不需要 IP Masquerade?

。如果你的机器是单独一台(stand-alone) 连接网际网路的 Linux

主机,那麽执行 ip_masq 没什麽意义,或者

。如果你的”其它”机器拥有正式指定的 IP 位址,那麽你就不需要

IP Masquerade ,

。而且当然,如果你不喜欢免费使用(free ride) 这个主意的话。

2.5. IP Masquerade 是如何运作的?

节自 Ken eves 的 IP Masquerade FAQ:

这是大部分简单的设定草图:

SLIP/PPP +------------+ +-------------+

to provider | Linux | SLIP/PPP | Anybox |

<---------- modem1| |modem2 ----------- modem | |

111.222.333.444 | | 192.168.1.100 | |

+------------+ +-------------+

上面的草图中一台安装并执行 ip_masquerading 的 Linux

机器使用 modem1 经由 SLIP/or/PPP 连接网际网路。它有一个

指定的 IP 位址 111.222.333.444。它设定 modem2 允许拨接者

签入并起始 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->

在这个例子中我们考虑 4 台电脑系统(想必遥远的右方还有些东西

让你到网际网路的 IP 连线能够连接,以及一些(远超过这一页)在

网际网路上你有兴趣交换资讯的东西)。这个 Linux 系统伪装闸道

是 abox, bbox, cbox 内部网路机器连接网际网路的伪装闸道。内部

网路使用指定的私用(private) 网路位址,在这个案例中是 class C

网路 192.168.1.0, linux 机器拥有位址 192.168.1.1 而'其它'

系统也拥有此网路上的位址。

这三台机器 abox, bbox 以及 cbox (它们可以执行任何作业系统-

像是 Windows95, Macintosh MacTCP 或甚至是另一台 linux 机器

,只要它们能了解 IP )可以连线到网际网路上的其它机器去,然而

这个伪装系统闸道转换它们所有的连线所以这些连线看起来像是原本

即从伪装闸道本身发出的,而且还安排伪装连线传回的资料转回原先

的系统-所以在内部网路上的系统看到的是直接通往网际网路的递送

路径而且不知道他们的资料被伪装过。

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

。核心 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)

。你的 Linux 主机的网际网路连线

涵盖於 Linux ISP Hookup HOWTO

,

Linux PPP HOWTO

以及 Linux PPP-over-ISDN mini-HOWTO

。Ipfwadm 2.3 或更新的版本可以从这里取得

ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.3.tar.gz

在 Linux Ipfwadm 网页上有更多关於版本的资讯

。你可以选择性地应用一些 IP Masquerade 修补档打开其它功能。

从这里可以取的更多资讯, IP Masquerade Resources

(这些修补档适用於

所有的 2.0.x 核心)

3. IP Masquerade 的设定

如果你的私用网路里有任何重要的资讯,在使用 IP Masquerade

之前请三思。这可能成为你通往网际网路的闸道,反之亦然,也

可能成为另一边的世界进入你私用网路的途径。

3.1. 编译核心加入 IP Masquerade 的支援

。首先,你需要核心的原始程式码(最好是稳定的2.0.0 版或以上

的核心)

。如果这是你第一次编译核心,不要害怕。事实上,这非常容易而且

涵盖於 Linux Kernel HOWTO

。使用指令: tar zxvf linux-2.0.x.tar.gz -C /usr/src 把核心的

原始程式码解至 /usr/src/ , 其中 x 是 2.0 之後的修补层级

(确定有个称为 linux 的目录或符号链结)

。加上适当的修补。因为新的修补档不断出来,所以细节不会包含在

这里。最新的资讯请参考 IP Masquerade Resources

。有关编译核心更进一步的介绍请参考 Kernel HOWTO 以及核心原始

程式码目录里的 README 档案

。这里是你要编译进去的选项:

下列选项要回答 YES

* Prompt for development and/or incomplete code/drivers

CONFIG_EXPERIMENTAL

- 这将让你能选择把实验性的 ip_masq 程式码编译到核心里去

* Enable loadable module support

CONFIG_MODULES

- 让你能够载入模组

* Networking support

CONFIG_NET

* Network firewalls

CONFIG_FIREWALL

* TCP/IP networking

CONFIG_INET

* IP: forwarding/gatewaying

CONFIG_IP_FORWARD

* IP: firewalling

CONFIG_IP_FIREWALL

* IP: masquerading (EXPERIMENTAL)

CONFIG_IP_MASQUERADE

- 这虽然是实验性的,但却是*必须*的

* IP: always defragment

CONFIG_IP_ALWAYS_DEFRAG

- 高度建议

* Dummy net driver support

CONFIG_DUMMY

- 建议使用

注意: 这些只是 ip_masq 所需要的,你还需选择其它任何你的设定

需要的选项。

。编译核心之後,你应该编译并安装模组:

make modules; make modules_install

。然後你应该在 /etc/rc.d/rc.local (或任何你认为合适的档案)

里加上几行以便每次启动时自动载入 /lib/modules/2.0.x/ipv4/

里所需的模组:

.

.

.

/sbin/

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有