mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 04:22:55 +01:00
015e30fa0b
## Issue being fixed or feature implemented We did not previously ship any onion seeds. This results in people needing to use `addnode` in order to actually get connected ## What was done? Modified seed creation process to handle a list of onion seeds. ## How Has This Been Tested? Running with and without onlynet=onion and with dnsseed=0 and deleting peers.dat ## Breaking Changes None ## Checklist: - [x] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ |
||
---|---|---|
.. | ||
generate-seeds.py | ||
makeseeds.py | ||
nodes_main.txt | ||
nodes_test.txt | ||
onion_seeds.txt | ||
README.md | ||
suspicious_hosts.txt |
Seeds
Utility to generate the seeds.txt list that is compiled into the client (see src/chainparamsseeds.h and other utilities in contrib/seeds).
The seeds compiled into the release are created from the current protx list, like this:
dash-cli protx list valid 1 2018966 > protx_list.json
# Make sure the onion seeds still work!
while IFS= read -r line
do
address=$(echo $line | cut -d':' -f1)
port=$(echo $line | cut -d':' -f2)
nc -v -x 127.0.0.1:9050 -z $address $port
done < "onion_seeds.txt"
python3 makeseeds.py protx_list.json onion_seeds.txt > nodes_main.txt
python3 generate-seeds.py . > ../../src/chainparamsseeds.h
Make sure to use a recent block height in the "protx list" call. After updating, create a PR and specify which block height you used so that reviewers can re-run the same commands and verify that the list is as expected.
Dependencies
Ubuntu:
sudo apt-get install python3-pip
pip3 install dnspython