/etc/hosts 和 /etc/resolv.conf 之间有什么区别?另外,有没有好的文档可以解释所有这些配置文件。
谢谢。Bala
答案1
resolv.conf
指定用于解析器查找的名称服务器,它实际上将使用 DNS 协议来解析主机名。
通常,该hosts
文件用于管理目的,例如后端和内部功能,其范围实质上更加独立,因为只有本地服务器会引用它。
/etc/nsswitch.conf
指定条目的查找顺序hosts
。
如果这不能回答您的问题,请进一步澄清。
查看以下手册页:
HOSTS(5)
RESOLVER(5)
答案2
resolv.conf 按照搜索优先顺序指定名称服务器。
hosts 通过将 url/短名称映射到 IP 来覆盖所有名称服务器。
答案3
- /etc/resolv.conf:列出您的主机用于 DNS 解析的名称服务器。如果您正在使用
DHCP
,则此文件将自动填充DHCP
服务器发出的 DNS 记录。 - /etc/主机/:它只是一种静态的查找解析方法。
- /etc/nsswitch.conf:它定义了解析顺序。解析时应该首先咨询谁,DNS 还是主机文件?例如,如果文件具有以下配置,
hosts: files dns
则将/etc/hosts
首先检查文件以进行解析,如果域仍然无法解析,则将咨询 DNS。
答案4
/etc/hosts
:IP 地址和主机名之间的映射,用于名称解析。
127.0.0.1 localhost.localdomain localhost
10.2.3.4 myhost.domain.org myhost
/etc/nsswitch.conf
:各种系统库查找函数必须使用的源。
passwd: files nisplus nis
shadow: files nisplus nis
group: files nisplus nis
hosts: files dns nisplus nis
/etc/resolv.conf
:必须附加到裸主机名的域名以及用于名称解析的 DNS 服务器。
search domain1.org domain2.org
nameserver 192.168.3.3
nameserver 192.168.4.4