打印

linuxT 管理白皮书,版主太那个了...三十一次,下载死我了

linuxT 管理白皮书,版主太那个了...三十一次,下载死我了

打了包..大家下喽

附件

linux白皮书.part1.rar (1.39 MB)

2007-9-13 13:57, 下载次数: 4

linux白皮书.part2.rar (1.39 MB)

2007-9-13 13:57, 下载次数: 2

TOP

第三第四部分

附件

linux白皮书.part3.rar (1.39 MB)

2007-9-13 13:58, 下载次数: 2

linux白皮书.part4.rar (1.39 MB)

2007-9-13 13:58, 下载次数: 2

TOP

最后一段

附件

linux白皮书.part5.rar (667.52 KB)

2007-9-13 13:58, 下载次数: 2

TOP

请放在同一目录下解压

TOP

所以下载最好找到别的站点.
itpub下载不是很方便.

TOP

打包的好书

linuxT 管理白皮书太好了,谢谢喽!

TOP

TCP/IP网络

第2章TCP/IP网络
大家在把自己的机器连到一个T C P / I P网络上时,肯定会碰到许多问题,比如如何处理I P
地址和主机名,有时甚至还会碰到路由问题。本章将为大家提供相关背景,帮助大家尽快了
解安装时需要什么,下一章将为大家介绍几个处理这些问题的工具。
2.1 网络接口
先撇开联网环境中的设备可能不同这一情况。T C P / I P定义了一个抽象接口,所有对设备
的访问都将通过这一接口。该接口为所有类型的硬件设备提供了同一个操作集,基本上用于
包的收发。
针对准备用于联网的各个外设,内核中都必须有相应的接口。比如,以太网接口即称为
e t h 0和e t h 1,S L I P接口称为s l 0、s l l,以此类推。在打算针对内核对特定的物理设备命名时,
出于配置上的需要,可使用这些接口名。除此以外,它们没有别的用途。
如果要在T C P / I P联网中使用接口,必须为它(它们)分配I P地址,藉此向网络中的其他
机器标识自己。这个地址不同于上面所提的接口名;打个比喻说,如果把接口比作门,那么,
其I P地址就是钉在这扇门上的门牌号。
当然,还需要设立别的设备参数;其中之一便是特定的硬件能够处理的数据报的最大字
节数,也叫作“最大传输单元”或M T U。其他属性,我们将在后续章节中讨论。
2.2 IP地址
正如前面提到的那样, I P联网协议能够识别的地址是一个3 2位的编号。在网络环境中,
为每台机器分配的编号必须是独一无二的。如果你运行的是局域网,而且没有与其他网络进
行T C P / I P通信传输,就可以按自己的喜好,为各台机器分配编号。但是,如果运行的是面向
因特网的网站,其编号必须由I C A N N(w w w. i c a n n . o rg)分配。
为便于理解,I P地址由四个8位编号(叫做8位元)组成。比如,q u a r k . p h y s i c s . g r o u c h o . e d u有
一个I P地址是0 x 9 5 4 C 0 C 0 4,该地址表示为1 4 9 . 7 6 . 1 2 . 4。这一格式就是人们常说的点分四段
式。
采用点分四段式的另一个原因是I P地址由两大部分组成:网络部分(即排在前面的8位元)
和主机部分(其余的)。根据网络的大小,主机编号可大可小。
为适应不同的需求,这里为大家列出了几类I P编址,它们定义I P地址的不同划分方式:
■ 范围在1 . 0 . 0 . 0到1 2 7 . 0 . 0 . 0之间的A类地址。这类地址的网络部分在第一个8位元内。A类
编址提供了一个2 4位的主机编号,也就是说,网络中的主机可以多达1 6 0万台。
■ 范围在1 2 8 . 0 . 0 . 0和1 9 1 . 2 5 5 . 0 . 0之间的B类地址。网络部分在前两个8位元中。可接纳
16 320个网络,而每个网络可接纳65 024台主机
■ 范围在1 9 2 . 0 . 0 . 0和2 2 3 . 2 5 5 . 2 5 5 . 0之间的C类地址,其网络部分在前三个8位元内。可接
纳近2 0 0万个网络, 2 5 4台主机。
■ D、E和F类地址的范围在2 2 4 . 0 . 0 . 0和2 5 4 . 0 . 0 . 0之间。这几类地址尚处于实验阶段,或者
是为将来的应用而保留的,不指定任何网络。
回头看看前一章的示例,我们会发现1 4 9 . 7 6 . 1 2 . 4(Q u a r k的I P地址)指的是B类网络
1 4 9 . 7 6 . 0 . 0中的1 2 . 4主机。
需要注意的是,有两个地址是保留地址,它们是:0 . 0 . 0 . 0和1 2 7 . 0 . 0 . 0。前者称为默认路由,
后者称为回送(l o o p b a c k)地址。默认路由和I P协议对数据报的路由方式有关,它主要用于简
化I P路由选择信息,详情参见下一小节。回送地址1 2 7 . 0 . 0 . 0是为本地主机的I P通信保留的。通
常, 1 2 7 . 0 . 0 . 1这个地址是分配给本地主机上的特殊接口的,也就是所谓的“回送接口”
(loopback interface)。回送接口就像一个封闭式的回路。任何自T C P或U D P传给该接口的I P包
都将被返回始发地,就像它们刚从某个网络返回一样。有了回送接口,就可以在单机主机上
开发和测试联网效果,利用网络软件了。这类情况并不罕见,比如,许多U U C P站点根本就没
有I P连接功能,但人们仍然想在这些站点上运行I N N新闻系统。
2.3 地址解析
现在,大家已经了解了I P地址的构成情况,可能还想进一步了解它们是如何用于以太网,
为不同主机定址的。毕竟,以太网协议按6位8位元编号(和I P地址完全没有关系)来识别主
机。
是的,我们需要一种机制,能把I P地址映射为以太网地址。这就是所谓的“地址解析协
议”(简称A R P)。事实上, A R P的使用并不局限于以太网,它还用于其他类型的网络,比如
“火腿无线电网”。A R P的基本思路源于此:必须在1 5 0个人当中寻找一个名为某某的人,大多
数人都会采用类似的办法—四处转,高声呼叫他的名字,因为对方听到叫声,肯定会答应。
A R P想找出与具体I P地址对应的以太网地址时,将利用“广播”这一以太网特性,这样
就能将一个数据报同步传递到网络中的各个角落。A R P发送的广播数据报中,包含一个I P地
址查询。每个收到广播数据报的主机都会将其中的I P地址和它自己的进行比较,如果相同,
就向发出查询的主机返回一个A R P应答。这样一来,发出查询的主机就可以从收到的应答中,
获悉对方的以太网地址。
当然,有些人可能觉得奇怪:全世界的以太网举不胜举,主机是怎样在如此庞大的体系
中找到自己的目标的呢?要解决这一困惑,还需要了解路由选择,有了路由选择,才能够在
网络中找到一台主机的物理位置。这是我们下一小节的主题。
关于A R P,我们还有话说。一旦主机知道了自己想要的以太网地址,它就会把该地址保
存在它自己的A R P缓冲区内,这样在下一次查询该地址时,它会直接向目标主机发送数据报。
但是,要想永久性地保留该地址信息是很不明智的;比如说,远程主机的以太网卡可能因为
技术上的原因已发生替换,所以你保留的A R P条目将毫无意义。因此,要执行另一次I P地址
查询,就应该时不时地丢弃A R P缓冲区内的条目。
有时,还有必要找出与具体以太网地址相关联的I P地址。比如说,想从网络上的一台服
务器启动无盘客户机这样的事,在局域网内是家常便饭。但是,无盘客户机事实上根本就没
有任何关于它自己的信息—除开它自己的以太网地址!所以,它能做的只能是广播一条消
息,请求根服务器将它的I P地址告诉它。这牵涉到另一个协议,名为“逆向地址解析协议”
(简称R A R P)。它和B O O T P协议一起,为网络上的无盘客户机的启动运行定义一个进程。
第2章TCP/IP网络15
下载
2.4 IP路由
2.4.1 IP网络
大家可能有这种经历;在写信给某人时,通常会在信封上写明收信人的确切地址,指定
国家、地区、省份,城市以及详细到几栋几号。然后,再把信投入邮箱,邮政服务将把信送
达目的地:先送到指定国家,再由那个国家的邮政服务将其分发到相应的省或地区。邮政服
务的层次结构非常清楚:不管在哪里寄信,本地的邮政主管都知道信件投递路径,并将进行
信件转发,并不注重信件在目标国内的投递方式(注意,邮件投递系统只注重完成任务,而
不管如何去完成任务)。
I P网络其实与邮件投递系统类似。整个因特网由无数个称为独立系统的网络构成。每个
这样的系统都会在各自的成员主机之间执行路由,所以投递数据报的任务实际上就是找出通
往目标主机所在网络的路径。也就是说,只要数据报被传到特定网络上的任何一台主机,怎
样到达最终的目标主机,则由这个特定网络自行负责。
2.4.2 子网
我们还可以从被分为网络部分和主机部分的I P地址中,看出I P网络的结构。默认情况下,
目标网络(即目标主机所处的网络)是从I P地址的网络部分衍生的。所以, I P网络编号相同
的主机应该处于同一个网络内,反之亦然。但一个独立系统中,往往包含不止一个I P网络。
由于一个网络可能由上百个小型网络集合而成,各小型网中还有诸如以太网的更小的物
理网络单元,所以,在这种网络内部提供类似于前面的方案是非常有意义的。这样,我们就
可以把I P网络分成若干个子网。
子网主要负责从自己所处的I P网络,把数据报投到特定范围内的I P地址。A、B或C类地
址的识别,是通过I P地址的网络部分来完成的。但是现在的网络编号被扩展到包含主机部分
的位数。这些被视作子网编号的位数就是所谓的子网掩码(或网络掩码)所赋予的。它同样
是一个3 2位的编号,用于为I P地址的网络编号指定位掩码。
Groucho Marx大学( G M U )校园网就是一个很好的范例。它采用的是B类地址,其网络编号
是1 4 9 . 7 6 . 0 0,所以其网络掩码是2 5 5 . 2 5 5 . 0 . 0。
从其内部结构来说,G M U大学校园网由若干个小型网组成,比如各个系的局域网。所以,
这个I P网络被分为2 5 4个子网, I P地址在1 4 9 . 7 6 . 1 . 0到1 4 9 . 7 6 . 2 5 4 . 0之间。举个例子来说,理论
物理系分配的I P地址是1 4 9 . 7 6 . 1 2 . 0。校园主干网的地址是1 4 9 . 7 6 . 1 . 0。这些子网共享同一个I P
编号,其中的第三个8位元是用来区分它们的。所以,它们的子网掩码将是2 5 5 . 2 5 5 . 2 5 5 . 0。
值得注意的是子网只是一个网络内部分区。子网是由网络拥有者(或管理员)一手炮制
的。通常情况下,子网主要用于反映现有的地址边界,用于各子网间的物理上(两个以太网
之间)、管理上(两个系之间)或地理上的边界。但是,这类结构不仅会影响整个网络的内部
行为,而且子网只能本地识别,其地址仍然被看成是标准的I P地址。
2.4.3 网关
子网不仅能带来结构上的好处,还时常用来反映硬件边界。具体物理网络上的主机,比
16 第一部分Linux 网络管理员指南
下载
第2章TCP/IP网络17
下载
如以太网,是非常受限的:它能够直接与之交谈的主机只能是本网络内的。要对其他的主机
进行访问,只有通过所谓的“网关”来进行。网关是同时连接两个或两个以上物理网络的主
机,被配置为执行网络间的包交换。
对I P网络来说,要想轻松识别主机是否在本地网络,不同的物理网络只能属于不同的I P
网络。比如,网络编号1 4 9 . 7 6 . 4 . 0是为数学系局域网上的主机保留的。在向Q u a r k发送一个数
据报时,E r d o s主机上的网络软件立即就能知道该数据报来自1 4 9 . 7 6 . 1 2 . 4这个I P地址,而且其
目标主机处于另一个物理网络上。因此,这个数据报只能通过一个网关(默认设置是S o p h u s)
抵达目的地。
S o p h u s本身连接了两个子网:数学系的局域网和校园主干网。它分别通过两个不同的接
口(e t h 0和f d d i 0)访问这两个子网。现在,我们为这个网关分配什么样的I P地址呢?应该根
据1 4 9 . 7 6 . 1 . 0子网进行分配,还是根据1 4 9 . 7 6 . 4 . 0子网进行分配?
答案是:两者都要。在提到数学系局域网上的主机时,就应该用1 4 9 . 7 6 . 4 . 1这个I P地址;
在提及校园主干网上的主机时,就应该用1 4 9 . 7 6 . 1 . 4这个地址。
所以,这个网关就有两个I P地址。这两个地址—还有其相应的网络掩码—都绑在接口
上(通过这个接口访问子网)。因此,接口和S o p h u s地址之间的对应关系就会像表2 - 1列出的
那样。
表2-1 接口和S o p h u s地址之间的对应关系
接口地址网络掩码
e t h 0 1 4 9 . 7 6 . 4 . 1 2 5 5 . 2 5 5 . 2 5 5 . 0
f d d i 0 1 4 9 . 7 6 . 1 . 4 2 5 5 . 2 5 5 . 2 5 5 . 0
l 0 1 2 7 . 0 . 0 . 1 2 5 5 . 0 . 0 . 0
最后一条说明的是回送接口l 0,我们在前面已经介绍过它。注意,随两个子网上的主机同
时出现的还有两个地址。
一般说来,把地址附于主机和把地址附于其接口之间有些细微差别,但我们可以忽略它
们之间的差别。对处于同一个网络的主机来说,比如E r d o s,一般能够很确切地指出主机的I P
地址是多少。比如说,这是一个以太网接口,它的I P地址是这样的。但是在提及网关时,其
间的区别则是不容忽视的,必须指明地址是附于主机上,还是附于其接口上。
2.5 路由表
接下来的重头戏是:把数据报投到远程网络时, I P协议是如何选择网关的。
在此之前,我们曾见过E r d o s网关的工作流程:它收到发向Q u a r k的数据报后,便对其目
标地址进行检查,并发现其目标主机不在本地网络内。所以,它把该数据报发给默认网关
S o p h u s,现在就看网关怎样运作了。S o p h u s识别出Q u a r k不在它直接连接的任何一个网络内,
所以,它就开始寻找另一个网关来接替它的工作。于是它选中了N i e l s,这是通往物理系局域
网的网关。如此一来, S o p h u s就需要更多的信息,把目标网络和一个适当的网关关联起用。
它采用的路由选择信息I P实际上就是一个表,把网络和准备抵达的网关链接起来。一般
说来,我们必须提供一个c a t c h - a l l条目(默认路由) ;它是一个与0 . 0 . 0 . 0网络关联在一起的网关。
发向未知网络的所有包都会通过这个默认路由得以发送。针对S o p h u s网关,它的路由表就像
表2 - 2一样:
18 第一部分Linux 网络管理员指南
下载
表2-2 Sophus的路由信息表
网络网关接口
对直接与S o p h u s连接的网络来说,通向它的路由不需要网关,所以显示的网关条目是“ -”。
路由表的建立方式较多。对小型局域网来说,在启动时间(参见第3章),利用r o u t e命令,
手工构建路由表并把它们投入I P网络,通常是最有效的。对于大型的网络,需要根据路由
d a e m o n,在运行时构建路由表并适时进行调整;路由信息运行于网络内的中心主机上,并在
其成员网络间实行路由信息交换,从而计算最佳路由。
根据网络的不同大小,可能会用上不同的路由协议。对独立系统(比如Groucho Marx校
园网)内的路由选择来说,将采用内部路由协议。最优秀的是R I P协议,即路由信息协议。它
是由B S D路由d a e m o n实施的。针对独立系统间的路由,则必须使用诸如E G P(外部网关协议)
或B G P(边界网关协议)之类的外部路由协议;这类协议(包括R I P)已经被用于康奈尔大学
的通道d a e m o n中。
度量值
基于R I P的动态路由信息将根据网关“跳”(h o p)数来选定抵达目标主机或网络的最佳路
由。也就是说,在抵达目标主机或网络之前,数据报必须经过的网关越少,其R I P级别就越高。
一个网关即为一个跳。超长路由将被视为不可用路由而被丢弃。
要想利用R I P来管理本地网络中的路由信息,必须在所有主机上运行g a t e d(通道)。在启
动时,通道将对所有激活的接口进行检查。如果通道发现激活接口不止一个(不包括回送接
口在内),就会假设主机正在进行不同网络间的包交换,从而主动地进行路由信息的交换和广
播。如若不然,它就会被动地接收R I P更新信息,更新本地路由表中的信息。
在广播本地路由表中的信息时,通道将对路由长度进行计算,也就是说用与路由表中的
条目关联在一起的度量值来衡量路由长度。这个度量值是系统管理员在配置路由时设置的,
它应该能反映出利用该路由产生的花费。因为,对主机直接连接的子网来说,通向它的路由
之度量值应该始终为0,而对通过两个网关的路由,其度量值必须是2。但需要注意的是,在
没有使用R I P或通道时,大可不必理睬度量值。
2.6 Internet控制消息协议
I P还有一个“伴侣”协议。它就是I n t e r n e t控制消息协议( I C M P),它是内核联网程序用以
与错误消息和其他主机进行通信的协议。比方说,假设我们又回到E r d o s,并打算登录到Q u a r k
的1 2 3 4 5端口,但这个端口上没有监听进程。所以,发向这个端口的第一个T C P包就会抵达
Q u a r k,网络层将认出这个包并立即向E r d o s返回一条I C M P消息,指出“不能抵达指定端口”。
I C M P能够识别的消息相当多,而且大多数都能对错误情况进行处理。然而,其中有一
条非常有意思的消息,叫作“重定向”消息。它是在有更短路由的情况下,发现另一个主机
正把它用作一个网关时,由路由选择模块生成的。例如,在启动之后, S o p h u s的路由表可能
会不完整,其中包含通向数学系局域网和F D D I主干网的路由,以及通向G r o u c h o计算中心的
网关(g c c 1)的默认路由。因此,任何一个发向Q u a r k的包都会被发送到g c c 1,而不是物理系
局域网的N i e l s网关。在收到这类包后, g c c 1将注意到这一路由非常糟糕,所以在把包转发到
N i e l s时,向S o p h u s返回一条I C M P重定向消息,并将最佳路由告诉它。
现在看来,手动配置路由似乎比必须设立路由简单的多。但要注意,单纯依赖于动态路
由方案以及R I P和I C M P重定向消息,始终不是上策。在验证某些路由信息是否真正可靠时,
I C M P重定向消息和R I P能够提供的选择很少,甚至没有。这样某些恶意的、一无是处的包将
扰乱你的整个网络通信,甚至可能导致网络瘫痪。鉴于此,联网程序有几个版本,对影响网
络路由的重定向消息进行了处理,令其只能对主机路由进行重定向。
2.7 域名系统
2.7.1 主机名解析
如上所述, T C P / I P连网协议中的地址利用的是3 2位的编号。但是,有几个人能够一口就
答上来,某某主机的I P地址是什么呢?因此,主机一般都有一个“普通”的(比如“高斯”
或“异人”)主机名。然后,由特定的应用程序负责找出和这个主机名对应的I P地址。这个过
程就叫作“主机名解析”。
对想找出与具体主机名对应的I P地址的应用程序来说,不必为主机和I P地址的查找提供
它自己的例程。相反地,它依靠大量的库函数进行透明操作,其中有: g e t h o s t b y n a m e ( 3 )和
g e t h o s t b y a d d r ( 3 )。按照惯例,这两个函数和大量的相关进程都被归在一个独立的库内,这个
库叫作解析器库; L i n u x中,它们是属于标准l i b c的。所以说白了,这个函数集合就是“解析
器”。
现在,在像以太网之类的小型网络上,甚至在一个以太网聚簇上,要维护主机名和I P地
址的对应表不是件难事。维护信息通常保存在一个名为/ e t c / h o s t s的文件中。在增添或删除主
机名或重新分配I P地址时,只须根据所有的主机,更新主机名即可。显而易见,这对由若干
台机器组成的网络来说,是颇为头疼的。
要解决这一问题,方法之一是N I S(网络信息系统),这是S u n公司开发的。简单地说,叫
作Y P或黄页。N I S把主机文件(和其他信息)保存在一个主要主机的数据库内,客户机如有
需要,就可从该数据库内提取。但是,这个方法仍然只适用于中等大小的网络,比如局域网,
因为它只对整个主机数据库进行集中维护,并把它分发到各个服务器。
在因特网上,地址信息最初也是保存在一个独立的H O S T S . T X T数据库内。这个文件的维护
在“网络信息中心”(N I C)进行,而且必须由所有参与站点进行下载和安装。随着网络的扩大,
这一方案的问题就越来越突出。除了定期安装H O S T S . T X T涉及的管理开销外,各个服务器的下
载量也越来越大。更为严重的是,所有主机名都必须利用NIC进行注册,以保证主机名不重复。
这就是1 9 8 4年新的主机名解析方案出台的原因。它就是域名系统( D N S)。D N S是保
罗·莫克皮特里斯设计的,完满解决了上面提到的两大问题。
第2章TCP/IP网络19
下载
20 第一部分Linux 网络管理员指南
下载
2.7.2 输入DNS
D N S采用域分层结构来管理主机名。一个域是若干个站点的集合,因为这些站点可以组
成一个网络(例如,校园网内的所有机器,或B I T N E T上的所有主机),而且因为它们都属于
某个特定的组织(比如美国政府),或仅仅因为它们的地理位置相当接近。例如,所有的大学
可以归为一个. e d u域,而各个大学或学院又分为一个单独的子域。如果为Groucho Marx大学
指定的是g r o u c h o . e d u域,那么,为数学系局域网分配的域就是m a t h s . g r o u c h o . e d u。数学系局
域网内的各台主机分到的域就是再在前面的域名前加上主机名,比如E r d o s 的就是
e r d o s . m a t h s . g r o u c h o . e d u。这就是所谓的“完整资格域名”(F Q D N),它能够唯一地标识全球
各地的主机。
这个域分层结构的根是一个单独的点( .),名副其实地称作根域( r o o t d o m a i n),所有的
域都包含在这个根域内。为指明一个主机名的确是一个完整资格域,而不是相对于某一(隐
式)本地域的域名,有时会把它表示成一个追尾点。它表示该名的最后一个组件是根域。
根据其在域名分层结构中的位置,域可以称作顶级域、二级域或三级域。多级子分区不
是没有,但极为罕见。下面是一些大家经常能见到的顶级域:
■ .edu (主要在美国)教育部门,比如大学
■ .com 商业组织,公司
■ . o rg 非商业组织(这个域中通常是些U U C P网络)
■ .net 网络上的网关和其他管理性主机
■ .mil 美国军方
■ .gov 美国政府部门
■ .uucp 正式场合中,对以前用做U U C P名的所有站点名来说,如果没有为它们指定域,
就会被统统归入这个域内。
从技术上来讲,前4个域属于I n t e r n e t的美国部分。但这个域中同样包含有非美国站点。特
别是. n e t域中,此类非美国站点比比皆是。但是, . m i l和. g o v是美国专用域。
除美国外的其他国家都可以使用得名于I S O - 3 1 6 6中定义的两个字母,来作为其顶级域。
比如芬兰,它使用的是. f域;法国使用的是. f r域;德国使用的是. d e域;澳大利亚使用的则
是. a u域。在这个顶级域下,各个国家可按照自己的方式组织主机名。比如澳大利亚,它有类
似于国际顶级域的二级域,名为c o m . a u和e d u . a u。其他的国家,比如德国,则不采用这种结构,
而是采用一个稍长的名字直接指向正在运行特殊域的组织(或企业)。例如, f t p . i n f o r m a t i k和
u n i - e r l a n g e n . d e此类的主机名是很不常见的,但在德国,类似的主机名却非常普遍。
当然,这些国家域并不能代表这个域下面的主机真正就位于该国;它只是表示这台主机
在这个国家的N I C(国家I n t e r n e t中心)已经注了册。比如,一个瑞士厂商可能在澳大利亚有
一个分部,仍然可以用. s e顶级域来注册其下属所有主机。
现在,对域名分层结构内的域名空间进行组织,就能很好地解决域名唯一性的问题。利
用D N S,主机名在其自己所处的域内,必须是独一无二的,这样才能保证它的名字有别于全
球各地的主机。此外,完整资格域名也非常容易记,正因为有了它们,便可将一个大型的域
分成若干个子域。
但D N S还有别的好处:它允许你选择子域内的授权者作为它的管理员。比如, G r o u c h o计
算中心的维护人员可能为各系创建一个子域;我们已见识过数学系和物理系子域。在发现物
理系局域网太大,太混乱,以至于很难自外部进行管理时(毕竟,学物理的人是出了名的
“放荡不羁”),计算中心的维护人员会把p h y s i c s . g r o u c h o . e d u域的控制权移交给该网络的管理
员。然后,该网络的管理员就可能自由地使用自己喜欢的主机名,并在不与网络外部发生冲
突的前提下,按照自己的方式为主机分配I P地址。
最后,域名空间分为若干个区,每个区都包含在一个域内。注意,区和域之间的细微差
别:g r o u c h o . e d u域内涵括Groucho Marx大学的所有主机,而g r o u c h o . e d u区内只包括计算中心
直接管理的主机,比如数学系局域网内的主机。而物理系的主机则属于另一个不同的区,名
为p h y s i c s . g r o u c h o . e d u。
2.7.3 利用DNS进行名字查找
乍一看,域和区几乎令域名解析复杂不堪。毕竟,如果没有集中式授权机构对主机名分
配的控制,小小应用程序怎能识别出这些纷繁复杂的域名?
现在该来谈谈D N S的妙用了。如果想找到E r d o s主机的I P地址, D N S就会说,去问管理这
台主机的人,他们会告诉你的。
事实上, D N S是一个巨大的分布式数据库。它是通过一个所谓的“域名服务器”来实现
的,这些域名服务器将提供具体域或域集合相关的信息。对每个区而言,至少有两个域名服
务器中保存有那个区中的所有主机之验证信息。要想获得E r d o s的I P地址,只须和g r o u c h o . e d u
区的域名服务器进行沟通,然后,它就会返回你所需要的数据。
大家可能会这样想:“说时容易,做时难。我怎样才能抵达Groucho Marx大学的域名服务
器呢?”如果你的计算机没有装地址解析先知, D N S有。在你的应用程序想查找关于E r d o s的
相关信息时,它会与一个本地域名服务器取得联系,该服务器将为此实施所谓的“交互式”
查询。向根域的一个域名服务器发出查询之后,该服务器便要求得到e r d o s . m a t h s . g r o u c h o . e d u
的I P地址。根域名服务器认出这个名字不属于自己的辖区,而是属于. e d u域下面的一个辖区。
所以,它就会要求你与. e d u区域名服务器取得联系,并将列有所有. e d u域名服务器及其地址的
清单封装起来。然后,你的本地域名服务器将开始对清单中的域名服务器一一进行查找,比
如a . i s i . e d u域名服务器。它采用的方式类似于根域名服务器的方式,它知道g r o u c h o . e d u处的人
们在运行它们自己的区,并把你引向他们的服务器。最后,本地域名服务器再向其中一个服
务器提出查找E r d o s,E r d o s所在的域名服务器认出它是属于自己这一区之后,便返回其对应
的I P地址。
现在看来,查找一个小小的I P地址似乎会产生很大的网络开销,但事实上,和目前尚未
解决的H O S T S . T X T传输比较起来,简直不足一提。但仍有必要对这一查找进行改进。
为了缩短查找时间,域名服务器将把获得的信息保存在自己的本地缓存内。所以,下一
次你的网络中,有人想查找g r o u c h o . e d u域内的主机之I P地址时,你的域名服务器就不必费心
了,直接联系g r o u c h o . e d u域名服务器即可。如果域名服务器不保存获得的信息, D N S和其他
的方法一样糟糕,因为每次查找都涉及到根域名服务器。
当然,域名服务器不会永久性地保存这一信息,隔段时间后,它就会丢弃这一信息。何
时丢弃由生存时间(也就是T T L)决定。D N S数据库中的每项资料都有一个由区管理员分配
第2章TCP/IP网络21
下载
22 第一部分Linux 网络管理员指南
下载
的一个T T L。
2.7.4 域名服务器
容纳某一区内主机信息的域名服务器叫做这个区的验证服务器,有时也被称为主域名服
务器。任何对区内主机的查询最终都会涉及到主域名服务器。
为了保证整个区的连贯性,其主域名服务器必须能够得到同步更新。这是通过令其中一
个主域名服务器成为首要服务器来实现的。这个首要服务器定期令传输区数据的其他域名服
务器作为其从属服务器,从而从数据文件中载入该区信息。
要有若干个域名服务器的原因之一是:分担工作负荷。另一个原因是备用。如果一个域
名服务器良性“失效”,比如系统崩溃或丢失网络链接时,所有的查询都会转向其他的服务器。
当然,这一方案并不能有效地避免服务器故障(导致所有的D N S请求做出错误的应答)和服
务器程序本身出现软件错误。
当然,我们也可以设想一些域内不存在作为验证域名服务器的情况(但一个域名服务器
至少能为本地主机和1 2 7 . 0 . 0 . 1逆向查找提供域名服务)。不管怎么说,这类服务器都是相当有
用的,因为它仍然能够针对运行于本地网络的应用程序实施D N S查询。因此,它们通常也被
称为“c a c h i n g - o n l y”(只用于缓存)服务器。
2.7.5 DNS数据库
由上可知, D N S不仅能够处理主机的I P地址,还能够交换关于域名服务器的信息。事实
上,D N S数据库内可能有整整一打不同类型的条目。
D N S数据库内,一条单一的信息叫作一条资源记录,或简称R R。每条记录都有一个与之
关联的类型(描述了该记录代表的数据类别)和一个类(指定该记录适用的网络类型)。后者
可根据不同的编址方案(比如I P地址,是I N类;H e s i o d网络则是M I T)需求进行调节。标准
的资源记录类型是A记录,它把一个完整资格域名和一个I P地址关联在一起。
当然,一个主机可以有若干个主机名。但是,必须将其中一个主机名标识为正式名或规
范名,而其他的则是可以代表前者的别名。其间的区别是:规范主机名是A记录所关联的主机
名,而其他的则只有一条C A N M E类型的记录,该记录指向规范主机名。
关于所有的记录类型,将留在下一章深入讨论。这里只是简要介绍一下。
除了A和C N A M E类记录外,我们还看到文件顶部有一条特殊的记录。这是S O A资源记录,
表示Start of Authority,其中容纳服务器所属的区之普通信息。比如,它包含所有记录的默认
T T L值。
注意,不是以点“ .”结尾的示范文件中,所有主机名都应该被解释为与g r o u c h o . e d u域有
关。S O A记录中的特殊名“@”代表这个域本身的域名。
由上可知, g r o u c h o . e d u域的域名服务器多少应该知道物理区,使之能够将主机查询引向
这些主机各自的域名服务器。这通常是通过两条记录来完成的:指定该服务器之F Q D N的N S
记录和把地址与主机名关联在一起的A记录。由于这两条记录把域名和空间集中保存在一起,
所有它们通常也被称作“ glue records”。对真正保存子区内主机相关信息的父区来说,它们是
唯一的记录实例。指向p h y s i c s . g r o u c h o . e d u域的域名服务器的g l u e记录如清单2 - 1所示。
清单2-1 物理系采用的程序,摘自n a m e d . h o s t s文件
2.7.6 逆向查找
除了查找属于一个主机的I P地址外,我们有时还希望查找和I P地址对应的规范主机名。
这就是所谓的“逆向映射”,有几个网络服务用它来验证客户机的身份。在使用一个独立的主
机文件时,逆向查找只在该文件中查找问题中I P地址所对应的主机名。如果用D N S,当然还
要对问题外的名字空间进行彻底查找。D N S创建了一个i n - a d d r. a r p a特殊域,其中包含所有主
机的I P地址,这些地址采用的格式是点分四段式。例如, 1 4 9 . 7 6 . 1 2 . 4这个I P地址对应的主机名
是4 . 1 2 . 7 6 . 1 4 9 . i n - a d d r. a r p a。把这些域名和其规范主机名链接起来的资源记录类型是P T R。具
体程序参见清单2 - 2。
清单2-2 GMU采用的程序,摘自n a m e d . h o s t s文件
第2章TCP/IP网络23
下载
创建一个特区通常意味着其管理员能够拥有分配I P地址的绝对支配权。由于他们手中有
一个或若干个I P网络或子网,所以D N S区和I P网络之间可能会存在一对多的映射关系。比如,
物理条由1 4 9 . 7 6 . 8 . 0、1 4 9 . 7 6 . 1 2 . 0和1 4 9 . 7 6 . 1 4 . 0三个子网组成。
结果是, i n - a d d r. a r p a域内的新区必须随物理区一起创建,而且供该系的网络管理员专用,
它们是: 8 . 7 6 . 1 4 9 . i n - a d d r. a r p a、1 2 . 7 6 . 1 4 9 . i n - a d d r. a r p a和1 4 . 7 6 . 1 4 9 . i n - a d d r. a r p a。否则的话,在
C o l l i d e r实验室安装一台新主机时,就会要求新区与其父域取得联系,以便将新地址输入它们
的i n - a d d r. a r p a区文件。
子网1 2所用的区数据库参见清单2 - 3。
清单2-3 子网1 2所用的数据库,摘自i n - a d d r. a r p a文件
这些新区之父区所用的记录,则参见清单2 - 4。
清单2-4 网络1 4 9 . 7 6所用的记录,摘自n a m e d . r e v文件
24 第一部分Linux 网络管理员指南
下载
上面的记录产生的重要结果是验证区只能被视作I P网络的超级子集,而且更严格地说,
这类网络的网络掩码必须根据字节边界来定。Groucho Marx大学的所有子网的网络掩码都是
2 5 5 . 2 5 5 . 2 5 5 . 0,因此,应该为每个字网创建一个i n - a d d r. a r p a区。但是,如果各子网的网络掩
码是2 5 5 . 2 5 5 . 2 5 5 . 1 2 8,我们就可以为子网1 4 9 . 7 6 . 1 2 . 1 2 8创建验证区,因为无法告知D N S
“1 2 . 7 6 . 1 4 9 . i n - a d d r. a r p a域已经被分为两个特区,所以主机名分别是1到1 2 7,和1 2 8到2 5 5”。
第2章TCP/IP网络25
下载

TOP

如何修改MBR记录

TOP

下载好书啊

TOP

回复5次才下得完..

TOP


感谢一直以来您对我们的支持!
当前时区 GMT+8, 现在时间是 2008-11-22 12:58 京ICP证060528 号

Designed By 17DST