Commit Graph

74 Commits

Author SHA1 Message Date
MacroFake
19585eeb77
Merge bitcoin/bitcoin#25853: net: update testnet torv3 hardcoded seeds for 24.x
2ef33e936e contrib: update testnet torv3 hardcoded seeds (Jon Atack)

Pull request description:

  As a follow-up to https://github.com/bitcoin/bitcoin/issues/13550 and #22060, replace the mostly unreachable testnet torv3 hardcoded seeds from v0.22 with new ones that are consistently reachable recently and that have service bit 1 set.

  This needs to be done before v24.0 to make sure onion-only testnet nodes can still connect to the network.

  Ways to test:

  - Re-generate `src/chainparamsseeds.h` with `cd contrib/seeds && python3 generate-seeds.py . > ../../src/chainparamsseeds.h`, check if git tree stays the same
  - Re-compile and create a new testnet node with `bitcoind -testnet -dnsseed=0 -onlynet=onion -proxy=127.0.0.1:9050` (or delete `~/.bitcoin/testnet3/peers.dat` and launch bitcoind with `-testnet -dnsseed=0`). Make sure there are no `addnode=` in your `bitcoin.conf`. The debug log should print "Adding fixed seeds".  Check if the node is able to connect to the network and get blocks with for ex. `watch -t ./src/bitcoin-cli -testnet -rpcwait -netinfo 4`
  - Check the addrman contains the seeds by running for ex. `bitcoin-cli -rpcwait -testnet getnodeaddresses 0 onion | jq -r '.[] | (.address + ":" + (.port|tostring) + " " + (.services|tostring))' | sort`

  - Check if the addresses are connectable, for ex. with this python script by laanwj:

  ```python3
  #!/usr/bin/env python3
  import pprint
  import subprocess
  with open('contrib/seeds/nodes_test.txt') as f:
      for line in (line for line in (line.rstrip().split('#', 1)[0] for line in f) if line):
          pprint.pprint(line)
          subprocess.call(["nc", "-v", "-x", "127.0.0.1:9050", "-z"] + line.split(':'))
  ```

  Thanks to satsie (Stacie Waleyko) for help with the list.

ACKs for top commit:
  satsie:
    ACK 2ef33e936e
  laanwj:
    ACK 2ef33e936e

Tree-SHA512: 72d27ecba243089bd49c11e921855fba626a1e09ae9b17508254a3bbec4bec341ed6c3d5a4eabc2d37f20bafb8a47ecc7d125e0dda956512a9525ad83273ffd6
2022-09-09 10:07:39 +02:00
Jon Atack
2ef33e936e contrib: update testnet torv3 hardcoded seeds
- remove unreachable seeds
- add reachable seeds having service bit 1
- update chainparamsseeds.h

Co-authored-by: "Stacie <staciewaleyko@gmail.com>"
2022-08-28 14:34:49 +02:00
Jon Atack
9b6f5fafa9 net: update hardcoded mainnet seeds for 24.x
following the steps in contrib/seeds/README.md
2022-08-24 00:04:00 +02:00
Jon Atack
7fd9028017 contrib: make-seeds updates for 24.x 2022-08-24 00:00:53 +02:00
Jon Atack
6075a0be3c net: update manual hardcoded mainnet seeds for 24.x
torv3/i2p/cjdns seeds selected for reachability, uptime and service bit 1
2022-08-24 00:00:52 +02:00
Marnix
20c58a3e50 doc: typo fix 2022-06-18 18:34:50 +02:00
laanwj
667e316bcb contrib: Update makeseeds to asmap-nextgen 2022-06-01 14:40:04 +02:00
Jon Atack
ae00b9e02c contrib: add seeds progress indicator and remove asmap one in makeseeds script 2022-05-31 11:57:49 +02:00
laanwj
b54180303d contrib: Use asmap for ASN lookup in makeseeds
Add an argument `-a` to provide a asmap file to do the IP to ASN
lookups.

