用户管理  |   用户注册                                                                                    首 页软件下载教程中心办公指南flash动画文档下载办公公文

www.4oa.com - 中科软件园

投递文章 用户管理 投稿指南 资讯通告 :
站内搜索: 您的位置中科软件园 > 教程中心 > 操作系统 > Linux > 解决方案 > 教程内容

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

2005-5-25 7:25:10  来源:本站整理  作者:不详 【 投递文章
内容提要:3.3.1.配置Windows951.如果你还没有安装网路卡以及界面驱动程式,现在做。2.到'控制台/网路'里去。3.如果你的网路配置里没有'TCP/IP协定'则加进去。4.在'TCP/IP内容'中,...
3.3.1. 配置 Windows 95

1.如果你还没有安装网路卡以及界面驱动程式,现在做。

2.到'控制台/网路'里去。

3.如果你的网路配置里没有'TCP/IP 协定'则加进去。

4.在'TCP/IP 内容'中,选择'IP 位址'并且把 IP 位址设定为
192.168.1.x,(1 <255) 255.255.255.0

5.在'通讯闸'中加入 192.168.1.x 作为你的闸道。

6.在'DNS 配置'/'DNS 伺服器'下加入你的 Linux 主机使用的
DNS (通常可以在 /etc/resolv.conf 里找到)。你可以选择性地
加入适当的网域字尾搜寻顺序。

7.不要变更原先的其它设定,除非你知道自己在做什麽。

8.在所有的对话盒中按下'确定'并且重新启动系统。

9.测试网路连线,ping 你的 linux 主机: 从'开始/执行',输入
ping 192.168.1.1
(这只是区域网路连线测试,你现在还不能 ping 外面的世界。)

10.你可以在 windows 目录下选择性地建立一个 HOSTS 档案,如此
你可以使用区域网路里的机器名称。在 windows 目录里有个称为
HOSTS.SAM 的□例。
┌—————————————————————————————┐
│3.3.2. 配置 Windos for Workgroup 3.11 │
│3.3.3. 配置 Windows NT 3.51 │
│3.3.4. 配置 UNIX 系列的系统 │
│3.3.5. 配置使用 NCSA telnet 套件的 DOS │
│3.3.6. 配置执行 MacTCP 的 MacOS 机器 │
│3.3.7. 配置执行 Open Transport 的 MacOs 机器 │
│3.3.8. 配置使用 DNS 的 Novell 网路 │
│3.3.9. 配置其它像是 OS/2 等系统 │
└—————————————————————————————┘
3.4. 配置 IP 转送(Forwarding)的方式

到目前为止,你应该已经安装好核心以及其它需要的套件,也载入了
你的模组。同时,”其它”机器的 IP 位址,闸道,以及 DNS 也该
全都设定完成。

现在,唯一剩下要做的事是使用 ipfwadm 转送适当的封包给适当的
机器:

ipfwadm -F -p deny
ipfwadm -F -a m -S yyy.yyy.yyy.yyy/x -D 0.0.0.0/0

其中 x 视你的子网路而定,为下列数字之一,而 yyy.yyy.yyy.yyy
则是你的网路位址。

netmask | x | Subnet
~~~~~~~~~~~~~~~~|~~~~|~~~~~~~~~~~~~~~
255.0.0.0 | 8 | Class A
255.255.0.0 | 16 | Class B
255.255.255.0 | 24 | Class C
255.255.255.255 | 32 | Point-to-point

例如,如果我是在一个 class C 子网路上,我得输入:

ipfwadm -F -p deny
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0

第二行指令也可以加上 -V 192.168.1.1 或是 -W eth0 以确保伪装
封包从系统中适当的界面进来 - 如果你极端注重安全考量(不然这
有点过头)的话那麽你将会希望这麽做。

因为 bootp 请求封包没有合法的 IP's ,客户端并不知道它的位址
,对於在伪装/防火墙上执行 bootp 伺服器的人必须在 deny 之前
执行下列指令:

