f3c1dde898
## Issue Addressed #3006 ## Proposed Changes This PR changes the default behaviour of lighthouse to ignore discovered IPs that are not globally routable. It adds a CLI flag, --enable-local-discovery to permit the non-global IPs in discovery. NOTE: We should take care in merging this as I will break current set-ups that rely on local IP discovery. I made this the non-default behaviour because we dont really want to be wasting resources attempting to connect to non-routable addresses and we dont want to propagate these to others (on the chance we can connect to one of these local nodes), improving discoveries efficiency.
58 lines
1.4 KiB
Bash
Executable File
58 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
#
|
|
# Starts a beacon node based upon a genesis state created by `./setup.sh`.
|
|
#
|
|
|
|
set -Eeuo pipefail
|
|
|
|
source ./vars.env
|
|
|
|
SUBSCRIBE_ALL_SUBNETS=
|
|
DEBUG_LEVEL=${DEBUG_LEVEL:-info}
|
|
|
|
# Get options
|
|
while getopts "d:sh" flag; do
|
|
case "${flag}" in
|
|
d) DEBUG_LEVEL=${OPTARG};;
|
|
s) SUBSCRIBE_ALL_SUBNETS="--subscribe-all-subnets";;
|
|
h)
|
|
echo "Start a beacon node"
|
|
echo
|
|
echo "usage: $0 <Options> <DATADIR> <NETWORK-PORT> <HTTP-PORT>"
|
|
echo
|
|
echo "Options:"
|
|
echo " -s: pass --subscribe-all-subnets to 'lighthouse bn ...', default is not passed"
|
|
echo " -d: DEBUG_LEVEL, default info"
|
|
echo " -h: this help"
|
|
echo
|
|
echo "Positional arguments:"
|
|
echo " DATADIR Value for --datadir parameter"
|
|
echo " NETWORK-PORT Value for --enr-udp-port, --enr-tcp-port and --port"
|
|
echo " HTTP-PORT Value for --http-port"
|
|
exit
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Get positional arguments
|
|
data_dir=${@:$OPTIND+0:1}
|
|
network_port=${@:$OPTIND+1:1}
|
|
http_port=${@:$OPTIND+2:1}
|
|
|
|
exec lighthouse \
|
|
--debug-level $DEBUG_LEVEL \
|
|
bn \
|
|
$SUBSCRIBE_ALL_SUBNETS \
|
|
--datadir $data_dir \
|
|
--testnet-dir $TESTNET_DIR \
|
|
--enable-private-discovery \
|
|
--staking \
|
|
--enr-address 127.0.0.1 \
|
|
--enr-udp-port $network_port \
|
|
--enr-tcp-port $network_port \
|
|
--port $network_port \
|
|
--http-port $http_port \
|
|
--disable-packet-filter \
|
|
--target-peers $((BN_COUNT - 1))
|