我花了几个小时试图理解这一点,我做了一个干净的POP操作系统19.10安装,看看这是否解决了这个问题,不,它没有。
这在我的Mac、windows机器和我家里的ubuntu服务器机器上似乎工作得很好,但由于一些奇怪的原因,在我的pop os安装内部名称解析只在启动后10分钟内工作,然后停止。
我删除了开关中最小的dns 4条目.在resolv.conf上胡闹,但都没有用。大约十分钟后,它就烦人地停止工作了。
我有一个mikrotik路由器,在这里我为本地环境设置了一些静态dns条目。
mikrotik将DHCP的所有三个解析器地址都交给DHCP。在深入研究之后,我查看了systemd-resolve --status cmd的结果,发现主DNS偶尔会被辅助DNS替换。这似乎导致内部决议被忽略。
Current DNS Server: 154.0.1.10
DNS Servers: 192.168.88.1
154.0.1.1
154.0.1.10似乎mikrotik DNS查找会间歇性地超时导致此问题。在超时系统解析的切换到一个后备dns条目,并不再尝试主。
不知道怎么解决这个问题。如有任何帮助,将不胜感激。
发布于 2020-01-14 13:41:58
一切都如你所定义的那样运转。您误解的是DNS解析器是如何用于解析地址的,因此配置没有按您预期的方式工作。
所有三个DNS解析器地址(192.168.88.1、154.0.1.1、154.0.1.10)都是通过您的Mikrotik路由器通过DHCP分发的。这告诉每个客户端,任何(响应)解析器都能够处理任何DNS查找。
当您试图查找只有192.168.88.1知道如何解决的内部LAN地址时,理论上您只有三分之一的机会获得该解析;其余的服务器将使用NXDOMAIN进行响应。
将客户端查询分配给DNS服务器的特定过程是特定于实现的。有些实现可能采用“第一个”DNS服务器,并且更喜欢使用该服务器。其他实现可能采用任何一个可用的集合并使用它。其他实现可以在随机或循环的基础上分配查询。
这里的解决方案只是提供192.168.88.1作为您的LAN服务器,并确保它知道如何在本地解析查询时向上游转发查询。
如何将系统解析和系统d-networkd配置为使用本地DNS服务器解析本地域,使用远程DNS服务器解决远程域.可能有助于systemd-resolved的实际配置。
发布于 2020-01-12 06:31:19
resolv.conf是否被覆盖?
如果POP OS正在使用systemd,则需要在/etc/systemd/network/*.network中编辑您的网络配置并指定静态DNS条目。
[Match]
Name=eth0
[Network]
DHCP=yes
DNS=1.1.1.1如果POP OS没有使用systemd,而DHCPD正在覆盖它,则可以编辑dhcpd.conf并添加nohook resolv.conf以防止其被覆盖。
https://unix.stackexchange.com/questions/561670
复制相似问题