ipfwadm -I -a accept -S 0/0 68 -D 0/0 67 -W bootp_clients_net_if_name -P udp

你也可以分别对每台机器设定。例如,如果我想让 192.168.1.2 及
192.168.1.8 能够存取网际网路,但不允许其它机器使用的话,我得
输入:

ipfwadm -F -p deny
ipfwadm -F -a m -S 192.168.1.2/32 -D 0.0.0.0/0
ipfwadm -F -a m -S 192.168.1.8/32 -D 0.0.0.0/0

另外,你可以输入网路遮罩以取代该值,例如
192.168.1.0/255.255.255.0

常见的错误是像这样的第一行指令

ipfwadm -F -p masquerade

不要把你的预设方式(policy)定为伪装(masquerading) - 否则可以
操控他们的递送路径(routing) 的人将能够直接穿过(tunnel)你的闸
道,以此伪装他们的身分!

再一次,你可以把这些加入 /etc/rc.local 档案,任何一个你比较
喜欢的 rc 档案,或是在每次你需要 ip_masq 时手动执行之。

请阅读 4.4 节有关 Ipfwadm 的详细指引

3.5. 测试 IP Masquerade

在这些工作完成後,现在是试试看的时候了。确定你的 Linux 主机
到网际网路的连线是通的。

你可以在”其它”机器上试著浏览一些'网际网路!!'上的网页,看
是否能见到。我建议第一次尝试时使用 IP 位址而不要用主机名称,
因为你的 DNS 设定有可能并不正确。

例如,你可以使用 http://198.95.249.78 来存取 Netscape's 站台
http://home.netscape.come 。

如果你看见那漂亮的帆船,那麽恭喜! 它可以运作了! 接著你可以使
用主机名称试试看,然後是 telnet, ftp, RealAudio, True Speech
,以及任何 IP Masquerade 支援的东西。

到目前为止,我还不曾在上面的设定上发生过问题,而那些花下时间
让这个绝妙功能运作的人完全同意这些设定。

4. 其它 IP Masquerade 的问题及软体支援

4.1. IP Masquerade 的问题

首先伪装只能在通讯埠式(ported)协定上运作 - 像是 TCP 或 UDP
。尤其不能配合 ICMP 使用,所以 ping 以及 traceroute 将无法运
作(除非你的 ping 以及/或是 traceroute 已经修改成使用不同的
运作方式)。

某些协定现在无法配合 masquerading 使用,因为它们不是假设有关
埠号的一些事情,就是在位址及埠号的资料流里编码资料 - 後面这
些协定需要在 masquerading 程式码里建立特定的代理程式使它们能
运作。

4.2. 进入系统的服务(incoming services)

Masquerading 完全不能处理外界的服务请求 (incoming services)
。只有极少方法能允许它们,但这完全与 masquerading 无关,而且
实在是标准的防火墙方式。

如果你并不要求高度的安全性那麽你可以简单地重导(redirect)这些
埠。有几种不同的方法可以做这件事 - 我使用一只修改过的 redir
程式(我希望这只程式很快就能从 sunsite 及其 mirrors  取得)
。如果你希望能够对外界进入系统的服务请求有某种程度的身分验认
(authorisation) 那麽你可以在 redir 的顶层(0.7 or above) 使用
TCP wrappers 或是 Xinetd 来允许特定 IP 位址通过,或使用其它
的工具。TIS 防火墙工具集是寻找工具及资讯的好地方。

4.3. 已支援的客户端软体以及其它设定方面的注意事项

一般说来,使用传输控制

[1] [2] [3] [4]  下一页

(评论内容只代表网友观点,与本站立场无关!)[ 全部评论 ]

网友评论:

    用户名:

    评   分:100分 85分 70分 55分 40分 25分 10分 0分

    内 容:

                 (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码

关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 -有事点这里