net: Hardcoded seeds update for 0.18 #15791

pull laanwj wants to merge 4 commits into bitcoin:master from laanwj:2019_04_hardcoded_seeds_update changing 3 files +2488 −2073
  1. laanwj commented at 10:19 am on April 11, 2019: member

    I’ve followed the steps in https://github.com/bitcoin/bitcoin/blob/master/contrib/seeds/README.md but it seems all the hardcoded onion peers except for two are being erased, for some reason.

    Do not merge as-is (might be ready after including results from multiple seeds)

  2. laanwj added the label P2P on Apr 11, 2019
  3. laanwj force-pushed on Apr 11, 2019
  4. laanwj commented at 11:14 am on April 11, 2019: member

    Added some debugging of the funnel

     0Initial: IPv4 407890, IPv6 56492, Onion 715
     1Skip entries with valid address: IPv4 407890, IPv6 56492, Onion 715
     2Skip entries from suspicious hosts: IPv4 407889, IPv6 56492, Onion 715
     3Enforce minimal number of blocks: IPv4 104845, IPv6 48821, Onion 617
     4Require service bit 1: IPv4 104650, IPv6 48759, Onion 607
     5Require at least 50% 30-day uptime: IPv4 4961, IPv6 966, Onion 19
     6Require a known and recent user agent: IPv4 3408, IPv6 628, Onion 2
     7Filter out hosts with multiple bitcoin ports: IPv4 3402, IPv6 624, Onion 2
     8ERR: Could not resolve ASN for "91.195.42.134"
     9ERR: Could not resolve ASN for "150.187.36.233"
    10Look up ASNs and limit results, both per ASN and globally: IPv4 512, IPv6 624, Onion 2
    

    These are the onion-killers:

    • Require at least 50% 30-day uptime
    • Require a known and recent user agent
  5. laanwj force-pushed on Apr 11, 2019
  6. laanwj added this to the milestone 0.18.0 on Apr 11, 2019
  7. laanwj commented at 12:33 pm on April 11, 2019: member
    would be useful to have seeds.txt.gz files from the vintage point of other crawlers, to see if this drop in onion nodes and their reliability is an actual thing @TheBlueMatt @luke-jr @cdecker @jonasschnelli @petertodd @Sjors @emzy
  8. Emzy commented at 1:01 pm on April 11, 2019: contributor
    Here is mine. seeds_emzy.txt.gz
  9. laanwj commented at 1:07 pm on April 11, 2019: member
    thank you @Emzy! however, your list doesn’t have onion addresses at all
  10. Emzy commented at 1:49 pm on April 11, 2019: contributor
    New file with onion addresses. ("-o" option on) seeds_emzy.txt.gz
  11. luke-jr commented at 1:53 pm on April 11, 2019: member

    Mine is here: https://luke.dashjr.org/programs/bitcoin/files/charts/data/seeds.txt (161 MB)

    (And mine has never done onion)

  12. petertodd commented at 3:33 pm on April 11, 2019: contributor
  13. net: Add known bitcoind versions to makeseeds script
    Widen range of versions.
    9284107b7e
  14. contrib: Print diagnostic information in makeseeds 7607c7a600
  15. contrib: Remove duplicates in makeseeds.py
    Simple way to handle concatenating the output of multiple DNS seeds.
    1497538f07
  16. net: Hardcoded seeds update for 0.18
    Follow steps in `contrib/seeds/README.md`
    b0ae2fa9e9
  17. laanwj force-pushed on Apr 11, 2019
  18. laanwj commented at 5:09 pm on April 11, 2019: member

    Thanks, combining all those, removing duplicates, and running them through ./makeseeds.py ends up with: IPv4 512, IPv6 781, Onion 171

    This is okay—the old list had 176 onion hosts, and 1092 IPv4+IPv6.

    Pushed the new list.

  19. laanwj renamed this:
    [do not merge] net: Hardcoded seeds update for 0.18
    net: Hardcoded seeds update for 0.18
    on Apr 11, 2019
  20. DrahtBot commented at 6:00 pm on April 11, 2019: member

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #15778 ([wallet] Move maxtxfee from node to wallet by jnewbery)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  21. Sjors commented at 7:37 pm on April 11, 2019: member

    My seed found 587 onion nodes in the past couple of hours, 26 of which are marked “good”. Should I just upload the list here, or give it a bit more time? Would those new nodes even get added given the 30 day criterion?

    Update: here you go: dnsseed.dump.gz. I made a note to make a PR in a month or so for my onion nodes.

  22. in contrib/seeds/makeseeds.py:33 in b0ae2fa9e9
    29@@ -30,7 +30,7 @@
    30 PATTERN_IPV4 = re.compile(r"^((\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})):(\d+)$")
    31 PATTERN_IPV6 = re.compile(r"^\[([0-9a-z:]+)\]:(\d+)$")
    32 PATTERN_ONION = re.compile(r"^([abcdefghijklmnopqrstuvwxyz234567]{16}\.onion):(\d+)$")
    33-PATTERN_AGENT = re.compile(r"^(/Satoshi:0.14.(0|1|2|99)/|/Satoshi:0.15.(0|1|2|99)|/Satoshi:0.16.(0|1|2|99)/)$")
    34+PATTERN_AGENT = re.compile(r"^(/Satoshi:0.14.(0|1|2|3|99)/|/Satoshi:0.15.(0|1|2|99)|/Satoshi:0.16.(0|1|2|3|99)/|/Satoshi:0.17.(0|1|2|99)/|/Satoshi:0.18.99/)$")
    


    Sjors commented at 7:47 pm on April 11, 2019:
    We should add an instruction to add new version here in /contrib/seeds/README.md.

    laanwj commented at 7:45 am on April 12, 2019:

    There is one:

    Be sure to update PATTERN_AGENT in makeseeds.py to include the current version, and remove old versions as necessary (at a minimum when GetDesirableServiceFlags changes its default return value, as those are the services which seeds are added to addrman with).


    luke-jr commented at 5:46 pm on April 12, 2019:
    Should we perhaps exclude nodes vulnerable to CVE-2018-17144?

    luke-jr commented at 5:46 pm on April 12, 2019:
    And why is this only including Core nodes in the first place?

    Sjors commented at 7:07 pm on April 12, 2019:
    CVE-2018-17144: for their own protection? But they’ll be known anyway through the gossip and seeds.
  23. Sjors commented at 7:54 pm on April 11, 2019: member

    Should we update the 4 year old SUSPICIOUS_HOSTS list?

    Maybe use a scripted-diff for the generate-seeds.py command (which produces the hard to read .h file)?

  24. cdecker commented at 8:18 pm on April 11, 2019: contributor

    would be useful to have seeds.txt.gz files from the vintage point of other crawlers, to see if this drop in onion nodes and their reliability is an actual thing

    Since my seed uses a custom crawler and DNS implementation I can’t provide the file in question, but I’m more than happy to check proposed nodes for uptime in my database :-)

  25. jonasschnelli commented at 7:38 am on April 12, 2019: contributor
    I also don’t run with -o dnsseed.dump.zip
  26. laanwj commented at 7:54 am on April 12, 2019: member

    Should we update the 4 year old SUSPICIOUS_HOSTS list?

    Possibly. I think maintaining this as part of the repository at all is a bit questionable, I don’t think bitcoin core development should focus on judging individual nodes. But if you have any suggestions, feel free to add them.

    Maybe use a scripted-diff for the generate-seeds.py command (which produces the hard to read .h file)?

    I think this is a good idea but maybe do this for a future release, after updating the instructions how to do this? For now, can verify the list by running the python3 generate-seeds.py . > ../../src/chainparamsseeds.h command yourself.

    Apart from that, for review (and testing) please focus on the contrib/seeds/nodes_main.txt list.

  27. practicalswift commented at 8:32 am on April 12, 2019: contributor

    Concept ACK on removing SUSPICIOUS_HOSTS

    Given the current number of nodes we should be robust also in the presence of a few bad IP:s (currently 16 listed suspicious IP:s).

  28. laanwj commented at 8:40 am on April 12, 2019: member

    Concept ACK on removing SUSPICIOUS_HOSTS

    Yes—I think this is a valid discussion but please move it to a new issue. Here we just want the things for rc4 (and this was a part of the release process that was forgotten) in so that we can continue with the release :-)

  29. jonatack commented at 10:18 am on April 12, 2019: member
    Without the -o option: 2019-04_dnsseed_0-18-0-rc3.dump.gz
  30. laanwj commented at 7:24 am on April 16, 2019: member
    Closing this: doesn’t seem to be an improvement over the current state, so would be better to skip it this time, and discuss how to handle this before next major release…
  31. laanwj closed this on Apr 16, 2019

  32. Sjors commented at 3:21 pm on September 30, 2019: member
  33. laanwj commented at 3:25 pm on September 30, 2019: member
    @Sjors thanks!
  34. DrahtBot locked this on Dec 16, 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: 2024-09-29 04:12 UTC

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