Rather than using a discovery server, couldn't you throw in the web3 library and use Ethereum for that purpose? You could keep the discovery server as backup for people not connected to Ethereum nodes, but for those that are you'd be fully decentralized. To keep things cheap you could use Ethereum's event logging rather than actually storing data on chain.
In any case, this is great, I've been looking for something like this.
Not sure how that would work. You would have to make some transaction on the Ethereum network for other peers to discover you, correct? That kind of makes the barrier to entry a lot harder.
On desktop, it's possible to use mDNS et al, we need something similar for browsers.
Please tell me more how I could use Ethereum for discovery of other peers though, sounds interesting.
Yes, so it'd only work for people running things like the Metamask browser plugin. It'd be nifty because it'd be fully decentralized, but for now, using the discovery server as backup would keep it working for everyone else.
In any case, this is great, I've been looking for something like this.