Opened 11 years ago

Last modified 11 years ago

#537 new enhancement

Multicast DNS

Reported by: Jiri Svoboda Owned by:
Priority: minor Milestone:
Component: helenos/unspecified Version: mainline
Keywords: Cc:
Blocker for: Depends on: #189
See also: #502


Implement the ability to configure an mDNS link-local host name (and announce it on the network), to resolve link-local host names, resolve conflicts, as per RFC 6762 Multicast DNS.

Optionally, continuously monitor the link-local namespace (for an always up-to-date picture) and allow listing out all local host names.

Change History (4)

comment:1 by Jiri Svoboda, 11 years ago

Depends on: #189

comment:2 by Jiri Svoboda, 11 years ago

Unfortunately it seems there is no way of explicitly querying for all local host names with mDNS - we can only monitor the network and present hosts that have announced themselves or that have responded to a specific name→address query. With DNS-SD we can list all services published on the network (and hence all hosts that publish services), but not hosts that do not publish any services.

comment:3 by Jiri Svoboda, 11 years ago

One idea that comes to mind is using an ICMP Echo Request on the subnets' broadcast addresses to find all hosts, then reverse-(m)DNS lookup to find their host names. Not sure whether it's worth the trouble.

comment:4 by Jiri Svoboda, 11 years ago

It appears that UNIX hosts will respond to an ICMP Echo request (sent via Solaris ping command) destined to their subnet's broadcast address. The problem is, however, that the response will be destined to the unicast address of origin. This means that other hosts would not be able to observe it (i.e. each newly connected host would have to send a new Echo Request, it could not simply wait for a few seconds and observe if anyone else is asking the same question) and this would make the protocol inefficient. Need to test what happens if ICMP Echo Request is sent with broadcast source address (though I am afraid this will not be responded to). It is not possible to sent an ICMP Echo Request with broadcast source address using Linux/Solaris ping command.

Note: See TracTickets for help on using tickets.