首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Debian 11未能解析.local名称

Debian 11未能解析.local名称
EN

Unix & Linux用户
提问于 2021-12-06 13:15:49
回答 1查看 2.1K关注 0票数 0

Update (2021年12月6日):似乎在avahi或libnss_mdns的某个地方有一个bug,参见https://github.com/lathiat/nss-mdns/issues/81坏时机。

我有2台单板机运行Debian 11,其中没有一台能够使用.local开箱即用mDNS解析任何主机。下面是在 the上运行的ping输出。本地

代码语言:javascript
复制
brain@junk:~$ ping atom.local    
ping: atom.local: Name or service not known

本地来自我运行Ubuntu的PC,工作正常:

代码语言:javascript
复制
brain@home:~$ ping atom.local
PING atom.local (192.168.0.135) 56(84) bytes of data.
64 bytes from atomic (192.168.0.135): icmp_seq=1 ttl=64 time=0.394 ms

它们都可以使用Ubuntu21.10、atom.local和iOS使用它们的名字"junk.local“和”Windows“进行访问。硬件是相同的,两台机器通过我的路由器上的DHCP服务获得它们的网络设置。在atom.local网络上,由网络(基本服务器安装)管理,在junk.local -上由NetworkManager (桌面+ KDE安装)管理。我尝试了许多指南,配置avahi,nsswitch,systemd解决,NetworkManager,其中没有为我工作。修改/etc/rupv.conf i可以得到一些结果。

  1. nameserver 192.168.0.1即默认的DNS服务器(我的路由器),.local主机无法解析。同样的结果,ifI使用我的ISP的DNS服务器。
  2. nameserver 127.0.0.1 .local名称被解析,没有其他任何原因。
  3. nameserver 127.0.0.53我从我的Ubuntu中复制了它,一切都很好!此外,我在Google的8.8.8.8中得到了同样的结果

现在我有一个问题:如何正确配置这个mDNS?为什么它在Google服务器上运行得很好?在这个网站上阅读了大量的操作和答案之后,我有点困惑。

在我的nsswitch.conf中,我有这样一行:

代码语言:javascript
复制
hosts:          files mdns4_minimal [NOTFOUND=return] dns

avahi-解析和<>avahi-在这些机器上浏览很好。

如果我使用127.0.0.53或8.8.8.8作为名称服务器,我将获得IPV6地址

代码语言:javascript
复制
brain@junk:~$ getent hosts atom.local
fe80::207:32ff:fe4e:7d17 atom.local

所以这个mdns4_minimal什么都不做?现在我完全糊涂了。

EN

回答 1

Unix & Linux用户

发布于 2021-12-06 20:02:31

对于最小的服务器安装,只需使用组合式+<#>systemd解决的

sudo nano /etc/systemd/resolved.conf取消评论MulticastDNS=yes

sudo nano /etc/systemd/network/10-lan.network I使用了简单的配置:

代码语言:javascript
复制
[Match]
Name=enp1s0 #Put your interface here

[Network]
DHCP=ipv4
MulticastDNS=yes

启用网络d已解析的服务,启动它们:

代码语言:javascript
复制
sudo systemctl enable systemd-networkd
sudo systemctl enable systemd-resolved
sudo systemctl start systemd-networkd
sudo systemctl start systemd-resolved

禁用/屏蔽默认网络服务:

代码语言:javascript
复制
sudo systemctl disable networking

重命名或删除旧的网络内容,这一步骤对于保持/etc/ keep 已解析的服务的控制至关重要:

代码语言:javascript
复制
sudo mv /etc/network/interfaces /etc/network/interfaces.save

终于起作用了,耶!

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/680371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档