Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1697642
  • 博文数量: 607
  • 博客积分: 10031
  • 博客等级: 上将
  • 技术积分: 6633
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-30 17:41
文章分类

全部博文(607)

文章存档

2011年(2)

2010年(15)

2009年(58)

2008年(172)

2007年(211)

2006年(149)

我的朋友

分类: LINUX

2006-09-20 19:17:06


developerWorks 中国  >  Linux  >

局域网的组建

用 Red Hat Linux 连接多台计算机

developerWorks
文档选项

未显示需要 JavaScript 的文档选项

将此页作为电子邮件发送

将此页作为电子邮件发送


最新推荐

Java 应用开发源动力 - 下载免费软件,快速启动开发


级别: 初级

Darrick Adison, 资深软件工程师与顾问, ASC Technologies 公司

2001 年 2 月 01 日

本 文介绍如何将多台运行 Red Hat Linux 的计算机组建成本地局域网(Local Area Network, LAN)。首先阐述一些基础知识,其中包括 TCP/IP (Transmission Control Protocol/Internet protocol 互联网传输控制协议)的概述,以及局域网中 IP 地址的分配。其次介绍局域网的硬件,以及如何在 Red Hat Linux 操作系统上使用 LinuxConf 进行局域网配置。最后,本文将引导你对局域网进行测试和故障排除。

Linux 在计算机网络通讯领域的应用越来越普遍。由于在各个 FTP 或 HTTP 站点上能够下载到所有源码,获得 Linux 操作系统是相对简单而便宜的。当然,Red Hat Linux 的最新版本也可以在计算机零售店购得,根据你要购买的是标准版本还是完全版本,价格从 $25 到 $50 不等。与免费的 FTP 和 HTTP 资源相比而言,从零售店购买 Linux 系统是完全值得的,因为这个投资里还包括了 Red Hat Linux 工程师至少一年的技术支持。如果你阅读 Red Hat Linux 手册之后仍有不能解决的安装或配置问题,这些技术支持将是很有帮助的。

本文将介绍如何组建含有 Red Hat Linux 6.2 计算机的本地局域网 (LAN)。 LAN 是一种能连接多种设备的通讯网络,并为这些设备提供互相通讯的方法。通常局域网的规模都比较小,只局限于一幢楼里或相邻的几幢楼。在局域网中并不需要 modem (调制解调器)和电话线,而是通过网线相连。计算机之间的距离必须足够近才能够保证网线正常工作。

局域网中的每台计算机都需要一个网卡(network interface card, NIC)来接入网线,并且需要分配唯一的主机名和 IP 地址(分配方法将在本文后部分阐述)。在分配之前必须掌握关于 TCP/IP 协议的基础知识。

TCP/IP 是互联网和大多数局域网所采用的一组协议。在 TCP/IP 协议中,连接到网络上的每个主机(计算机或其它通讯设备)都有一个唯一的 IP 地址。IP 地址由四个字节(每个字节的取值范围为 0 到 255)组成,字节之间用小数点隔开。通过这样的 IP 地址,就可以区分局域网上的主机。例如一个主机名为 Morpheus 的计算机的 IP 地址可以是 192.168.7.127。为了不将同一 IP 地址分配给多个主机,应当注意避免使用那些为局域网保留的 IP 地址。保留 IP 地址通常以 192.168. 开头。

局域网的网络地址
在局域网上的所有计算机,其IP 地址的前三个字节都应该是相同的。比如说,若有一个包括 128 台主机的局域网,这些主机的 IP 地址就可以从 192.168.1. x 开始分配,其中 x 表示1到128中任意一个数字。可以用类似的方法,为同一公司内另外 128 台计算机组建一个相邻的局域网。当然在一个局域网中并不是仅能包含 128 台计算机,你还可以组建更大的局域网络。

网络 IP 地址被分为若干类,这些类型决定一个局域网的规模以及它可以拥有的 IP 地址个数。比如说,A 类的局域网的 IP 地址超过 16,000,000 个,而 B 类局域网所拥有的 IP 地址数大约只有 65,000 个。局域网的规模大小取决于保留地址范围、以及子网掩码(在文章后面有详细解释)。(参看表1)

地址范围 子网掩码 提供 局域网的规模
10.0.0.0 - 10.255.255.255255.0.0.01 A 类网16,777,216
172.16.0.0 - 172.31.255.255255.255.0.016 B 类网65,536
192.168.0.0 - 192.168.255.255255.255.255.0256 C 类网256

