本文介绍如何将多台运行 Red Hat Linux 的计算机组建成本地局域网(Local Area Network, LAN)。首先阐述一些基础知识,其中包括 TCP/IP (Transmission Control Protocol/Internet protocol 互联网传输控制协议)的概述,以及局域网中 IP 地址的分配。其次介绍局域网的硬件,以及如何在 Red Hat Linux 操作系统上使用 LinuxConf 进行局域网配置。最后,本文将引导你对局域网进行测试和故障排除。<!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
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.255 | 255.0.0.0 | 1 A 类网 | 16,777,216 |
172.16.0.0 - 172.31.255.255 | 255.255.0.0 | 16 B 类网 | 65,536 |
192.168.0.0 - 192.168.255.255 | 255.255.255.0 | 256 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 之间。
Table 2. 拥有少于 127 台主机的局域网的 IP 地址分配
IP 地址 | 例子 | 同/异 |
网络地址 | 192.168.1.0 | 所有主机都相同 |
域名 | www.yourcompanyname.com | 所有主机都相同 |
广播地址 | 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" 配置步骤如下:
这时启动程序会正常继续,接着用 root 帐号登录到计算机上。(root 帐号在 Red Hat 系统安装的时候创建)
使用 LinuxConf 来配置以太网卡
可以使用名为 LinuxConf 的应用程序为局域网上的每个计算机配置或重新配置网卡。在 KDE 终端窗口的命令行或 GNOME 桌面环境下输入 linuxconf
就能够启动 LinuxConf 程序。另一个启动该程序的方法则是在主菜单按钮上选择 System,然后再选 LinuxConf。当 LinuxConf 程序启动后,可以根据下列步骤来配置网卡:
Nameserver 规范
组建局域网的另一重要步骤是配置 Nameserver 规范。当计算机的名字给出之后,linux 根据这个规范来查找该计算机的 IP 地址。Red Hat Linux 系统有两种方法来将主机名映射成 IP 地址。一种是通过域名服务器(Domain Name Services,DNS),另一种则是通过 /etc/hosts 文件。/etc 目录是计算机中大部分系统配置文件存放的地方。输入 cd /etc
,将当前目录切换到 /etc 就可以找到 hosts 文件。然后可以根据下列步骤来将主机名映射成 IP 地址:
Hostname search path
给出了主机名之后,Red Hat Linux 系统可以利用 hostname search path 来搜索其对应的 IP 地址。根据下列步骤配置 hostname search path,就可以让本地文件 (/etc/hosts) 来查找本地主机名,并让 ISP 域名服务器提供网络域名服务:
设置 /etc/hosts
Red Hat Linux 操作系统需要一些方法来根据局域网中每台计算机的主机名来寻找相应 IP 地址。前面曾提到过域名服务器(DNS)是一种将主机名映射到 IP 地址的方法。在 DNS 配置时,主机名和 IP 地址应该已经被添加到一个已存在的 nameserver 上。可以咨询你的本地 ISP 提供商,来获得这些 IP 地址。另一方面,如果小规模局域网中有一个集中的 nameserver,则关于该局域网商每个计算机都有一个配置文件,记录该计算机的主机名,IP 地址和其他的别名。这个配置过程包括编辑 /etc/host 中的一个文本文件。你必须在局域网的每台计算机上,执行下列步骤配置 /etc/hosts 文件:
当你为所有的计算机执行了以上的步骤 1-7 之后,LinuxConf 中的 /etc/hosts 选项卡将列出局域网中所有计算机的信息。其中,本地主机名被显示成 localhost。最后你可以按照下列步骤,保存所做的修改配置并退出 LinuxConf 程序:
重复为所有主机配置
现在你已经配置好局域网中的一台计算机,还需要重复从
你可以将 /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: |
<hostname you assigned to this computer> |
Bringing up Interface lo: |
<OK> or <FAILED> |
Bringing up interface eth0 |
<OK> or <FAILED> |
Setting hostname 这一项将显示你分配给这台计算机的主机名。而 lo 和 eth0 项的后面若显示 [OK],就表示检测成功。
可以使用 ping 命令来判断计算机能否与其他计算机通讯。在当前主机上打开一个终端窗口,并输入命令 ping <IP address> 或 ping <hostname>
。其中,<IP address> 或 <hostname> 是你分配给这个计算机的 IP 地址和主机名。需要注意的是,为了让 ping 命令正确工作,就必须输入 IP 地址或者主机名作为参数。
如果你已经正确配置了 DNS nameserver 规范,那么 ping <hostname>
命令就会将 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 等),你就会惊讶于互联网上关于这方面的信息是如此之多。祝你好运!