Linux 版 (精华区)

发信人: netiscpu (说不如做), 信区: Linux
标  题: Linux安装指南,第3部分
发信站: 哈工大紫丁香 (Tue May 18 08:01:20 1999), 转信

《Linux公报》……让Linux更富魅力!

---------------------------------------------------------------------------

-----

Linux 安装入门,第三部分

By Ron Jenkins    翻译:gaia

第三部分:网络及拨号上网的设置

    好,现在我们将开始这个系列的第三部分,设置基本的网络功能,并把你的Linux和世

界连接在一起.如同本系列的每一部分,不同发行套件要求执行的操作不尽相同.和以前

一样, 我会在必要时介绍它们之间的差异. 在这一部分里,我将介绍如下内容:

网络基础 

设置网络前的准备工作 

设置回送(loopback)设备 

基本网络设置 

连接你的ISP 

设置在拨号连接中使用的域名服务 

设置在拨号连接中使用的Sendmail 

测试并诊断你的基本网络设置和拨号连接 

如果所有办法都失败了,这里有补救办法 

傻瓜上网技巧 

更多的信息资源 

关于作者 

网络基础

    想必你会对诸如"Internet的发展历史"之类的琐屑细节感到乏味,不过要是你能一

般性地了解网络及TCP/IP,就会在使用网络时更加得心应手. 从根本上说,网络至少需要

三样东西才能工作: 

网络接口,进出计算机的数据包要通过它 

某种形式的物理连接,用于在不同地点之间传送数据 

最后,要有双方都同意的传输数据的格式和方法,通常叫协议 

    就像只说法语的人和只说英语的人之间很难交流一样(不管他们用多大声音或说的

多慢),不同的网络如果没有共同的语言即协议,也不能相互通讯.     粗略地说,在Int

ernet世界,这种共同语言就是TCP/IP. 

    TCP/IP基于一种数字地址,叫IP地址.我敢说你们都见过像xxx.xxx.xxx.xxx之类的

东西, 其中x代表某个数值.一个实例就是204.252.102.2,我们当地ISP的域名服务器(D

NS)的地址. 

    "且慢,我可没输入这样的一堆东西,而是像www.foobar.com这样的地址,照样工作得

很棒.那一堆数字是怎么回事? 

    哈,机灵鬼.这正是DNS在施展身手呢. 

    DNS是通过一些互连的服务器组成的系统,它的运作方式就像一个倒放的金字塔一样



    塔尖是从你当地的DNS开始的,它只能识别本地网段上的机器.至于它不能确定的名

字, 它知道如何告诉更 高级别的某台机器.就这样直到金字塔最宽的地方,那些机器储

存了所有的主域即"root"域的信息,如 .com, .net, .edu, .org等等.(这里我可有点糊

涂了.我看的一些书里讲的DNS运作大致是这样:客户机的resovler例程发送请求数据报

给本地DNS服务器,这没错;本地DNS服务器要么询问附近的其它DNS服务器,从CACHE 里得

到相应信息;要么向root域的DNS服务器发送请求,root域服务器返回要解析的主机名中

相应的top域(.com,.edu,.org...)DNS服务器的地址,top域服务器再返 回下一级DNS服

务器的IP地址...逐步接近所请求的域名,直到查到那个主机的信息.--译者注) DNS就是

这样一个巨大的,不停变化的数据库,储存了连到Internet上的所有机器的信息,并且24

小时不停地组织,校验,排序. 

    简单的说,在DNS服务器里面,本地网络内的任何机器都在"ZONE FILES"中有两项: 

一个IP地址和一个主机名.在本文中,我们假设你的主机名叫tester,域名叫foobar.net

. (你需要从你的ISP那里得到相应信息并代替这些,详见后文.)这叫地址解析,它解释了

"www" 之类的字串是如何被处理的. 

    任何时候你送出一个请求,如果你请求的主机名在本地网络上,这些精干的小家伙把

它翻译成IP地址;否则,就把它往上级服务器送.明白了吧? 

    就本文而言,我们作如下工作来设置你的三个网络要素: 

设置一个叫回送设备(loopback adapter)的网络接口. 

物理连接就是你的电话线 

使用的协议是TCP/IP 

设置网络前的准备工作 

如果你还没有ISP,你要了解什么信息 

如果你已经有ISP,你需要了解什么信息 

无论以上哪种情况你都需要了解的信息 