网络地址和广播地址
组建局域网时还要注意,IP 地址范围的两个边界地址被保留为该局域网的网络地址和广播地址。应用程序可以使用 网络地址来表示整个本地网络。而 广播地址则可用来将同样的消息同时发送给网络上所有主机。

例如要使用的地址范围为 192.168.1.0 到 192.168.1.128,则第一个 IP 地址(192.168.1.0)被保留为网络地址,而最后一个地址(192.168.1.128)被保留成广播地址。因此,给这个局域网上的计算机分配 IP 地址时,只能在 192.168.1.1 到 192.168.1.127 之间选择:

网络地址:192.168.1.0
主机地址范围:192.168.1.1 到 192.168.1.127
广播地址:192.168.1.128

子网掩码
局域网上的每个主机都有一个子网掩码。 子网掩码 由四个字节组成,它的值为 255 时表示 IP 地址中网络地址的部分,值为 0 时则识别 IP 地址中表示主机号的部分。比如说,子网掩码 255.255.255.0 可以用来决定主机所处的局域网。子网掩码最后的 0 则决定该主机在局域网中的位置。

域名
域名(或称为 网络名 )由唯一的名字和标准互联网后缀组成,这些后缀包括 .com,.org,.mil,.net 等。只要你的局域网有一个简单的拨号连接,并且不直接为其他的主机提供某些类型的服务,就可以随意给它命名。这个例子里组建的网络被认为是秘密私有的,因为它使用了在 192.168.1.x 范围内的 IP 地址。因此执行了上述操作之后,从互联网上依然无法根据所选择的域名与主机连接。你还需要一个“官方”正式域名才能达到此目的。为了获得正式域名,你可以到 InterNIC,Network Solutions 或 Register.com 上登记。在本文末尾的 资料部分列举了一些站点,可以找到获得官方域名的具体方法。

主机名
组建局域网时的另一个重要步骤,是为局域网上所有的计算机分配主机名。为了识别局域网中的主机,主机名必须是唯一的。同时,主机名也不能包含空格或标点符号。例如 Morpheus、Trinity、Tank、Oracle 以及 Dozer 这五个名字都是合法的主机名,你可以将它们分配给局域网上的五个主机。此外选择主机名时还有一些技巧:例如简短的主机名能够减少打字量、容易记忆的名字便于日后通讯等。

表 2 对上述内容做了概括。局域网上所有的主机都应当拥有同样的网络地址、广播地址、子网掩码和域名,因为这些地址标志出一个局域网的全部内容。局域网上所有的计算机都拥有一个主机名和 IP 地址作为识别它们的唯一标志。若某个局域网的网络地址是 192.168.1.0,广播地址 192.168.1.128。则其他主机的 IP 地址就在 192.168.1.1 和 192.168.1.127 之间。

IP 地址 例子 同/异
网络地址192.168.1.0所有主机都相同
域名所有主机都相同
广播地址192.168.1.128所有主机都相同
子网掩码255.255.255.0所有主机都相同
主机名任意合法的名字每个主机都不同
主机地址192.168.1. x 每个主机都不同




回页首


在局域网中分配 IP 地址的方法有两种。你可以为局域网上所有主机都手工分配一个 静态 IP 地址;也可以使用一个特殊服务器来动态分配,即当一个主机登录到网络上时,服务器就自动为该主机分配一个 动态IP 地址。

静态 IP 地址分配
静态 IP 地址分配意味着为局域网上的每台计算机都手工分配唯一的 IP 地址。同一局域网中所有主机 IP 地址的前三个字节都相同,但最后一个字节却是唯一的。并且,每个计算机都必须分配一个唯一的主机名。局域网上的每个主机将拥有同样的网络地址 (192.168.1.0),广播地址(192.168.1.128),子网掩码(255.255.255.0)和域名 (yourcompanyname.com)。最好在分配时,记录下局域网上所有主机的主机名和 IP 地址,以便日后扩展网络时参考。

动态 IP 地址分配
IP 地址的动态分配是通过一个叫做 DHCP (Dynamic Host Configuration Program 动态主机配置程序)的服务器或主机来完成的,当计算机登录到局域网上时,DHCP 服务器就会自动为它分配一个唯一的 IP 地址。名为 BootP 的程序也能够提供类似的动态分配服务。DHCP/BootP 服务可以是程序或设备,但必须在拥有唯一 IP 地址的主机上运行。路由器可以看作一个 DHCP 设备的例子,它的一端充当以太网集线器(Ethernet hub,一种允许多个主机通过以太网插口和指定端口连接的通讯设备),另一端则可以连接到互联网上。另外,DHCP 服务器也需要分配网络和广播地址。在动态分配 IP 地址的网络系统里,不需要手工分配主机名和域名。





