OpenSuse Tumbleweed 更新后可以 nslookup 但无法 ping

OpenSuse Tumbleweed 更新后可以 nslookup 但无法 ping

在 02/09 Tumbleweed 更新之后,我的 DNS 似乎被破坏了。

我的右上角的 wifi 图标有一个问号,ping google.com返回Name or service not known,但nslookup google.com正确返回 IP 地址。如果我在 Firefox 中访问 Google 的 IP 地址,我会收到该消息We can't connect to the server at www.google.com.,因此该问题正在以某种方式得到解决。

我可以 ping 通8.8.8.8

我已经尝试了我能看到的相关问题的所有其他答案,但没有一个对我有用。我的resolv.conf是:

search MYDOMAIN
nameserver IP1
nameserver IP2

其中 IP1 和 2 是我的公司地址。

我尝试更改nsswitch.conf并减少hosts线路files dns(删除 mdns4 位)。

如果我强制使用 Google 的 DNS,那么它仍然无法工作,即如果我尝试nslookup google.com 8.8.8.8失败,并且如果我进入 NetworkManager 并8.8.8.8,8.8.4.4在 Wifi 的 IPv4 设置中添加 DNS,那么它仍然无法工作。

答案1

从 Leap 15.0 更新到 Leap 15.1 后,我遇到了类似的问题:nslookup可以工作,但ping或任何其他需要 dns 解析的东西却不能。我做了所有标准检查(resolv.conf、、),这些都是按顺序进行的nsswitch.conf。如上所述/etc/sysconfig/network/config切换到wickedNetworkManager启用最初解决了我的问题。dnsmasq

我更深入地挖掘了一下,发现了一个提示,它可能与 apparmor 配置中的问题有关:https://forums.opensuse.org/showthread.php/536437-DNS-problem-after-upgrade-from-15-0?p=2906092#post2906092

与我系统上的那个线程类似,有一个更新的配置,其中/etc/apparmor.d/abstractions/nameservice.rpmnew允许访问nscd.一旦我复制了这个新的配置文件并清除了该帖子中所述的 apparmor 缓存,wicked就开始工作,我可以将我的网络管理器配置恢复到原始版本,而无需使用dnsmasq.

答案2

我通过在 中dns=dnsmasq添加来实现此功能。[main]/etc/NetworkManager/NetworkManager.conf

相关内容