Linux网络配置 -- 各种配置文件及其作用篇

来源:互联网 发布:淘宝开店认证无法认证 编辑:程序博客网 时间:2024/05/18 00:57

一. Linux平台下各种网络相关配置文件(RedHat Linux为例)

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

1. 文件/etc/hosts

(1) 文件格式

    以#开头的是注释

每行包括:第一部份:网络IP地址;第二部份:主机名或域名;第三部份:主机名别名;

注意:这里稍微解释一下主机名(hostname)和域名(Domain)的区别:主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应ip;域名通常在internet上使用,但如果本机不想使用internet上的域名解析,这时就可以更改hosts文件,加入自己的域名解析。

例如一个/etc/hosts文件的可能实例为如下所示:

#This is the comment part of /etc/hosts file

127.0.0.1 localhost.localdomain localhost

192.168.0.1 otherhost.domain otherhost

(2) 文件作用

Linux 的/etc/hosts是配置IP地址和其对应主机名的文件,这里可以记录本机的或其他主机的IP及其对应主机名。

(3)管理该文件相关的Linux命令

与此相关的Linux命令有:hostname

hostname -a 命令显示该主机的别名,这就是文件/etc/hosts第三列以后的部分

hostname -d命令显示主机所在的域名,这就是文件/etc/hosts第二列的内容

hostname -i 命令显示主机的IP地址,这就是文件/etc/hosts第一列的内容

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

2. 文件/etc/nsswitch.conf

(1) 文件格式

文件/etc/nsswitch.conf中每一行的格式如下:

INFO: METHOD[[ACTION]] [METHOD [[ACTION]] ...]

(1.1) INFO --> 指定该行所描述的信息的类型

nsswitch.conf文件通常控制着用户,口令,主机IP和组信息的搜索。下面列举了具体的INFO类型及其含义

automount    --> 自动挂载

bootparams --> 无盘引导选项和其他引导选项

ethers          --> MAC地址

group           --> 用户所在组(/etc/group)

hosts           --> 系统信息(/etc/hosts)

networks       --> 网络信息(/etc/networks)

passwd        --> 用户信息(/etc/passwd)

protocols      --> 协议信息(/etc/protocols)

publickey     --> 用于安全模式下运行的NFS

rpc              --> RPC名称和编号(/etc/rpc)

services        --> 服务信息(/etc/services)

shadow       --> 映射口令信息(/etc/shadow)

(1.2) METHOD --> 为用来查找该信息的方法

nisplus or nis+

nis or yp

dns

files

db

compat

hesiod

关于以上信息的详细内容请参考/etc/nsswitch.conf的开头注释部分

(1.3) ACTION --> 是对前面的METHOD的返回状态的响应。ACTION要放在方括号里面。

动作项的格式如下:[[!]STATUS=action]

STATUS

STATUS的取值如下。

l         NOTFOUND——方法已经执行,但是并没有找到待搜索的值。默认的动作是continue。

l    SUCCESS——方法已经执行,并且已经找到待搜索的值,没有返回错误。默认动作是return。

l    UNAVAIL——方法失败,原因是永久不可用。举例来说,所需的文件不可访问或者所需的服务器可能停机。默认的动作是continue。

l    TRYAGAIN——方法失败,原因是临时不可用。举例来说,某个文件被锁定,或者某台服务器超载。默认动作是continue。

action

action的取值如下:

l    return——返回到调用例程,带有返回值,或者不带返回值。

l    continue——继续执行下一个方法。任何返回值都会被下一个方法找到的值覆盖。

(2) 文件作用

nsswitch.conf (name service switch configuration),随着NIS和DNS的出现,查找用户信息和系统信息就不再是搜索本地文件这样简单的事情了。以前,查看/etc/passwd文件就可以获取用户信息,查看/etc/hosts文件就可以找到系统地址信息,而现在使用多种途径来查找这类信息。文件/etc/nsswitch.conf(name service switch configuration,名字服务切换配置)规定通过哪些途径以及按照什么顺序通过这些途径来查找特定类型的信息。还可以指定若某个方法奏效抑或失效系统将采取什么动作。

