在 RHEL 7 服务器上使用 avahi 的目的是什么?

max*_*zig 22 rhel centos avahi ipv6

使用 CentOS 7 运行服务器机器,我注意到 avahi 服务默认运行。

我有点想知道它的目的是什么。

它似乎做的一件事(在我的环境中)是随机禁用 IPv6 连接,在日志中看起来像这样:

Oct 20 12:23:29 example.org 
  avahi-daemon[779]: Withdrawing address record for fd00::1:2:3:4 on eno1
Oct 20 12:23:30 example.org
  Withdrawing address record for 2001:1:2:3:4:5:6:7
Oct 20 12:23:30 example.org
  Registering new address record for fe80::1:2:3:4 on eno1.*.
Run Code Online (Sandbox Code Playgroud)

(后缀1:2:3...是编的)

事实上,在此之后,公共2001:1:2:3:4:5:6:7IPv6 地址将不再可访问。

因此,我通过以下方式禁用了 avahi 服务:

# systemctl disable avahi-daemon.socket avahi-daemon.service
# systemctl mask avahi-daemon.socket avahi-daemon.service
# systemctl stop avahi-daemon.socket avahi-daemon.service
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还没有注意到任何限制。

因此,我的问题是关于服务器系统上 avahi 的用例。

slm*_*slm 24

Avahi 是 Bonjour/Zeroconf 的开源实现。

摘录 - http://avahi.org/

Avahi 是一个通过 mDNS/DNS-SD 协议套件促进本地网络上服务发现的系统。这使您可以将笔记本电脑或计算机连接到网络,并立即能够查看可以与之聊天的其他人、查找要打印的打印机或查找正在共享的文件。Apple MacOS X(品牌为?Bonjour,有时为Zeroconf)中提供了兼容技术。

详细的描述维基百科文章一起在这里。该ArchLinux的文章是比较有用的,指定类型,可以从受益的avahi服务的。

过去我通常在服务器上禁用它,因为我过去管理的每台服务器都被明确告知它需要访问的各种资源。

Avahi 的两大优势是名称解析和查找打印机,但在服务器上,在托管环境中,它的价值不大。

  • @TommySvensson,也许必须区分“家庭服务器”(在受信任的网络中)和托管网站、提供邮件服务等(在一种敌对环境中)的“真实”互联网服务器。AFAIU,avahi 缩进用于家庭网络使用,即您甚至无法真正区分客户端和服务器(即许多服务提供机器也是客户端)。 (3认同)
  • 似乎无用且有问题。我总是卸载它。甚至不会费心去弄清楚如何禁用它。 (2认同)

小智 6

您可能需要运行以下命令

systemctl disable avahi-daemon.socket avahi-daemon.service 
Run Code Online (Sandbox Code Playgroud)

请注意,上述只会暂时禁用 avahi。为了防止自动重新启用,它需要被屏蔽:

systemctl mask avahi-daemon.socket avahi-daemon.service 
Run Code Online (Sandbox Code Playgroud)

为什么,哦,为什么供应商会构建强制依赖 avahi 的软件包?