/etc/resolv.conf 中未定义域

/etc/resolv.conf 中未定义域

我看到越来越多的服务器没有领域文件中定义/etc/resolv.conf。只有一个搜索入口。
在什么情况下使用此设置?
有哪些情况是不能使用的?

nameserver xxx.xxx.xxx.xxx
nameserver yyy.yyy.yyy.yyy
nameserver zzz.zzz.zzz.zzz

search domain1 domain2 domain3 ...

答案1

当您指定 a 时,domain它将成为第一个search域。此搜索功能是设置的主要用途,因此大多数时候domain您只需定义一个条目即可。search

domain可以根据机器的主机名自动确定,如果主机名包含.后缀将成为域。

resolv.conf有 a没有 a 的主要区别domain是尝试确定完全限定域名 (FQDN) 的本地进程。最初我想到的 SMTP 服务器是想知道本地 FQDN 并且可以使用本地主机/域配置来解决它。随着时间的推移,对本地主机名和域的依赖越来越少,因为由于 NAT、虚拟主机和负载均衡器等因素,它对于机器实际代表的现实世界服务变得毫无意义。这意味着大多数软件现在都提供域名的替代配置选项,而不是仅仅尝试从本地主机名确定它们。

man resolv.conf

领域本地域名。
对此域内的名称的大多数查询都可以使用相对于本地域的短名称。如果不存在域条目,则根据 gethostname(2) 返回的本地主机名确定域;域部分被视为第一个“.”之后的所有内容。最后,如果主机名不包含域部分,则假定为根域。

搜索主机名查找的搜索列表。
搜索列表一般由本地域名确定;默认情况下,仅包含本地域名。这可以通过在搜索关键字后面列出所需的域搜索路径并用空格或制表符分隔名称来更改。解析器查询中包含少于 ndots 个点(默认为 1)的解析器查询将依次使用搜索路径的每个组件进行尝试,直到找到匹配项。对于具有多个子域的环境,请阅读下面的选项 ndots:n 以避免中间人攻击和根 dns 服务器不必要的流量。请注意,如果列出的域的服务器不是本地的,则此过程可能会很慢,并且会生成大量网络流量,并且如果其中一个域没有可用的服务器,则查询将超时。搜索列表目前仅限于 6 个域,总共 256 个字符。

相关内容