【问题1】
请说出(1)、 (2)、 (3)、 (4)、 (5)对应行的含义。
参考答案:设定服务器工作路径。
(2)服务器类型为主服务器。
(3)指定BIND初始化文件。
(4)设置为从属服务器。
(5)正向区数据库文件。
解析:在Linux系统中,TCP/P网络是通过若干个文本文件进行配置的,需要编辑这些文件来完成联网工作。系统中重要的有关网络配置文件为如下:
◆ /etc/sysconfig/network
◆ /etc/HOSTNAME
◆ /etc/hosts
◆ /etc/services
◆ /etc/host.conf
◆ /etc/nsswitch.conf
◆ /etc/resolv.conf
◆ /etc/rc.d/init.d/network
这些文件都可以在系统运行时进行修改,不用启动或者停止任何守护程序;更改会立刻生效(除了 /etc/sysconfig/network);每一个文件都可以在Linux手册中找到,可以用man命令来获取它们。
1./etc/sysconfig/network网络设置
该文件用来指定服务器上的网络配置信息,包含了控制网络有关的文件和守护程序的行为的参数。
请看下面的例子:
NETWORKING=yes
HOSTNAME=machine1
GATEWAY=202.103.86.112
FORWARD_IPV4=yes
GATEWAYDEV=eth0
其中,NETWORK=yes/no表示网络是否被配置;HOSTNAME=hostname hostname表示服务器的主机名:GATEWAY=gw-ip gw-ip表示网络网关的IP地址;FORWARD_IPV4=yes/no是否开启p转发功能:
GARE-
WAYDEV=gw-dev gw-dw表示网关的设备名,如eth0等。
2./etc/HOSTNAME主机名
该文件包含了系统的主机名称,包括完全的域名,如:
192.168.0.1 machinel.domain machinel
这个文件是在启动时从文件/etc/sysconfig/networ中的HOSTNAME行中得到的,用于在启动时设置系统的主机名。
3./etc/hosts IP地址和主机名的映射
/etc/hosts中包含了IP地址和主机名之间的映射,还包括主机名的别名,IP地址的设计使计算机容易识别,但对于人们却很难记住它们,为了解决这个问题,创建了/etc/hosts这个文件。
请看下面的例子:
127.0.0.1 machinel localhost,localdomain localhost
192.168.1.111 machinel
192.168.1.1130otherpc cotheralias
在这个例子中,本机名是machinel,otherpc还有别名otheralias,它(machinel)可以指向otheralias。一旦配置完机器的网络配置文件,应该重新启动网络以使修改生效,可使用下面的命令来重新启动网络:
/etc/rc.d/init.d/network restart
/etc/hosts文件通常含有主机名、local host和系统管理员经常使用的系统别名,有时候telnet到Linux机器要等待很长时间,可以通过在"/etc/hosts"中加入客户的机器的IP地址和主机各的匹配项来减少登录等待时间。在没有域名服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址,否则,其他的主机名通常使用DNS来解决,DNS客户部分的配置在文件/etc/resolv .conf中。
4./etc/services
/etc/services中包含了服务名和端口号之间的映射,不少的系统程序要使用这个文件,下面是Red Hat安装时缺省的/etc/services中的前几行:
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null.
systat 11/tcp users
最左边一列是主机服务名,中间一列是端口号,“/”后面是端口类型,可以是TCP也可以是UDP。任何后面的列都是前面服务的别名。在这个文件中也存在着别名,它们出现在端口号后面,在上述例子中 sink和null都是discard服务的别名。
5./etc/host.conf配置名字解析器
/etc/host.conf文件指定如何解析主机名,Linux通过解析器库来获得主机名对应的IP地址,下面是、 RedHat安装后缺省的"/etc/host.conf"内容:
order hosts,bind
multi on
◆ "order"指定主机名查询顺序,其参数为用逗号隔开的查找方法,支持的查找方法为bind、hosts和nis,分别代表DNS、/etc/hosts和NIS,这里规定先查询"/etc/hosts"文件然后再使用DNS来解析域名。
◆ "multi"用以表时"/etc/hosts"文件中指定的主机可以是否有多个地址,值为on表示允许,拥有多个 IP地址的主机一般称为具有多个网络界面。
6./etc/nsswitch.conf配置名字解析器
/etc/nsswitch.conf文件是由Sun公司开发并用于管理系统中多个配置文件查找的顺序,比/etc/host.conf文件提供了更多的功能。/etc/nsswitch.conf中的每一行或者是注释(以#号开头)或者是一个关键字后跟冒号和一系列要试用的有顺序的方法。下面是可以被包含的关键字:
◆ aliases 邮件别名;
◆ passwd 系统用户;
◆ group 用户组;
◆ shadow 隐蔽口令;
◆ hosts 主机名和p地址;
◆ networks 网络名和号;
◆ protocols 网络协议;
◆ services 端口号和服务名称;
◆ ethers 以太网号;
◆ rpc 远程进程调用的名称和号;
◆ netgroup 网内组。
下面也是可以包含的关键字:
◆ files除了netgroup,对其他关键字都有效。它对长文件也很有效,如passwd文件已经超过500项。要从标准/etc文件中产生这些文件,应改变目录到/var/db并运行run命令。
◆ compat兼容性模式,对passwd、group和shadow文件有效。在该模式中,将先在对应的/etc文件中查找。如果想进行NIS查找,需要第一个值(用户名或组名)为加号“+”,后面跟对应数量的冒号“:”(/etc/passwd为6个,/ere/group要用3个,/etc/shadow要用8个)。如果在/etc/passwd文件中,下面一行应被包含在文件尾: +:*:::::。
◆ nis对所有的关键字都有意义。如NIS是可以用的,则在NIS服务器中查找。
◆ [STATUS=action]控制名字服务的行为。STATUS是SUCCESS(操作被成功执行)、NOTFOUND (记录没找到)、UNAVAIL(所选择的服务不可用)和TRYAGAIN(服务暂时不可用,请重试)中的一个。action是return(终止查找并返回当前状态)或continue(继续这一行的其他项)中的一个。如使用hosts:dns nis [NOTFOUND=return]files,则将会先在DNS中查找主机名,然后在NIS中查找。只有当前两项都不可用时才使用文件etc/hosts。
7./etc/resolv.conf配置DNS客户
文件/etc/resolv.conf包含了主机的域名搜索顺序和DNS服务器的地址,每一行应包含一个关键字和一个或多个的由空格隔开的参数。请看下面的例子:
search ciu.net.cn
nameserver216.30.0.10
nameservcr216.30.0.2
合法的参数及其意义如下:
◆ nameserver表明DNS服务器的IP地址。可以有很多行的nameserver,每一行带一个IP地址。在查询时就按nameserver在该文件中的顺序进行,且只有当第一个nameserver没有反应时才查询下的一个nalileserver。
◆ domain声明主机的域名。很多程序用到它,如邮件系统;当为没有域名的主机进行DNS查询时,也要用到。如果没有域名,主机名将被使用,删除所有在第一个点(.)前面的内容。
◆ search中的多个参数指明域名查询顺序。当要查询没有域名的主机时,主机将在由search声明的域中分别查找。domain和search不能共存;如果同时存在,后面出现的将会被使用。
◆ sortlist允许将得到域名结果进行特定的排序。它的参数为网络/掩码对,允许任意的排列顺序。
RedHat中没有提供缺省的/etc/esolv.con文件,它的内容是概据在在安装时给出的选项动态创建的。
8./etc/init.d/network主机地址、子网掩码和网关
不像很多其他的UNIX和Linux操作系统,Red Hat当前并不能自动地通过/etc/hostname和/etc/hosts文件来配置网络。为了改变主机缺省的IP地址,必须直接编辑/erc/init.d/network脚本使其反映正确的网络配置。这个文件包括了声明IP地址、掩码、网络、广播地址和缺省路由器的变量。下面是这个文件中相应的部分:
IPADDR=192.168.1.111
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1