回页首


如果缺少将计算机连接到一起的硬件,分配主机名和 IP 地址也就毫无用处。目前有若干种不同类型的网络硬件体系,比如以太网(Ethernet)、令牌环(Token Ring)、光纤分布式数据接口(FDDI)、令牌总线(Token Bus)等。由于以太网是应用最广泛的硬件体系,这里将主要介绍它所需要的硬件。你需要下列硬件:为每台计算机准备一块以太网卡(Ethernet Network Interface Card,NIC),一个端口数至少和待连接计算机一样多的以太网兼容集线器,以及将网卡与集线器相连的网线(或 10BaseT 的电缆)。在计算机出售商那里可以购得它们,而且也相对便宜。

选择硬件时还要注意确认它们与 Red Hat Linux 操作系统兼容。关于这些硬/软件兼容性的信息通常可以在产品包装盒上的 Requirements (要求)部分找到。当然,你也可以直接向出售计算机的人询问硬/软件要求。通常情况下,批量购买网卡要比单独购买便宜。

在选择以太网集线器的时候,必须确认它的端口数至少应和局域网内计算机数目相等。为了便于日后扩展局域网,最好选择端口有盈余的集线器。

如果你计划让局域网中所有的计算机通过本地 ISP(Internet Service Provider,互联网提供商)连入互联网,那么路由器与以太网的结合是最理想的选择。局域网上的任何一台计算机,只要配置好路由器/以太网信息便可。假设局域网上所有的计算机都运行 Red Hat Linux 操作系统,可以使用 LinuxConf 之类的 Linux 工具来配置路由器。

最后,选择网线要考虑可扩展性。通常情况下以太网使用 10BaseT 电缆,并在它的两端接上 RJ45 接口。购买网线时最好选择比需要长度多 1 或 2 倍,这样可以应付将来局域网拓扑结构(topology structure)的改变。

安装硬件
假如已将上面这些硬件准备完毕,下一步就是安装这些硬件。首先关掉所有将要连到局域网上的计算机。然后拆开这些计算机,遵照生产商的说明书在主板的正确插槽上插入网卡。

为 以太网集线器找一个方便但安全的地方,最好是局域网所在建筑物的中心位置或是放置着所有待连接计算机的房间。然后用网线将每台计算机的网卡接到以太网集线 器上,确保所有网线避开那些人们会时常经过的地方。在启动这些连接到局域网上的计算机之前,再次确认已执行完硬件提供商所说明的安装操作。

如果你使用路由器或者 DHCP 服务器,来将局域网连接到互联网,就需要根据用户手册的要求进行相应配置。假如现在所有计算机的网卡都已经和集线器某指定端口相连,就可以开始在 Red Hat Linux 操作系统上使用软件进行配置了。





回页首


如何配置局域网上的计算机,取决于 Red Hat 操作系统是在安装局域网硬件之前或是之后安装的。如果先安装局域网硬件,那么安装 Red Hat 系统的时候,安装程序就会提示进行网络配置。如果先安装 Red Hat 操作系统,则名为“Kudzu" 的程序会检测到新安装的以太网卡,并自动启动配置程序。"Kudzu" 配置步骤如下:

  1. 当启动程序显示 "Welcome to Kudzu." 对话框时,按 Enter 键便进入配置过程。
  2. 接着,在另外一个对话框中选择所安装网卡的商标名,并按 Enter 键继续。
  3. 一段短暂的延迟之后,你将会看到 "Would You Like to Set up Networking" 的消息。
  4. 用 Tab 键选择 NO 选项,并按 Enter 键,就会跳过具体的网络配置工作。(本文后面将描述进入 Linux 系统后,如何使用 LinuxConf 设置网络。)

这时启动程序会正常继续,接着用 root 帐号登录到计算机上。(root 帐号在 Red Hat 系统安装的时候创建)

使用 LinuxConf 来配置以太网卡
可以使用名为 LinuxConf 的应用程序为局域网上的每个计算机配置或重新配置网卡。在 KDE 终端窗口的命令行或 GNOME 桌面环境下输入 linuxconf 就能够启动 LinuxConf 程序。另一个启动该程序的方法则是在主菜单按钮上选择 System,然后再选 LinuxConf。当 LinuxConf 程序启动后,可以根据下列步骤来配置网卡:

  1. 在 LinuxConf 的树结构中,选择 Config, Networking, Client Tasks, Basic Host Information。
  2. 在 Host name 域中输入你为此计算机分配的合法完整的主机名。
  3. 然后点击 Adaptor 1,将会显示你的网卡设置。
  4. 检查 Enabled 按钮是否被选中,从而确认网卡被正常连接。
  5. 你可以选择 Manual 选项,并继续执行 第 6 步 来手工分配 IP 地址。如果该局域网上有 DHCP 或 BootP 服务器,就可以相应地选择 DHCP 或 BootP 选项。局域网将为此计算机动态分配地址,可以直接跳转到 第 12 步
  6. 在 net device 处,填入 eth0。其中,eth0 表示这台计算机里面的第一块网卡。

