Opened 12 years ago
Last modified 12 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 |
Description
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 , 12 years ago
Depends on: | → #189 |
---|
comment:2 by , 12 years ago
comment:3 by , 12 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 , 12 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.
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.