5 ms·
Zeroconf is fantastic for discovering services, but hardly anyone supports it. Apple removed it from Safari, 3 years ago [1]. It's been an open feature reques
by ken 6y ago
Zeroconf is fantastic for discovering services, but hardly anyone supports it. Apple removed it from Safari, 3 years ago [1]. It's been an open feature request in Chromium for 11 years [2], and in Firefox for 18 years [3].
The only major database I know which supports it is Postgres (it's disabled by default) [4]. On MySQL, it's an open work item, untouched for 13 years [5].
Last I checked, no major web framework broadcasts its service using Zeroconf.
Zeroconf service broadcast is so easy to implement (really) and such a tremendous help to users that I don't understand why developers aren't falling over themselves to implement it.
[1]: https://apple.stackexchange.com/questions/299700 https://apple.stackexchange.com/questions/299700
[2]: https://bugs.chromium.org/p/chromium/issues/detail?id=13573 https://bugs.chromium.org/p/chromium/issues/detail?id=13573
[3]: https://bugzilla.mozilla.org/show_bug.cgi?id=173804 https://bugzilla.mozilla.org/show_bug.cgi?id=173804
[4]: https://www.postgresql.org/docs/9.1/runtime-config-connection.html https://www.postgresql.org/docs/9.1/runtime-config-connectio...
[5]: https://dev.mysql.com/worklog/?sc=id&sd=ASC&pg=3 https://dev.mysql.com/worklog/?sc=id&sd=ASC&pg=3
- apearson 6y agoThe browser support you listed is for listing out the available sites. The browsers still support mdns for name resolution. Zeroconf is used in Google Cast and Airplay for service discovery.
- ken 6y agoAs Apple's Bonjour page points out, addressing and naming is only 2/3 of it. If that's all you support, then you still depend on users knowing the name, and typing it with no mistakes -- not exactly "zero configuration". 1980's AppleTalk was better than that. How do browsers 'support mDNS for name resolution'? Isn't that a feature of the OS? I can "ping NAS.local" (without a DNS server) just as easily as I can go to "http://NAS.local" http://NAS.local", and ping.c doesn't appear to have any mDNS code.
- apearson 6y agoRight there still a need for apps and browsers to surface mDNS services but the parent comment made it seem like the browsers can't use mDNS at all. You're are correct, mDNS name resolution is an OS feature and to the browser/program/app it makes no difference.
- goont 6y agoNotably Android doesn't support mDNS as part of general hostname resolution. (There is the NSD API available but you have to explicitly use it, and the browsers do not.)
- lilyball 6y agoApple removed the built-in display of _http._tcp. services. I don’t know why they chose to do this, but very few applications ever bothered to advertise this service. By far the most common use-case was for printer configuration UIs, which can be found specifically with the _printer._sub._http._tcp subtype. Apple’s print configuration UIs still expose a way to get to the printer web interface and this presumably uses _printer._sub._http._tcp. Having said all that, I do wish Safari still supported it.