Search code examples
zeroconfavahidns-sd

Wide area service discovery via bonjur / avahi


I'm looking into wide area service discovery and bonjur / avahi seem to be really good. However, I'm a bit confused about how all this works?

So:

I have a bunch of services running in a cloud.

I have clients which can be located anywhere in the world.

I want the clients to automatically discover the services in the cloud.

I need the clients to be absolutely zero conf, so they don't know IPs, ports, nothing.

If I understand it correctly, this can be done using the above mentioned dns-sd libs. I have full access to a DNS server, so I suppose, the services can register themselves on startup using these libs and then the data can be spread through DNS servers world wide.

The clients can obtain the advertised info by querying the DNS record of my domain using bonjur / avahi tech, right?

All I need to do is to link the client with bonjur / avahi libs, and tell it which domain it should use (query). Is this correct?

Am I missing something here or is it how this works?

Thanks in advance!


Solution

  • Avahi does not currently support publishing to a wide-area server, though it can browse wide-area. So if you can dynamically update a DNS server somewhere with the appropriate records Avahi would be able to see it.

    You do however potentially have more problems to solve here including port mapping/nat traversal which Avahi does not address at all.