Search code examples
dnsp2pdhtkademlia

Participation in a Kademlia network via DNS seeds


If a node wants to participate in a Kademlia network, it will look-up a bootstrap node as part of the bootstrapping process. In fact, this Java implementation seems to do the same.

In the Bitcoin protocol, too, a node will look up to know, who are the other peer nodes. And, the preferred mode seems to be DNS seeds. Quoting from this answer,

Nowadays the Bitcoin Core client, and many other implementations, rely on DNS seeds. DNS seeds are special DNS servers that are configured to return a number of randomly selected nodes from the network. The operators of the DNS seeds also run crawlers to enumerate the publicly reachable nodes that are to be returned by the seeds.

Does such a look-up mechanism exist for Kademlia nodes?


Solution

  • My question is, can Kademlia rely on DNS seeds to look up the first node?

    Yes, that is one possibility. Ideally you will want to use DNS SRV records to allow non-standard ports, but A/AAAA records will do too if the seed nodes have known ports.