Add additional seeders to example configurations

This also changes the recommended CoreDNS configuration to allow using
the DNS names of other seeders even under a bare systemd deployment.
This commit is contained in:
George Tankersley 2020-06-11 14:02:07 -04:00
parent 37fa9bd8fd
commit 4bd1ae2a09
5 changed files with 18 additions and 17 deletions

View File

@ -19,7 +19,7 @@ ${BUILD_DIR}/coredns: ${BUILD_DIR}
bash scripts/build.sh
install: ${BUILD_DIR}/coredns
bash scripts/install_systemd.sh
bash scripts/install_systemd.sh example.com
uninstall:
bash scripts/uninstall_systemd.sh

View File

@ -20,11 +20,11 @@ TODO
### Deploying from binary to a generic systemd Linux
Check the releases page for a tarball. Extract the contents anywhere, change to that directory, then run `sudo make install`.
Check the releases page for a tarball. Extract the contents anywhere, change to that directory, then run `sudo make install`. Then edit `/etc/dnsseeder/Corefile` to replace instances of "example.com" with your desired DNS names.
### Deploying from source to a generic systemd Linux
Clone this repo to the machine you want to deploy to, which will need to have a working Go build environment. Then run `sudo make install` and you're good to go. If you'd prefer not to do that, the only part of the build and install process that actually *needs* elevated permissions is linking the systemd configuration.
Clone this repo to the machine you want to deploy to, which will need to have a working Go build environment. Then run `sudo make install`, edit `/etc/dnsseeder/Corefile` with your DNS names, and you're good to go. If you'd prefer not to do that, the only part of the build and install process that actually *needs* elevated permissions is linking the systemd configuration.
Further down the rabbit hole, you can look at what `scripts/build.sh` and `scripts/install_systemd.sh` do and then do that manually instead. It's Go, so you can pretty much just `scp` the coredns binary and Corefile to wherever you want.

View File

@ -1,18 +1,16 @@
# Bootstrap from mainnet.z.cash
mainnet.seeder.yolo.money {
mainnet.seeder.example.com {
dnsseed {
network mainnet
bootstrap_peers 104.236.180.231:8233
bootstrap_peers mainnet.z.cash:8233 dnsseed.str4d.xyz:8233 mainnet.is.yolo.money:8233 mainnet.seeder.zfnd.org:8233
crawl_interval 30m
record_ttl 600
}
}
# Bootstrap from testnet.z.cash
testnet.seeder.yolo.money {
testnet.seeder.example.com {
dnsseed {
network testnet
bootstrap_peers 198.199.112.230:18233
bootstrap_peers testnet.z.cash:18233 testnet.is.yolo.money:18233 testnet.seeder.zfnd.org:18233
crawl_interval 15m
record_ttl 300
}

View File

@ -7,19 +7,19 @@ if [ ! -d /etc/dnsseeder ]; then
fi
cat <<EOF > /etc/dnsseeder/Corefile
mainnet.seeder.zfnd.org {
mainnet.seeder.example.com {
dnsseed {
network mainnet
bootstrap_peers mainnet.z.cash:8233
bootstrap_peers mainnet.z.cash:8233 dnsseed.str4d.xyz:8233 mainnet.is.yolo.money:8233 mainnet.seeder.zfnd.org:8233
crawl_interval 30m
record_ttl 600
}
}
testnet.seeder.zfnd.org {
testnet.seeder.example.com {
dnsseed {
network testnet
bootstrap_peers testnet.z.cash:18233
bootstrap_peers testnet.z.cash:18233 testnet.is.yolo.money:18233 testnet.seeder.zfnd.org:18233
crawl_interval 15m
record_ttl 300
}

View File

@ -10,18 +10,21 @@ if [ ! -d /etc/systemd/resolved.conf.d ]; then
fi
cp build_output/coredns /etc/dnsseeder/coredns
cp coredns/Corefile /etc/dnsseeder/Corefile
cat <<EOF >> /etc/dnsseeder/Corefile
cat <<EOF > /etc/dnsseeder/Corefile
# Replace systemd-resolved so we can bind .:53 without breaking the system DNS.
# Load-balances forwarded queries across Cloudflare and both Google DNS servers
. {
bind 127.0.0.53
cache 120
forward . 1.1.1.1 8.8.8.8 8.8.4.4
forward . 1.1.1.1 8.8.8.8 8.8.4.4 {
except ${1}
}
}
EOF
cat coredns/Corefile >> /etc/dnsseeder/Corefile
cp systemd/dnsseeder.service /etc/dnsseeder/
cp systemd/10-resolved-override.conf /etc/dnsseeder/