I'm writing TCP/IP code for a DHCP enabled network device. Is there a universal way this device can announce its hostname in-the-wild that pretty much all web browsers (on osx/linux/win) can access it by name? (e.g. http://mydevice/index.htm)

A solution that allows the end-user to use their "stock" computer without stringent requirements like installing packages such as bonjour for windows, have a dns server on their network, etc.

zeroconf/dns-sd doesn't work on windows machines that don't have bonjour (or similar) service installed and LLMNR doesn't work on osx machines out of the box.

If there is no single way of doing this, would conforming to both dns-sd and LLMNR cover most of the installed OS base out there?

有帮助吗?

解决方案

From what I can gather, in order to cover hostname resolution in a dns-less network, ZeroConf/mDns/Dns-Sd and NetBios (NetBt) are required to cover windows based, and Osx based system (most linux systems also suppor ZeroConf).

NetBt doesn't support IpV6, and LLMNR is supported by Vista and onwards Microsoft developed operating systems. So a "universal" name resolution method might have to implement all three.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top