(3) 管理该文件的相关Linux命令

这里就举一个例子来加以说明。例如Linux的命令hostname -a 用来查看用户机器的别名,如果你在/etc/nssswitch.conf文件中指定hosts: files dns那么,hostname -a程序首先会在/etc/hosts文件中查找,如果找不到再从dns服务中查找。其它配置项用来查看其它Linux命令相关的配置信息,具体就不在这里一一论述。

你也可以通过man nsswitch.conf来获得MAN帮助信息。

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

3. 文件/etc/host.conf

(1) 文件格式

order hosts,bind

multi on

(2) 文件作用

这个文件已经逐渐被 /etc/nsswitch.conf取代。

(3) 相关Linux命令

N/A

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

4. 文件 /etc/resolv.conf

(1) 文件格式

[Configure Directive] [Directive Value]

该文件是DNS域名解析的配置文件,它的格式很简单,每行以一个关键字开头,后接配置参数。resolv.conf的关键字主要有四个,分别是:

nameserver #定义DNS服务器的IP地址domain #定义本地域名search #定义域名的搜索列表sortlist #对返回的域名进行排序

/etc/resolv.conf的一个示例:

domain ringkee.comsearch www.ringkee.com ringkee.comnameserver 202.96.128.86nameserver 202.96.128.166

最主要是nameserver关键字,如果没指定nameserver就找不到DNS服务器,其它关键字是可选的

(2) 文件作用

可以参考man 5 resolver.

This file controls the client-side portions of the DNS system, which is implemented in system library functions used by all programs to resolve system names. In particular, /etc/resolv.conf specifies the IP addresses of DNS servers. For example:

nameserver 192.168.1.5nameserver 192.168.250.2

Additional parameters are also available. For more information, view the manpage with man 5 resolver.

(3) 相关Linux命令

例如hostname -a,如果在/etc/nsswitch.conf文件中对hosts进行了如下配置: hosts: dns files,然后在/etc/resolv.conf文件中对nameserver 做如下配置: nameserver 192.168.0.2. 那么当敲入命令hostname -a时就会在dns服务器192.168.0.2上查找,找不到再到/etc/hosts文件查找。

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

5. 文件 /etc/networks

(1) 文件格式

此文件每行表示一个网络,由以下三个域构成:
name number aliases
这里,
name 表示网络的正式名称
number 表示网络号,把IP地址中的主机地址去掉就是网络号
aliases 表示网络别名,若有多个别名,用空格分开
# 表示注释

/etc/networks内容举例:
loopback 127
huawei 129.9 #Huawei Tech. Co. Ltd.
training 129.6 peixun qqsj #

其中,第一行,loopback是网络名,它的网络号是127(A类地址);第二行,huawei是网络名,它的网络号是“129.9”(B类地址), “#Huawei Tech. Co. Ltd.”是注释;第三行,training是网络名,它的网络号是“129.6”,它的别名有两个:peixun和qqsj,“#Training Center”是注释。

(2) 文件作用

etc/networks文件存放网络列表,一般把所用到的网络号都放到此表。

(3) 相关Linux命令

例如Linux下的route命令。在Shell里面敲入route时,route命令就会搜寻/etc/networks下面指定的网络,将网络地址变为具体的别名。具体如下:

Shell: route

Kernel IP routing table

Destination       Gateway       Genmask      

127.0.0.1          *                  255.0.0.0

如果/etc/networks指定如下内容:loopback 127.0.0.0,然后再在命令行下敲入route

Shell: route

Kernel IP routing table

Destination       Gateway       Genmask      

loopback         *                  255.0.0.0

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

6. 文件 /etc/sysconf/network-scripts下的文件

(注:不同的Linux发行版可能不同,也有可能在目录/etc/network/interfaces下)

该目录下保持了网络端口的配置信息和相关的配置脚本工具。

0 0
原创粉丝点击