User Tools

Site Tools


doc:howto:zeroconf

Table of Contents

Zero configuration networking in OpenWrt

Zero-configuration networking (zeroconf) is a methodology and a set of special technologies that automatically creates a usable computer network based on the Internet Protocol Suite (TCP/IP) when computers or network peripherals are interconnected. It does not require manual operator intervention or special configuration servers. Zeroconf

There are different Zeroconf "solutions" that are incompatible because they use different ways of network communication.

OpenWrt offers several different packages supporting the different Zeroconfig implementations:

  • Avahi (Linux) - avahi-daemon, avahi-utils
  • Bonjour (Apple) - mdnsresponder
  • Zeroconf/UPnP SSDP (Microsoft)
  • mdns (OpenWrt own package)

:!: Many programs can be compiled with zeroconf support. However due to size restrictions this support is most likely deactivated by default. Compile your own image.

:!: Currently there is little DNS-SD support on Windows, since it uses incompatible UPnP SSDP.

:!: The .local domain is reserved for (zeroconfig) multicast dns rfc6762, .local.

Zero configuration can be important for mobile wireless ad-hoc networks and internal service announcements, address and routing.

mdns

In OpenWrt since r41345

 mdns: add the new openwrt mdns daemon

this is still wip, you can use the following ubus calls.

ubus call mdns scan # triggers a scan
ubus call mdns browse # look at the currenlty cached records
ubus call mdns hosts # look at the currenlty cached hosts

avahi

avahi-daemon: mDNS daemon avahi-utils: lookup utility avahi-browse

In order to announce http and ssh services to the network, do:

opkg update
opkg install avahi-daemon-service-ssh avahi-daemon-service-http

mdnsresponder

Install the mdnsresponder package:

# opkg update
# opkg install mdnsresponder

Edit the /etc/mDNSResponder.conf file, which contains a list of service descriptions:

"SSH Service"
_ssh._tcp. local
22
Local SSH Service

"Web Service"
_http._tcp. local
80
Local Web Service

Once all your services are configured, you can enable and start the mDNSResponder:

# /etc/init.d/mDNSResponder enable
# /etc/init.d/mDNSResponder start

doc/howto/zeroconf.txt · Last modified: 2017/09/11 11:09 by alfwatt