1

我正在创建一个嵌入式设备(基于 RPi),它将连接到本地网络。我希望此设备能够通过网页配置设备(与许多路由器非常相似)。

我希望用户在 Web 浏览器中键入 [http://my-device-config](或其他一些固定地址)并被发送到配置页面,而无需知道设备的 IP 地址。

用户将采取的步骤如下:

  1. 用户将设备插入网络/打开设备。
  2. 用户在浏览器中输入“配置”地址并被带到配置页面。(无需网络配置/IP 查找等)

根据研究,我相信 Avahi (/Bonjour/Zeroconf) 可以使这成为可能,但我不清楚以下几点:

  1. Avahi 是最简单的方法吗?
  2. 如果我的设备是本地网络上运行 Avahi 的唯一设备,它会起作用吗?(即不需要在网络上的任何其他计算机上安装软件)。
  3. 它可以跨平台工作(osx/*nix/windows)吗?
  4. 它会跨浏览器工作吗?

感谢您的任何帮助/见解。

4

1 回答 1

0
  1. 它是最简单和最可互操作的,但对于您的情况来说还不够。
  2. 简短的回答是否定的。更长的答案-通常Apple的东西都带有它们,Linux通常带有Avahin On,除非您对其进行配置,否则Windows世界不会动手指。但替代方案更糟糕。
  3. 在某种程度上,是的,它会的。Avahi 是开源实现(阅读 linux/bsd 世界),而 Apple 的东西有自己的专有东西(他们开始了整个 zeroconf 的故事),而 Windows 世界有自己的 zeroconf 实现。您还需要在特定的本地网络中没有人使用 .local 域 - 公司拥有的网络将具有一定的非零概率 .local 已经由微软网络填充。
  4. 嗯,理论上是的——Avahi 本质上是低规模的 DNS,几乎没有其他低级的东西组成。因此,如果您的系统具有 DNS 解析器,并且它可以具有在 Avahi 客户端/服务器挂钩下方拉动的插件 - 那么浏览器应该可以正常工作。在过去的几年里,我在 Linux 机器上使用 Firefox 和其他网络设备(例如通过打印机上的 avahi-pointed web 服务器配置打印机)没有副作用。他们的地址看起来像http://my-device.localhttp://thatprinterfromfloor5.localwhatever.local
于 2013-06-21T13:24:19.210 回答