This speeds up the script greatly, and makes the output deterministic.
Also removes the dependency on `dns.lookup`.

I've annotated the output with ASxxxx comments to provide a way to
verify the functionality.

For now I've added instructions in README.md to download and use the
`demo.map` from the asmap repository. When we have some other mechanism
for distributing asmap files we could switch to that.

This continues #24824. I've removed all the fallbacks and extra
complexity, as everyone will be using the same instructions anyway.

Co-authored-by: Pieter Wuille <pieter.wuille@gmail.com>
Co-authored-by: James O'Beirne <james.obeirne@pm.me>
Co-authored-by: russeree <reese.russell@ymail.com>
2022-05-31 11:57:49 +02:00
laanwj
2f629f8089 contrib: Remove suspicious hosts list from makeseeds
I have some qualms with maintaining a suspicious hosts list as part as
the repository. But also, it's stale and irrelevant. I've checked the
entire list and none of them is connectable. Only one still appars in
`nodes_main.txt` but with low uptime and an old subversion string so it
wouldn't be picked in the first place.
2022-04-15 14:12:15 +02:00
Baas
c457fb144c improve clarity and up max ipv6 ASNs 2022-04-14 23:07:17 +02:00
laanwj
d80dc12097 net: Update hardcoded seeds for 23.x 2022-02-22 15:15:27 +01:00
laanwj
9f27157894 contrib: make-seeds updates for 23.x
Documentation:

- Use https URL for bitcoin.sipa.be (http sends a redirect, fooling
curl).
- Add explicit step to add manual seeds.

Code:

- Change PATTERN_ONION to v3 (effectively means that the no onion hosts
are delivered).
- Add versions to PATTERN_AGENT filter.
- Print specific message on resolve exception.
2022-02-22 15:04:46 +01:00
Jon Atack
bcc5676f16
p2p, contrib: update i2p hardcoded seeds
Remove unresponsive seeds, and add one that has been up for the past half year.
2022-01-26 12:58:23 +01:00
Jon Atack
e5332425fc
p2p, contrib: add cjdns hardcoded seeds 2022-01-26 12:58:12 +01:00
Vasil Dimov
420695c193
contrib: recognize CJDNS seeds as such
An IPv6 address from fc00::/8 could be either from the CJDNS network or
from a private-unroutable-reserved segment of IPv6. A seed node with
such an address must be from the CJDNS network, otherwise other peers
will not be able to connect to it.
2021-11-03 14:58:55 +01:00
Jon Atack
2962640c49
contrib, p2p: update I2P hardcoded seeds 2021-07-30 11:03:44 +02:00
Vasil Dimov
aeac3bce3e
net: change I2P seeds' ports to 0 2021-07-09 11:19:35 +02:00
Jon Atack
5d82a57db4
contrib: remove torv2 seed nodes 2021-06-03 14:04:06 +02:00
Jon Atack
5f7e086dac
contrib: update generate-seeds.py to ignore torv2 addresses 2021-06-03 14:04:04 +02:00
Jon Atack
6fe0516858 contrib: add torv3 seed nodes for testnet, drop v2 ones 2021-05-25 16:07:56 +02:00
Jon Atack
e01f173fb9
contrib: add a few I2P seed nodes 2021-05-02 13:37:48 +02:00
Jon Atack
ea269c7ef1
contrib: parse I2P addresses in generate-seeds.py 2021-05-02 13:37:41 +02:00
W. J. van der Laan
9b29d5df7f contrib: Add explicit port numbers for testnet seeds
This is necessary now due to parsing change.
2021-04-05 14:00:48 +02:00
W. J. van der Laan
2a257de113 contrib: Add a few TorV3 seed nodes 2021-04-05 14:00:48 +02:00
W. J. van der Laan
06030f7a42 contrib: generate-seeds.py generates output in BIP155 format 2021-04-05 13:59:40 +02:00
Wladimir J. van der Laan
cddcd22ab3
Merge #20288: script, doc: contrib/seeds updates
961f148cb1 doc: update contrib/seeds/README dnspython installation info (Jon Atack)
dd7b5f46d8 script: fix deprecation warning in makeseeds.py (Jon Atack)

