解析Linux系统DNS文件配置(linuxdns文件)
每台Linux服务器都需要运行一个DNS服务器来提供Internet服务。 Linux系统中有几个文件处理DNS信息以正确映射网络服务,从而实现访问指定机器的网络服务。
首先来看Linux系统DNS文件配置的结构:/etc目录中有文件/etc/resolv.conf是DNS的配置文件,该文件的内容主要是设置需要查询的DNS服务器IP,以及解析域名的顺序。 其格式如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
search example.com
其中nameserver关键字用来设置DNS服务器的IP地址,它后面跟的是你使用的DNS服务器的IP地址,例如8.8.8.8和8.8.4.4分别是Google和OpenDNS两个免费的、可靠的公共DNS服务器。
该文件中还有一个search关键字,它用于设置查询域名的顺序。 该关键字下面跟着的域名会从左往右,从右往左依次查询域名,我们上面指定的example.com就是查询主机名时,会依次查询example.com域名,如果查询不到就查询www.example.com域名,以此类推。
此外,还有其他配置文件也影响到DNS结果,例如/etc/hosts是一个本地主机名映射文件,当不是通过远程的DNS服务器查询结果时,系统会优先从该文件中查找指定的域名;而/etc/nsswitch.conf文件是用来设置系统查询指定服务的顺序,它配置的结果会影响到用户尝试ping或DNS查询某个主机时,查询使用的是what面的内容还是DNS服务器提供的结果。
最后,介绍一下以上文件和关键字的一些实际操作过程,例如通过vi查看修改/etc/resolv.conf文件,可以加上本地DNS服务器或公共DNS服务器的信息;编辑/etc/hosts文件,可以通过添加一些本地的映射规则;修改/etc/nsswitch.conf文件,可以控制用户尝试ping或DNS查询某个主机时,查询使用哪种方式。
通过以上介绍,我们可以知道Linux系统DNS文件配置主要包括/etc/resolv.conf、/etc/hosts和/etc/nsswitch.conf三个文件,它们和DNS服务器IP、查询域名顺序以及查询方式有关。 如果你想更改DNS服务器IP地址,需要修改resolv.conf文件;如果想让主机名可以按照设定的顺序查找,需要修改hosts文件;若想控制系统使用的查询方式,则需要更改nsswitch.conf文件。