如果你还没有ISP,你要了解什么信息 

以下是你选择ISP时要考虑的几件事: 

    我把你要考虑的事情用问题的形式写出来,必要时加上解释.如果你想尽可能提高你

的上网效率,了解这些是非常重要的. 

    首先,你在和候选的ISP联系时会被推销员缠住.要求与技术人员谈话,或者电话里协

商. 否则,为了引你上钩推销员会吹得天花乱坠.技术人员则能有效地回答以下问题.如

果推销员或技术人员拒绝谈这些问题,或者含糊其词,谢谢他们的时间并且转身走人.这

并不是你想要的ISP.所以,不要急于作决定,我们这就开始: 

你们提供什么类型的接入服务?无限制的还是按量计费(metered(即*plan)?无限制的好

.它总能保持稳定的速率.而metered和*plans不好,这些计划多半是每月有一些"免费" 

上网时间,超过基数就每分钟或每小时加收费用.这很恶劣,把信息高速公路变成了收费

公路. 用我的帐号能使用UNIX shell吗?这告诉你两件事--如果回答为"是",那么你可能

连在一个UNIX机上.很好.如果不是,那就可能是NT系统,或者这家ISP不打算提供shell访

问. 这很糟糕.如果你有shell,并可以telnet 进你的帐号,你就可以干很多绝妙的事情

,见后文"傻瓜上网技巧". 你们和Internet的主干连接是什么类型?什么速度?很多小IS

P只有T-1型(用户带 宽1.534MBPS),甚至更糟,只有所谓Fractional T-1型,范围从64KB

PS一直到1.5M, 以64K为增量.然后他们通过终端服务器让像你一样的许多用户共用单个

网络出口.更好的是一种叫T-3的连接,它以45MBPS的速率运行,应该作为你能接受的最低

标准.如果候选的ISP连T-3连接都没有,找一家够标准的. 你们的用户/modem比例有多大

?这其实是问"相对于支持的用户数,你们有多少物理连接设备?"如今,大于4:1是不能接

受的,即每个modem支持4个用户. 至于你们的主干连接,你们有几条?通过几个提供者?好

的ISP应至少有一条T-3线路,连接到一家主干线路提供者,和多条(至少两条)T-1线路,每

条分别与一个主干线路提供者连接.设想一下, 如果你只有一个ISP,一旦它出了毛病,你

要等他们修好才能上网;而如果你分别从两个ISP得到两个帐号,一个不行了你可以换另

一个.对ISP们来说也是这个道理. 他们用什么机器?什么操作系统?如果回答是NT,劝您

还是换一家吧.特别要问他们是否用 UNIX主机,是否能用你的帐号使用shell,telnet,f

tp.如果是否定回答,再找几家看看. 你们使用什么用户认证协议?可接受的协议是clea

r-text,PAP,CHAP.不能接受的是 RADIUS, KERBEROS(可以考虑,但你可能需要帮助)GUA

RDIAN,或MS-CHAP.这些协议引起不必要的麻烦,让设置更复杂.除非你为NSA之类的机构

工作,否则并不需要这些. 再特别问一下给你的个人帐号分配多大的存储空间和Web空间

.至少应该有10M,越多越好. 最后,问一下是否支持一般的UNIX客户程序,特别是Linux客

户程序.如果他们不支持,就可能是NT机,不予考虑. 如果你已经有ISP,你需要了解什么

信息     如果你能成功连接到你的ISP,至少在基本功能的层次上你已经达到要求了.但

是,如果你只是用Windows系统连接过,你不一定能顺利地用Linux连接.有关NT的问题,看

看下面的 "注意"和"特别注意". 

       无论以上哪种情况你都需要了解的信息 

    在你动手之前,你需要从你的ISP那里获得以下信息: 

拨号上网的电话号码 

你的帐号的用户名及口令 

你的ISP使用哪种认证措施.可能的选择有 Clear Text,PAP,CHAP 

你的ISP使用静态还是动态IP地址分配.静态地址分配意味着你每次得到同样的IP地址(

这样对你更有利,)而动态地址分配每次从一个预留出来的IP集里面给你指定一个不同的

IP地址 (这样对他们有利.) 在你的ISP的网段上缺省网关的IP地址 

他们的初级和次级DNS服务器的IP地址 

你的ISP的技术支持电话,值守时间 

 

        注意:每个ISP有自己的偏好,有自己的一套步骤来获得接入服务.我在这篇文章

里所讲的仅仅是让你能与ISP建立物理连接并登录.某些服务或许需要额外的步骤才能实

现其全部功能.         特别注意:很多ISP不明智地(在我看来)依赖NT系统提供远程访

问.这给你设置系统增加了额外的麻烦,很多是专一于Microsoft的设置步骤.如果你的I

SP属于这一类,想办法在你设置时与技术人员联系.假如他们不能或不愿支持UNIX或Lin

ux系统,换一家愿意的.这样做是划算的,因为可以简化你的设置;而且,你的帐号拥有sh

ell,你就可以做所有后面"傻瓜上网技巧" 里介绍的绝妙的事情 即便如此,如果你的IS

P不愿意或不能支持你的Linux系统,看看我的"补救办法"这一节以获得一些解决办法. 

  

设置回送(loopback)设备

    回送设备对于网络连接正常工作是必需的.简单地说,任何一个网络连接,或按UNIX

 世界的话叫"接口",都必须"绑缚"在一个物理的,同时也是逻辑的接口设备上.回送设备

的功能的实现并不需要像网络接口卡即(NIC)那样的真正的接口设备.     我们用回送

设备一方面作测试用,另一方面将其"绑缚"在与你的ISP之间的网络连接上, 这样把你的

modem作为网络接口. 

Slackware 3.5: 

    在安装时应该为你做了这些工作.如果没有,从命令行敲入netcfg <return> , 按照

提示输入127.0.0.1作为你的网络接口. 

RedHat 5.1: 

    同样,在安装过程中也涉及到这一点.如果没有,启动X并选择 "Control Panel/Net

work Configuration",然后在对话框下部,选择Add并按照提示进行. 

基本网络设置 

Slackware 3.5: 

    完成基本网络设置可通过直接编辑设置文件,使用netconfig工具,或混合使用这两

种方法. 

RedHat 5.1: 

    利用前面提到的"Control Panel/Network Configuration",你可以完成大多数网络

设置.较新的RedHat 系统也可以使用linuxconf工具. 

    基本上,你只需要找到 /etc/hosts,为你的机器选择一个主机名和域名.我想一般 

Slackware缺省用的是darkstar,RedHat 用localhost.重要的是,不要用Internet上已经

有了的主机名.把你的ISP的域名作为你的域名.所以,如果你的ISP是psi.net,你的机器

就可以是: 

darkstar.psi.net 

    在最简单的情况下,如果你没有与一个LAN连接,而只是拨号到你的ISP,你的/etc/h

osts 就只需要包括loopback设备这一项. 

连接你的ISP 

Slackware 3.5: 

    如果你按照我前面说的那样找到合适的ISP,和他们的技术人员取得联系,让他们帮

你完成他们所要求的设置步骤. 

    如果没有,也可以继续读下去以便有一个大致的印象 

    在安装时,应该已经建立了到/dev/modem的符号连接,如果没有,就做一个.(ln -s 

/dev/cuaX(或/dev/ttySX,总之是连接了你的modem的那个串行设备) /dev/modem) 

    一开始,你必须用minicom手工连接到你的ISP,看看你的ISP有那些要求: 

minicom <return> 

    在它抱怨完没有作为root运行之后,按ALT+Z进入设置菜单,选择合适的设置选项 ,

干完这些后,按照提示把你的设置保存为缺省设置并退出. 

    现在,你可以在终端窗口里看见"OK".如果没有,回过头检查你的设置. 

现在,拨你的ISP的电话号码: 

ATDT你的ISP的号码 

比如, 

ATDT3659968 <return> 

    如果一切顺利,你会看到一个login提示符.键入ISP分配给你的用户名,按回车.然后

你被提示输入口令.输入口令. 

    这时,如果不出差错,你的屏幕上将出现一堆乱字符.这是好兆头,是另一端的ppp守

护进程正在试图和你的机器联系. 

    为了和它交谈,我们必须关闭minicom而不能重置(reset)modem(按ALT+Z进入菜单,

 再按Q).下一步我们要启动我们自己的ppp守护进程.我的键盘输入很差,所以做了个小

脚本程序启动pppd连接: 

vi unicom.connect <return> 

#!/bin/sh 

pppd /dev/modem (我更喜欢写 /dev/cua1 即 COM2,) crtscts defaultroute 

  

好,我们保存并退出这个文件: 

按ESC键进入命令模式,按Shift+:,然后是wq <return> 写入文件并退出 . 

现在,咱们用以下命令把这个文件变成可执行的(类似DOS里的.EXE文件): 

chmod +x 文件名 (在这个例子中是unicom.connect.) 

OK!一切就绪.从某些方面讲,在我们做这些工作时minicom本该去休息.如果没有,按ALT

-Z, 这次要重置modem(在菜单里选X). 

到此为止,我们做了以下事情: 

启动minicom 

拨ISP的号码 

在登录提示符下键入用户名 

按照提示键入口令 

一旦乱字符出现,按下ALT-Z ,然后是q,退出minicom而不会重置modem 

当shell提示符重新出现时,运行你的连线脚本.如上面写的unicom.connect 

输入ifconfig .现在应该能看见两项,一个是loopback设备,另一个是ppp0. 

跳起来庆贺吧!你已经连到Internet上了! 

RedHat 5.1: 

    如果你按照我前面说的那样找到合适的ISP,和他们的技术人员取得联系,让他们帮

你完成他们所要求的设置步骤. 

    如果没有,也可以继续读下去以便有一个大致的印象: 

    首先,确认你的modem连在哪一个接口上.这项信息对你很有用.你的/dev/modem设备

应该是一个符号连接,它指向你的modem所连接的那个串口的设备文件.如果没有这个符

号连接, 用Control Panel里的modemtool来建立一个.你还可以在弹出的对话框里直接

输入这个端口.详见下文. 

    一般来说,似乎应使用符号连接/dev/modem,所以我也不打算解释为什么我不用.但

如果你碰到麻烦,你应该知道它代表哪一个端口.即: 

COM 1: /dev/cua0; or /dev/ttyS0 

COM2: /dev/cua1; or /dev/ttyS1 

... 

等等. 

    对于RedHat用户来说,如果不需要什么特殊要求的设置,下面要做的就相当简单了.

选择 Control Panel/Network Configuration/Interfaces,点击Add.当提示选择 Inte

rface Type时,选择PPP.下一步,输入ISP的电话号码,登录名,口令. 

    如果你的modem需要一些特殊设置,从对话框里选择Customize.完成设置后,选save

 然后是quit.你可以选择两种方法激活这个网络接口,第一种是点击Network Configur

ator 里的ppp0项,然后点Active;在较新的系统中,可以使用Usernet工具.如果一切顺利

, 你的modem会发出一阵尖叫,然后登录,然后你就可以在网上尽情畅游了!   

设置在拨号连接中使用的域名服务

    这极其容易.我们只要告诉Linux让它使用ISP的DNS来解析主机名.首先,如果你正运

行 named(DNS守护进程),或BIND(一组使named运行的程序),检查/etc/host.conf,确认

里面包括了下面一行: order hosts, bind 

    现在,我们告诉resovler(一个神奇小家伙,不断地发送机器的查询请求)如何查询外

面的世界,并和世界对话. 

    从终端窗口或命令行,编辑/etc/resolv.conf,按照以下格式加上你的ISP的名字服

务器: 

nameserver <space> 名字服务器的IP地址 

比如: 

nameserver 196.356.2.4 

nameserver 196.356.2.5 

    注意:使用DNS服务器是按照它们在文件中出现的次序进行.所以,把你要优先查询的

DNS 服务器放在第一项,其余的放在后面. 

    在设置过程中,设置程序可能向这个文件写入了其它信息.如果是这样,在这些信息

行前面加一个"#"号将它们注释掉. 

    为了防止收到太多讨论这个话题的e-mail,我要说,我已经注意到在这个文件里你有

很多选项可以设置,而且你可以有做很多DNS方面的工作来提高resovler的性能,如设置

一个 caching-only服务器.这些将在以后的文章里讨论,所以耐心一点. 

设置在拨号连接中使用的Sendmail 

设置Sendmail,和设置DNS一样,本身就是高难技术.不过,以下是一些一般性建议: 

cd /etc 

编辑sendmail.cf,找到以下几行: 

# "Smart" relay host (may be null) 

DSyour.isp.mailmachine 

接着找这几行: 

#who do I send unqualified names to (null means deliver locally) 

DRyour.isp.mailmachine 

#who gets all local email traffic ($R has precedence for unqualified names)

 

DHyour.isp.mailmachine 

最后,你或许想使用下面这行--读过文档以后再决定 

#who do I masquerade as (null for no masquerading) (see also $=M) 

DMyour.isp.domain.name 

测试并诊断你的基本网络设置和拨号连接 

    就连接状况而言,你要么连上了,要么没有,二者必居其一.查看一下/var/log/mess

ages, 或许能有一些线索指出什么地方出毛病了. 

如果你连上网却不能干某些事,原因可就五花八门了.不过以下是诊断问题的一些一般性

建议: 

你能ping通别的机器的IP地址吗?如果是,接着往下看.否则,你的连接有问题或设置错误

. 这时候该用上ifconfig 和netstat -r 了. 你能ping通别的机器的主机名吗?如果是

,接着往下看.否则,你的域名解析有问题.检查一下你的/etc/resolv.con文件,确认里面

只有ISP的DNS服务器.再检查/etc/hosts文件,确认里面有localhost(使用loopback接口

)这一项. 是否有时候你能连到网上,但在数据传输阻塞时会掉线,或者你的线路没有任

何反应?这可能是你的ISP运行了自动中断程序,象一个连环杀手,以防止因用户modem不

正常退出而导致的线路长时间被占用.解决办法是运行"ping-forever"或keepalive之类

的脚本程序,每隔一段时间向服务器发送一次数据包以对付对方的定时程序,尽管一些I

SP会对此不满. 如果所有办法都不行,这里有补救办法 

    如果用Sendmail收e-mail或news有问题,可以用Netscape从ISP的服务器上取回你的

邮件. Netscape自己能处理POP3,假如你在对话框里输入了正确的信息,就不需要其它的

程序. 

傻瓜上网技巧 

访问速度慢的站点是不是很苦恼?下载大文件时常常断线吧?下面是我以前学到的一个小

窍门.如果你是按照我前面的建议做的,你应该已经有了一个完全合乎我们的标准的ISP

,至少用T-3连到Internet, 并且你有shell和telnet帐号.我的秘诀就是--使用T-3!如果

你telnet或rsh到你的ISP 给你的帐号,你可以在下载时利用他们的网络的全部能力.当

然了,给你的帐号分配的空间决定了你一次能下载多少数据(一般是10-20M).这样做无疑

增加了额外的步骤,你不得不回过头来把文件下载或rcp到你的机器上.但至少用这个办

法你可以得到用常规办法很难得到的东西.既然TTY连线只占用2400-9600 baut,当远程

会话在进行时,你可以在本地机器上干别的事情. 在系统引导时启动拨号连接--在RedH

at中,用Control Panel/Networking Configuration 可以实现这种设置.至于Slackwar

e,给我发e-mail,我正在传授自己潜心琢磨出的方法, 还写了一个能自动实现这种功能

的程序. 中止PPP连接--有好几种办法,要看你使用什么系统和当初是怎么建立连接的.

在RedHat系统中,你可以用Network Configurator或Usernet关闭PPP连接.在Slackware

里,甚至在RedHat下,如果X图形界面工具不起作用了,以下办法永远管用: ps uax|more

 按ENTER滚动屏幕,直到发现正在运行的ppp守护进程.记住这个进程的PID,使用如下命

令: kill -9 进程PID 

下月话题:把你的Linux接到一个网络上,并且把你的机器作为网络中其它机器的Intern

et网关! 更多的信息资源: 

Linux文档计划(LDP): 

http://sunsite.unc.edu/LDP/ 

连网的一般性指导: 

Network Administrator's Guide, System Administrator's Guide, 和 NET-3 HOW-T



The Linux User's Guide 

DNS HOW-TO 

ISP Hookup HOW-TO 

另外,从以下站点可以找到特定OS的信息: 

Slackware 3.5: 

http://www.cdrom.com/ 

RedHat 5.1: 

http://www.redhat.com/ 

最后,查阅comp.os.linux* 新闻组,或者给我发 e-mail. 

---------------------------------------------------------------------------

-----

以前的《Linux安装指南》

Linux Installation Primer #1, 1997 九月 

Linux Installation Primer #2, 1997 十月 

---------------------------------------------------------------------------

-----

版权所有 (C) 1998,gaia

出版于第34期《Linux公报》1998年11月 中文版第一期


--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: bin@mtlab.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:208.194毫秒