Pull request description:

  Seen while reviewing #20237.

  1. Fix a deprecation warning in `contrib/seeds/makeseeds.py`
  ```
      makeseeds.py:139: DeprecationWarning: please use dns.resolver.resolve() instead
        asn = int([x.to_text() for x in dns.resolver.query('.'.join(
  ```
    - Per https://dnspython.readthedocs.io/en/latest/whatsnew.html, `dns.resolver.query()` was deprecated in `dnspython` version 2.0.0.

    - See https://dnspython.readthedocs.io/en/latest/resolver-class.html for more info on the resolver class.

  2. Update the `dnspython` dependency installation instructions in `contrib/seeds/README`

    - The markdown rendering can be seen here: https://github.com/jonatack/bitcoin/tree/contrib-seeds-fixups/contrib/seeds

ACKs for top commit:
  laanwj:
    code review ACK 961f148cb1

Tree-SHA512: f9c4f318a1a0d35b8de147d24b72c534a1f58eece31e7cfa00b4149a63b6a618d8ca0312f52fd8056f3c645cf2ee68574ca02319fddffdad919a70cd33395d33
2020-11-19 10:40:46 +01:00
Jon Atack
961f148cb1
doc: update contrib/seeds/README dnspython installation info 2020-11-02 20:54:59 +01:00
Jon Atack
dd7b5f46d8
script: fix deprecation warning in makeseeds.py
makeseeds.py:139: DeprecationWarning: please use dns.resolver.resolve() instead
  asn = int([x.to_text() for x in dns.resolver.query('.'.join(

per https://dnspython.readthedocs.io/en/latest/whatsnew.html
dns.resolver.query() was deprecated in dnspython version 2.0.0
2020-11-02 20:54:57 +01:00
Wladimir J. van der Laan
6866259fab net: Hardcoded seeds update for 0.21
Stats:

```
  IPv4   IPv6  Onion Pass
426728  59523   7900 Initial
426728  59523   7900 Skip entries with invalid address
426728  59523   7900 After removing duplicates
426727  59523   7900 Skip entries from suspicious hosts
123226  51785   7787 Enforce minimal number of blocks
121710  51322   7586 Require service bit 1
  4706   1427   3749 Require minimum uptime
  4124   1098   3681 Require a known and recent user agent
  4033   1075   3681 Filter out hosts with multiple bitcoin ports
   512    140    512 Look up ASNs and limit results per ASN and per net
```
2020-10-25 14:25:00 +01:00
RandyMcMillan
36e875b4c5 contrib: Add new versions to makeseeds.py and update gitignore 2020-10-25 14:08:33 +01:00
MarcoFalke
fa488f131f
scripted-diff: Bump copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
2020-04-16 13:33:09 -04:00
Wladimir J. van der Laan
0eeb0468e7 net: Hardcoded seeds update for 0.20
Update hardcoded seeds from seeds_emzy.txt seeds_lukejr.txt
seeds_sipa.txt seeds_sjors.txt, according to release process.

Output from makeseeds.py:
```
  IPv4   IPv6  Onion Pass
1364173 244127   2454 Initial
1364173 244127   2454 Skip entries with invalid address
1129552 213117   2345 After removing duplicates
1129548 213117   2345 Skip entries from suspicious hosts
338216 191944   2249 Enforce minimal number of blocks
336851 188993   2189 Require service bit 1
  6998   1520    150 Require minimum uptime
  5682   1290     89 Require a known and recent user agent
  5622   1279     89 Filter out hosts with multiple bitcoin ports
   512    146     89 Look up ASNs and limit results per ASN and per net
```
2020-04-03 16:29:26 +02:00
Wladimir J. van der Laan
7e841f3f9b
Merge #17823: scripts: Read suspicious hosts from a file instead of hardcoding
e1c582cbaa contrib: makeseeds: Read suspicious hosts from a file instead of hardcoding (Sanjay K)

Pull request description:

  referring to: https://github.com/bitcoin/bitcoin/issues/17020
  good first issue: reading SUSPICIOUS_HOSTS from a file.
  I haven't changed the base hosts that were included in the original source, just made it readable from a file.

ACKs for top commit:
  practicalswift:
    ACK e1c582cbaa -- diff looks correct

Tree-SHA512: 18684abc1c02cf52d63f6f6ecd98df01a9574a7c470524c37e152296504e2e3ffbabd6f3208214b62031512aeb809a6d37446af82c9f480ff14ce4c42c98e7c2
2020-01-20 20:24:38 +01:00
Sanjay K
e1c582cbaa contrib: makeseeds: Read suspicious hosts from a file instead of hardcoding 2020-01-06 19:48:58 -05:00
MarcoFalke
aaaaad6ac9
scripted-diff: Bump copyright of files changed in 2019
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
2019-12-30 10:42:20 +13:00
Brian Solon
0b1dcd32bf
contrib: fix minor typos in makeseeds.py
See #17020
2019-10-03 14:50:08 -04:00
Wladimir J. van der Laan
0218171a24 contrib: Remove invalid nodes from seeds list 2019-10-02 08:51:12 +02:00
Wladimir J. van der Laan
3b09f2b9d9 net: 0.19 hardcoded seeds update 2019-10-01 11:38:48 +02:00
Wladimir J. van der Laan
801d341f3a contrib: makeseeds: More fancy output 2019-10-01 11:39:41 +02:00
Wladimir J. van der Laan
ed76299bea contrib: makeseeds: Limit per network, instead of total 2019-10-01 11:39:35 +02:00
Wladimir J. van der Laan
c254a9ef69 contrib: makeseeds: dedup by ip,port
Handle the multiple ports per IP case (as that's a criterion later).
2019-10-01 11:39:29 +02:00
Wladimir J. van der Laan
3314d87966 contrib: makeseeds: Factor out ASN lookup 2019-10-01 11:39:14 +02:00
Wladimir J. van der Laan
301c2b1ab5 contrib: makeseeds: Improve logging and filtering
- Change regular expression to cover recent versions, as well as
  subversions with custom uacomment, and improve readability.
- Vary uptime requirements per network (onions are allowed to have less
  uptime, to make sure we get enough of them)
- Add deduplication step (to allow simple concatentation of multiple seeds files).
- Log of number of nodes (per network) after every step.
2019-10-01 11:38:48 +02:00
Ben Woosley
b21680baf5
test/contrib: Fix invalid escapes in regex strings
Flagged by flake8 v3.6.0, as W605, plus a few others identified
incidentally, e.g. 59ffecf66cf4d08c4b431e457b083878d66a3fd6.

Note that r"\n" matches to "\n" under re.match/search.
2019-09-03 14:38:38 -04:00
Emil
316b8b2339 Filter IPv6 by ASN 2019-04-17 17:32:05 +00:00
MarcoFalke
176aa5aa1d contrib: fix GetDesirableServiceFlags typo in seeds/README.md 2018-08-13 15:11:24 +02:00
Wladimir J. van der Laan
825fb02ef1 net: Update hardcoded seeds
Pre-0.17 branch hardcoded seeds update.
2018-08-13 13:57:15 +02:00
Wladimir J. van der Laan
61c0d3b9aa contrib: in makeseeds, add 0.16.x to PATTERN_AGENT, remove 0.13.x 2018-08-13 13:51:06 +02:00
DrahtBot
eb7daf4d60 Update copyright headers to 2018 2018-07-27 07:15:02 -04:00