"配置局域网" 开始所说的步骤,为所有计算机进行配置。如果希望用一个较节省时间的方法来配置所有计算机,可以直接用拷贝(copy)的方法来覆盖这些计算机上原来的 /etc/hosts 文件。

你可以将 /etc/hosts 文件拷贝到软盘或光盘(如果你拥有一个光盘刻录机)上,然后再从软盘或光盘上拷贝到待配置计算机的 /etc 目录下。在那台利用 LinuxConf 程序配置好的计算机上执行拷贝命令。只要在命令行上输入 cp /etc/hosts /mnt/floppy ,就可以将配置好的 /etc/hosts 文件拷贝到软盘上。

接着,将软盘插入局域网上其他计算机的软驱中,并在终端窗口上输入 cp /mnt/floppy hosts /etc/host 。此命令将 hosts 文件拷贝到局域网上这些计算机的 /etc 目录下。如果你使用光盘进行拷贝,只要将上述命令中的 /mnt/floppy / 替换成 /mnt/cdrom/ 便可。正如你所注意到的,/etc/hosts 文件其实是一个文本文件,分三栏列出了域名、主机名和 IP 地址。最后,确认本地计算机和它相应的 IP 地址在这个列表中出现了两次,而局域网上的其他计算机信息只列出一次。





回页首


测试局域网的第一步是,确认局域网中的计算机在启动之后能否与其他主机通讯。可以先在每台计算机上输入 reboot 命令。在 Linux 重新启动过程中,要仔细观看屏幕上滚动的测试信息。注意寻找下列信息:

Setting hostname:
Bringing up Interface lo: or
Bringing up interface eth0 or

Setting hostname 这一项将显示你分配给这台计算机的主机名。而 lo 和 eth0 项的后面若显示 [OK],就表示检测成功。

可以使用 ping 命令来判断计算机能否与其他计算机通讯。在当前主机上打开一个终端窗口,并输入命令 ping 或 ping 。其中, 是你分配给这个计算机的 IP 地址和主机名。需要注意的是,为了让 ping 命令正确工作,就必须输入 IP 地址或者主机名作为参数。

如果你已经正确配置了 DNS nameserver 规范,那么 ping 命令就会将 hostname 这个主机名映射成相应的 IP 地址。否则,只好在 ping 命令后面给出确切 IP 地址来测试,也就意味着现在你要拥有该局域网上所有计算机的 IP 地址列表。ping 命令通过局域网将消息发送到目的 IP 地址所表示的计算机。如果这台计算机能够与其他主机”交谈“或通讯,就可以看到一些消息或包(包括信息的字节数)。这些包应该象下面这样:


64 bytes from 192.168.1.x : icmp_seq=0 ttl=255 time=0.8ms
64 bytes from 192.168.1.x : icmp_seq=0 ttl=255 time=0.8ms
64 bytes from 192.168.1.x : icmp_seq=0 ttl=255 time=0.8ms

注意到 ”192.168.1" 代表的是该主机所属于的网络,而 x 则表示试图要 ping 的主机号码(例如 Oracle),这两部分组成了一个完整的 IP 地址。ping 命令不会自动停止,你可以按 Ctrl+C 来终止它,就可以看到这次 ping 测试的基本信息:


--- hostname.yourcompanyname.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 0.3/0.4/0.8 ms

如果 packet loss 信息为 0%,就表示测试成功了。但倘若 ping 命令的结果看起来象下面这样,局域网可能还存在一些问题:


From hostname.comanyname.com (192.168.1.1): Destination Host Unreachable

这意味着两个计算机根本不能够通讯。出现不能通讯的情况时,可以参考下一部分的 局域网故障排除 。否则,若能成功地 ping 到局域网中其他所有机器,就说明局域网的基本通讯功能是完好的。此时局域网已基本组建好,你可以随心所欲地安装其他网络设备。





回页首


如果你不能够 ping 到局域网中的另外一台主机,可以按照下面的方法寻找问题的根源。首先,用 halt 命令关掉局域网上所有的计算机。在所有计算机的命令行上输入 halt 。关掉所有计算机的目的在于,可以在再启动这些计算机的时候观察到启动程序的反馈信息。

