Added new DNS seed from bitcoinstats.com. #3481

pull cdecker wants to merge 1 commits into bitcoin:master from cdecker:bitcoinstats_seed changing 1 files +1 −0
  1. cdecker commented at 10:37 AM on January 2, 2014: contributor

    This adds a new bootstrapping DNS seed to the list.

    I assume they are in alphabetical order, hence the positioning.

    I had a short discussion with sipa during the last Zurich Meetup and he said I should go ahead and get this pulled into the mainline client.

  2. jgarzik commented at 2:41 PM on January 2, 2014: contributor

    DNS seeds are currently semi-trusted infrastructure (alas), which implies an increased validation requirement for new DNS seeds.

    Questions, which may be answered in this thread (ideal) or via private email to core (not ideal): who runs bitcoinstats.com? What is the software? What style of data sampling is used to obtain node lists? How frequently are the node lists recycled on the DNS servers? etc.

  3. cdecker commented at 3:19 PM on January 2, 2014: contributor

    Sure, I'll try to answer all questions that may arise.

    The site is run by me, cdecker, as part of my research into the bitcoin network. I'm already doing measurements on the network population so adding a way to support the network by offering a DNS seed seems like a good way to give back.

    The entire software stack is hosted at ETH Zurich, on some personal machines I am using for my own research and other projects. It's custom built crawler on top of my Bitcoin protocol implementation that listens for addr announcements and then attempts to connect to the advertised host (I took great care to control the rate at which individual hosts are tested in order to minimize impact). The DNS server is implemented in python and returns a sample of the most recent successful tests, this should ensure that only actually reachable hosts are referred.

    Results are stored in a DB in real time, and periodically refreshed by the DNS server every 5 seconds. The TTL is set to 60 seconds, in accordance with the DNS server by dashjr, sipa and bluematt.

    So far it's looking good. I implemented a small tester tool that retrieves DNS bootstrap data and tests the returned nodes for reachability:

    download

    The reachability of nodes returned by seed.bitcoinstats.com is well above 90% and comparable with sipa's and dashjr's DNS seeds.

    Please let me know if any additional information is required.

  4. jgarzik commented at 3:51 PM on January 2, 2014: contributor

    Small tech note: the DNS seed list is ordered, but not a simple alphabetic sort. Most notably, my DNS seed (xf2.org) is intentionally last, because it is a static, manually updated list.

    I would propose that new DNS seeds -- this pull req being a clear example -- should always be added at the end of the list -- modulo the special case of seeds like xf2.org.

    Therefore, put your entry just above xf2.org, and I'll ACK the PR.

  5. laanwj commented at 8:42 AM on January 3, 2014: member

    I can't comment on the risks of adding another DNS seed. Otherwise, it would seem to me that having more geographically distributed DNS seeds is a good thing:

    • bitcoin.sipa.be → Rotterdam, The Netherlands
    • dnsseed.bluematt.me → New York, United States
    • dnsseed.bitcoin.dashjr.org → Buffalo, United States
    • bitseed.xf2.org → Skyland, United States

    The one to be added

    • seed.bitcoinstats.com → Zurich, Switzerland

    So ACK from me for that.

    One question: as you say this is hosted on personal machines, how long do you intend to keep this running?

    Nit: Please squash into one commit

  6. Added new DNS seed from bitcoinstats.com. cdc11b3228
  7. cdecker commented at 1:17 PM on January 3, 2014: contributor

    Thanks Wladimir, I do agree that spreading the seeds across the globe increases resilience. The same applies to the software used by the seeds, otherwise a single bug may take them all down at once.

    The machines running the seed are my personal work machines. The reason I mentioned it is to assure you that I'm the only one that has access to these machines and I'm the one responsible for them. There is no end of life planned, and hardware will be replaced as necessary.

    I squashed the commits as requested (didn't know you could do that this easily on Github).

  8. BitcoinPullTester commented at 1:20 PM on January 3, 2014: none

    Automatic sanity-testing: PASSED, see http://jenkins.bluematt.me/pull-tester/cdc11b3228a833f32640f1d81314f5fe92cf945b for binaries and test log. This test script verifies pulls every time they are updated. It, however, dies sometimes and fails to test properly. If you are waiting on a test, please check timestamps to verify that the test.log is moving at http://jenkins.bluematt.me/pull-tester/current/ Contact BlueMatt on freenode if something looks broken.

  9. sipa commented at 2:50 PM on January 3, 2014: member

    Just for the record, I'm in favor of encouraging (many?) more dns seeds. First of all to be as independent as possible, but also to minimize the degree to which a single seed can influence peer finding on the network.

  10. jgarzik commented at 2:52 PM on January 3, 2014: contributor

    @sipa I'm all for that, though for completeness, revisiting the DNS seed picking code would be needed should the list grow much longer. It is an in-order walk, right now.

  11. jgarzik referenced this in commit e8837b384d on Jan 3, 2014
  12. jgarzik merged this on Jan 3, 2014
  13. jgarzik closed this on Jan 3, 2014

  14. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-03 03:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me