27

I've seen references to both strewn around. Specifically, is there a bitcoin client running at the DNS seeds or seed nodes?

4 Answers 4

26
+50

As you correctly identified, there are two types of seed nodes, i.e. DNS seeds and seed nodes. DNS seeds are stored in chainparams.cpp. As of today (September 2021) the following nodes are listed in this file.

  • seed.bitcoin.sipa.be
  • dnsseed.bluematt.me
  • dnsseed.bitcoin.dashjr.org
  • seed.bitcoinstats.com
  • seed.bitcoin.jonasschnelli.ch
  • seed.btc.petertodd.org
  • seed.bitcoin.sprovoost.nl
  • dnsseed.emzy.de
  • seed.bitcoin.wiz.biz

I performed nslookups on these DNS names and they return a list of IP addresses that all seemed to be running bitcoin nodes.

There is also the concept of seed nodes which are hardcoded IP addresses in the event that someone is experiencing a DNS failure or other issue. These nodes are only contacted if no other discovery mechanism works.

You can also use -seednode option to connect to a node (IP address) to retrieve peer addresses, then disconnect.

1
7

No, the DNS seeds are not running a Bitcoin client. The DNS seed nodes only give you a list of IP addresses that are running (or were recently running) a Bitcoin client. In the source code you can see that the DNS seed nodes are contacted only to get a list of addresses.

Source: https://github.com/bitcoin/bitcoin/blob/master/src/net.cpp#L1210

2
  • 2
    I'm having trouble seeing that from the code you linked to. Reading the source my impression is that the DNS records point to nodes understanding a bitcoin-specific protocol that allows them to be queried for (addresses of) peers, in the same way a proper bitcoin client could be queried. So why isn't it fair to say these nodes run (at least) a partial, and likely a full, bitcoin node (client, service, or whatever one might wish to call it)?
    – user6049
    Commented Nov 28, 2013 at 15:50
  • DNS records are what the DNS returns, that is a list of addresses corresponding to nodes running the Bitcoin client. The DNS itself is not required to run Bitcoin. However, the current standard for Bitcoin DNS (github.com/sipa/bitcoin-seeder) also implement a 'crawler' function, which search the web for running nodes to add to the list. To that purpose, DNS seeders implement some small Bitcoin functions to communicate with active nodes. Still they are not considered as active nodes unless they also run a Bitcoin client on the same server.
    – FedFranz
    Commented Nov 23, 2017 at 13:41
4

2017 values are:

  • seed.bitcoin.sipa.be
  • dnsseed.bluematt.me
  • dnsseed.bitcoin.dashjr.org
  • seed.bitcoinstats.com
  • seed.bitcoin.jonasschnelli.ch
  • seed.btc.petertodd.org
2
  • Thanks for the update, although I'd say it would have been a great suggested edit for the accepted answer on this question.
    – Murch
    Commented Apr 10, 2017 at 11:58
  • For sure, will do that next time. Commented Apr 10, 2017 at 20:47
2

Yes, all "seed nodes" refer to bitcoin clients known (or suspected) to be more or less permanently available. The DNS seed nodes are those reached via DNS lookup; the others via their IP address. A more thorough answer (including other initial "bootstrapping" connection methods than these hardcoded seeds) has been given to another question.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.