检查所有计算机之间的网线,确信所有的 RJ45 接口都被正确连接。在确保所有网线正确安全连接之后,逐个启动局域网上的计算机,并观察启动过程中的下列响应信息:


Setting hostname: hostname.networkname [OK]

Red Hat Linux 的启动过程中,你可以在 LILO 启动提示符后面输入 I ,进入交互的启动模式,从而更清楚地查看反馈信息。首先检查分配给这台计算机的主机名和网络名是否拼写正确。如果不属于拼写错误的情况,就需要回到 LinuxConf 的 Basic Host Information 部分。在交互模式下,你会被提示是否启动若干服务。对于这些提示问题都回答 Yes,并集中注意力观察不同测试的结果。如果 Kudzu 程序检测到一块网卡,这就意味着在前面过程中没有正确配置这块网卡。继续运行 Kudzu 来配置这块网卡。当你被提示是否要配置网络时,选择 "Yes" 并为这台计算机输入正确的 IP 地址和其他相关信息。

另一个需要仔细检查的重要内容为:


Bringing up interface eth0 [OK]

这一行显示网卡是否正确工作。如果这个测试失败,你就需要用 LinuxDonf 来检查所有网络设置,从而确保网卡被正确配置。如果网络设置是正确的,则可能网卡本身有问题。为了验证这一点,可以咨询网卡的生产商或一个计算机专家,来判断该网卡是否有缺陷。如果是网卡问题,则可以安装新网卡并重复先前的故障排除过程。





回页首


即使用户几乎没有关于局域网的背景知识,只要仔细理解并执行了上述的步骤,用 Red Hat Linux 系统来组建局域网是一件相对简单直接的过程。此外,在互联网上可以找到大量资料,它们覆盖了本文所讨论的内容并提供了更为详尽的信息。在常用的搜索引擎中,输入一些关键词(比如 LANs,局域网,configuring LANs, 局域网配置,Linux network configuration, Linux 网络配置和 TCP/IP 等),你就会惊讶于互联网上关于这方面的信息是如此之多。祝你好运!





回页首


  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文.

  • 使用一个搜索引擎来查找互联网上的官方域名站点并为你的公司和私人站点注册一个唯一的域名。它还提供机会让你创建一个属于自己的站点,甚至会帮助你建立站点。你可以在预览该站点后才决定是否购买。此外还可以查看到那些标志为 "for sale" 的已注册域名列表。Network solutions 会为你所用的 id 提供全球的域名注册和管理,在大约 50 个国家里为你在线注册。

  • 也使用搜索引擎来检索互联网上可获得官方域名的站点。此外,这个站点还拥有商标搜索引擎,商业资源,社团服务,提供网站空间,e-mail 服务等多项内容。该站点将向你展示注册官方域名时的六个步骤。

  • Special Edition Using Red Hat Linux, Alan Simpson 与 John Ray 著(Que, 2000)。这本书帮助新用户学习 Linux。它让所有的计算机用户 ―― 包括那些没有 UNIX 系统管理员和网络管理员经验的用户 ―― 掌握关于 Linux 的知识和技巧,让他们无论是在家,小办公室,中等规模公司,还是在大企业里,都能够将 Linux 的优点最大限度地发挥出来。

  • Local & Metropolitan Area Networks, 第五版, William Stallings 著(Prentice-Hall, Inc., 1997)。这本书主要阐述局域网的技术、体系结构、性能、互联网工作、以及网络管理等内容。

  • The Official Red Hat Linux Installation Guide (Red Hat Software Inc, 1999) 是围绕如何引导用户简单快捷地安装 Red Hat Linux 而组织地。该书包括了 Red Hat Linux 6.0 中的新功能,开始安装 Red Hat Linux 系统前的准备工作,以及安装过程的详细说明。

  • 访问 网站,可以获得关于该公司的信息,以及相关文档,对最新最好的 Red Hat Linux 操作系统的在线技术支持,源码,以及 Red Hat Software Inc 提供的信息。




回页首



Darrick Adison 是 ASC Technologies 公司的资深软件工程师和顾问。从 1993 年开始,他便从事客户软件的设计和开发工作。在不同的商业政治领域,设计与开发过数据库应用程序,互联网应用程序(TCP/IP 客户端/服务端),GUI 应用程序,以及嵌入式系统程序。目前他已获得了 Johns Hopkins University 的计算机科学学士学位,并且即将取得计算机科学通讯方面的硕士学位。你可以在 与 Darrick 联系。他欢迎你的评论与问题。

阅读(1009) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~