avahi-browse -a 不显示任何结果

avahi-browse -a 不显示任何结果

avahi-daemon在 Debian 9.1 服务器上运行;但是,avahi-browse -a在我的家庭网络(由单个网络组成)中不显示任何服务192.168.178.0/24

我可以访问所有客户端(ping在适用的情况下使用 和进行测试ssh)并且

server# tcpdump port 5353

给出了我的客户的大量输出,例如,

15:30:07.206879 IP Client-OSX.fritz.box.mdns > 224.0.0.251.mdns: 0 [20a] [9q] PTR (QM)? _services._dns-sd._udp.local. PTR (QM)? _http._tcp.local. PTR (QM)? _ipp._tcp.local. PTR (QM)? _pdl-datastream._tcp.local. PTR (QM)? _printer._tcp.local. PTR (QM)? _scanner._tcp.local. PTR (QM)? _privet._tcp.local. PTR (QM)? _http-alt._tcp.local. PTR (QM)? _ssh._tcp.local. (847)

但是,我的客户端看不到我的服务器,反之亦然,但客户端可以看到彼此的服务,例如,

client1# avahi-browse -a
+ enp0s25 IPv6 client2      SSH Remote Terminal  local
+ enp0s25 IPv4 my-printer   _privet._tcp         local
...

/etc/avahi/avahi-daemon.conf

[server]
host-name=alexandria
#domain-name=local
browse-domains=fritz.box
use-ipv4=yes
use-ipv6=yes
allow-interfaces=eno1 eno2
# deny-interfaces=eth1
# check-response-ttl=no
# use-iff-running=no
enable-dbus=yes
# disallow-other-stacks=no
allow-point-to-point=yes
# cache-entries-max=4096
# clients-max=4096
# objects-per-client-max=1024
# entries-per-entry-group-max=32
ratelimit-interval-usec=1000000
ratelimit-burst=1000

[wide-area]
enable-wide-area=yes

[publish]
disable-publishing=no
#disable-user-service-publishing=no
#add-service-cookie=no
publish-addresses=yes
publish-hinfo=no
publish-workstation=no
publish-domain=yes
#publish-dns-servers=192.168.50.1, 192.168.50.2
publish-resolv-conf-dns-servers=yes
publish-aaaa-on-ipv4=yes
#publish-a-on-ipv6=no

[reflector]
enable-reflector=yes
#reflect-ipv=no

[rlimits]
#rlimit-as=
rlimit-core=0
rlimit-data=4194304
rlimit-fsize=0
rlimit-nofile=768
rlimit-stack=4194304
rlimit-nproc=3

客户端运行 Kubuntu 16.04 和 macOS。

我缺少什么?

答案1

为了使您的服务器对 Ubuntu 客户端可见,请在 debian avahi 守护程序配置文件中更改

publish-workstation=no

publish-workstation=yes

接下来重启avahi-daemon服务。

答案2

经过几个月这在我的笔记本电脑上不起作用后,我意识到问题是 iptables...(就我而言,必须iptables-legacy具体检查!)

因为我有时将其连接到会议和其他公共网络,所以拥有防火墙规则似乎是明智的。但如果这些阻止 5353/udp 数据包,那么当我在家时,mDNS 将无法工作。

不知道这是否是您 4-5 年前的问题,但是......这个结果在“avahi sees no Hosts”中显示得很高。希望我的评论有一天能对某人有所帮助。

答案3

在 Rocky Linux 9(RHEL、CentOS)上,avahi-browse 没有向我显示任何内容,因为默认情况下,分配给任何无线连接的“公共”区域的防火墙不允许 mdns。我必须通过运行以下命令将我的 wi-fi 重新分配给防火墙区域“home”:

sudo firewall-cmd --zone=home --change-interface=wlp8s0f3u4

其中“wlp8s0f3u4”是我的 Wi-Fi 接口名称。你可以从

ip a

它的名称应该以“wl”开头

答案4

avahi-browse 需要libnss-mdns包并且/etc/nsswitch.conf必须在其hosts:行中附加两个条目mdns mdns4,即

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns

net-tools我还通过首先安装getifconfig然后运行来将多播添加到接口中

服务器$ ifconfig eth0 allmulti

相关内容