Linux系统解析域名的先后顺序【转帖】
Linux系统解析域名的先后顺序
gd_WWW已经在本地(/etc/hosts)进行指向,但是竟然还能解析到外网,让我百思不得其解。经过不断查找发现域名解析与以下四个文件有关:
/etc/hosts
/etc/host.conf
/etc/resolv.conf
/etc/nsswitch.conf
其中nsswitch.conf与系统获取解析的顺序有关。
[root@f5ha.com ~]# vi /etc/nsswitch.conf #找到hosts关键字
#hosts: db files nisplus nis dns
hosts: files dns #此为默认配置
从配置文件就可以看出系统是先files(/etc/hosts)解析,再从dns(/etc/resolv.conf)解析。
更改为 hosts: dns files
重启网络服务service network restart
发现无效。
重启系统后生效,先通过dns解析,出现用户的现象,外网解析本地计算机名。
现在再说一下hosts文件
和Windows系统(C:\Windows\System32\drivers\etc\hosts)下的host的文件相类似,就是一个文本文件,里面存放一些IP和域名的对应关系。
然后是resolv.conf文件
配置Linux系统DNS服务器的配置文件:
cat < /etc/resolv.conf
nameserver *****
最后是host.conf文件,这个现在基本已经不用了,都改为nsswitch.conf了。
cat < /etc/host.conf
multi on
order hosts,bind
order hosts bind 表示先查询本地hosts文件,如果没有结果,再尝试查找BIND dns服务器。
专家啰嗦
本人认为这篇与上一篇(NBU Client突然连接失败)知识点不一样。上一篇的重点是分析。如果在后面把域名解析的顺序写出来不方便以后的查找,所以就单章出来详细分析一下。
http://blog.sina.com.cn/s/blog_6965d96d0102uyv8.html