![如何在 Linux 上使用 pdnsd 使用两个搜索域](https://linux22.com/image/1382807/%E5%A6%82%E4%BD%95%E5%9C%A8%20Linux%20%E4%B8%8A%E4%BD%BF%E7%94%A8%20pdnsd%20%E4%BD%BF%E7%94%A8%E4%B8%A4%E4%B8%AA%E6%90%9C%E7%B4%A2%E5%9F%9F.png)
我有一个本地网络和一个 VPN 连接 - 两者都有不同的域。
是否有可能将两个域都用作 DNS 查找的搜索域?我已经让 pdnsd 只查找 VPN DNS 服务器上的 VPN 域和本地服务器上的本地域名。此外,查找时hostname
它会解析为hostname.domain1.local
,但当尝试使用短主机名从第二个域查找名称时,DNS 返回NXDOMAIN
。
是否有可能让我的系统尝试一下,如果查找时hostname.domain1.local
没有找到?hostname.domain2.local
hostname
答案1
将这两行(作为 sudo)添加到您的 /etc/resolv.conf 文件的最底部:
search hostname.domain1.local
search hostname.domain2.local
小心,每次建立新连接时,/etc/resolv.conf 文件都会被删除并重写。
编辑:我的错。Linux 手册状态:
搜索 用于主机名查找的搜索列表。 搜索列表通常根据本地域名确定;默认情况下,它仅包含本地域名。这可以通过在搜索关键字后列出所需的域搜索路径来更改,名称之间用空格或制表符分隔。解析器查询中包含的点数少于 ndots(默认值为 1),将依次尝试使用搜索路径的每个组件,直到找到匹配项。对于具有多个子域的环境,请阅读下面的选项 ndots:n,以避免中间人攻击和根 DNS 服务器不必要的流量。请注意,如果列出的域的服务器不是本地的,此过程可能会很慢,并且会产生大量网络流量,并且如果其中一个域没有可用的服务器,查询将超时。
The search list is currently limited to six domains with a
total of 256 characters.
因此这应该是:
search hostname.domain1.local hostname.domain2.local