在没有 mDNS 的情况下创建本地可发现的服务

Create locally discoverable service without mDNS

我正在尝试创建一个在 Raspberry Pi 上运行的服务。我希望该服务以 Firefox 附加组件或 Web 扩展能够找到它的方式广播自身。我考虑过使用 mDNS,但这需要用户安装 mDNS 程序,而且我不确定在附加组件中我是否可以访问 mDNS 服务。我该如何进行?

注意:该服务只需要在本地 LAN 上可被发现。

家庭网络中的自动选项是:

  • mDNS
  • LLMNR
  • 支持将本地 DHCP 通告的主机名插入其本地 DNS 区域的路由器
  • 手卷组播

由于浏览器扩展 API 不公开本机套接字,您必须希望这些解决方案之一已经可用,或者向您的用户提供如何配置它们的说明。

Mozilla 正在开发一种名为 FlyWeb 的基于 mDNS 的浏览器解决方案,但目前这项工作似乎已经完全失败。