It <i>shouldn&#x27;t</i> be an issue, but it <i>actually is</i>. There is the exact same problem in bittorrent space: there&#x27;s a BEP (extension) for discovering peers using Zeroconf (BEP 0026, as can be read in [1]) and &quot;Local Peer Discovery&quot; that doesn&#x27;t even have a BEP.<p>The Zeroconf way is kind of cumbersome, especially if you don&#x27;t have an easy way to do the whole mDNS and DNS-SD. And since Windows doesn&#x27;t have a native way to do this (you need to use the Apple SDK) and it seems most bittorrent users are Windows users, nobody seriously bothered with that.<p>LPD on the other hand is the simplest thing you can ever think about (<a href="https:&#x2F;&#x2F;forum.utorrent.com&#x2F;topic&#x2F;54306-local-peer-discovery-documentation&#x2F;" rel="nofollow">https:&#x2F;&#x2F;forum.utorrent.com&#x2F;topic&#x2F;54306-local-peer-discovery-...</a>):<p>&gt; in short: join the multicast group 239.192.152.143:6771 and listen for SSDP messages. Every 5 minutes, announce yourself to the multicast group by sending this message:<p>&gt; snprintf(msg, 200,
&quot;BT-SEARCH * HTTP&#x2F;1.1\r\n&quot;
&quot;Host: 239.192.152.143:6771\r\n&quot;
&quot;Port: %d\r\n&quot;
&quot;Infohash: %s\r\n&quot;
&quot;\r\n\r\n&quot;, listen_port, ih_hex);<p>I&#x27;ll agree with you that if everyone talked Zeroconf it would be great, but the truth is, it&#x27;s far too heavy and difficult compared to the alternative of polling a simple UDP socket, which pretty much any language can do easily.<p>[1] <a href="http:&#x2F;&#x2F;bittorrent.org&#x2F;beps&#x2F;bep_0026.html" rel="nofollow">http:&#x2F;&#x2F;bittorrent.org&#x2F;beps&#x2F;bep_0026.html</a>