假设该/etc/nsswitch.conf
文件包含
hosts: files dns
并且/etc/host.conf
文件有
order bind,hosts
那么系统会按照什么顺序使用/etc/hosts
DNS 查找来解析主机名呢?换句话说,这两个配置文件中哪一个优先?
答案1
/etc/nsswitch.conf
是当今域名解析的默认文件。我的文件顶部有以下行/etc/host.conf
:-
# The "order" line is only used by old versions of the C library.
nsswitch.conf
我的 Debian 盒子上的几乎所有东西都使用它来进行名称解析。因此,鉴于文件中的上述行,默认名称解析顺序将是/etc/hosts
首先检查,然后使用配置的名称服务器/etc/resolv.conf
进行 DNS 查找。
最近(从 Ubuntu 11.10 开始),/etc/resolv.conf
默认配置为使用本地主机接口 (127.0.0.1),其中守护程序dnsmasq
在端口 53 上侦听 DNS 请求。这通常会按照 LAN 的 DHCP 服务器的配置进行 DNS 解析,但这可以在操作系统的网络配置 GUI 中手动覆盖。
注意:您没有提及您正在使用的操作系统,以上内容来自个人使用 Debian Ubuntu 的经验。不同版本的 Linux 上的默认值可能不同