mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-09 03:31:45 +00:00
1394 lines
100 KiB
Plaintext
1394 lines
100 KiB
Plaintext
Lighthouse v4.3.0-dfcb336
|
|
Sigma Prime <contact@sigmaprime.io>
|
|
Ethereum 2.0 client by Sigma Prime. Provides a full-featured beacon node, a validator client and utilities for managing
|
|
validator accounts.
|
|
|
|
USAGE:
|
|
lighthouse [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-l Enables environment logging giving access to sub-protocol logs such as discv5
|
|
and libp2p
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
SUBCOMMANDS:
|
|
account_manager Utilities for generating and managing Ethereum 2.0 accounts. [aliases: a, am, account,
|
|
account_manager]
|
|
beacon_node The primary component which connects to the Ethereum 2.0 P2P network and downloads, verifies
|
|
and stores blocks. Provides a HTTP API for querying the beacon chain and publishing messages
|
|
to the network. [aliases: b, bn, beacon]
|
|
boot_node Start a special Lighthouse process that only serves as a discv5 boot-node. This process will
|
|
*not* import blocks or perform most typical beacon node functions. Instead, it will simply
|
|
run the discv5 service and assist nodes on the network to discover each other. This is the
|
|
recommended way to provide a network boot-node since it has a reduced attack surface
|
|
compared to a full beacon node.
|
|
database_manager Manage a beacon node database [aliases: db]
|
|
help Prints this message or the help of the given subcommand(s)
|
|
validator_client When connected to a beacon node, performs the duties of a staked validator (e.g., proposing
|
|
blocks and attestations). [aliases: v, vc, validator]
|
|
|
|
lighthouse-account_manager
|
|
Utilities for generating and managing Ethereum 2.0 accounts.
|
|
|
|
USAGE:
|
|
lighthouse account_manager [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
SUBCOMMANDS:
|
|
help Prints this message or the help of the given subcommand(s)
|
|
validator Provides commands for managing Eth2 validators.
|
|
wallet Manage wallets, from which validator keys can be derived.
|
|
|
|
lighthouse-account_manager-validator
|
|
Provides commands for managing Eth2 validators.
|
|
|
|
USAGE:
|
|
lighthouse account_manager validator [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
--validator-dir <VALIDATOR_DIRECTORY>
|
|
The path to search for validator directories. Defaults to ~/.lighthouse/{network}/validators
|
|
|
|
|
|
SUBCOMMANDS:
|
|
create Creates new validators from an existing EIP-2386 wallet using the EIP-2333 HD key
|
|
derivation scheme.
|
|
exit Submits a VoluntaryExit to the beacon chain for a given validator keystore.
|
|
help Prints this message or the help of the given subcommand(s)
|
|
import Imports one or more EIP-2335 passwords into a Lighthouse VC directory, requesting
|
|
passwords interactively. The directory flag provides a convenient method for importing a
|
|
directory of keys generated by the eth2-deposit-cli Python utility.
|
|
list Lists the public keys of all validators.
|
|
modify Modify validator status in validator_definitions.yml.
|
|
recover Recovers validator private keys given a BIP-39 mnemonic phrase. If you did not specify a
|
|
`--first-index` or count `--count`, by default this will only recover the keys associated
|
|
with the validator at index 0 for an HD wallet in accordance with the EIP-2333 spec.
|
|
slashing-protection Import or export slashing protection data to or from another client
|
|
|
|
lighthouse-account_manager-validator-modify
|
|
Modify validator status in validator_definitions.yml.
|
|
|
|
USAGE:
|
|
lighthouse account_manager validator modify [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
SUBCOMMANDS:
|
|
disable Disable validator(s) in validator_definitions.yml.
|
|
enable Enable validator(s) in validator_definitions.yml.
|
|
help Prints this message or the help of the given subcommand(s)
|
|
|
|
lighthouse-account_manager-validator-slashing-protection
|
|
Import or export slashing protection data to or from another client
|
|
|
|
USAGE:
|
|
lighthouse account_manager validator slashing-protection [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
SUBCOMMANDS:
|
|
export Export an interchange file
|
|
help Prints this message or the help of the given subcommand(s)
|
|
import Import an interchange file
|
|
|
|
lighthouse-account_manager-wallet
|
|
Manage wallets, from which validator keys can be derived.
|
|
|
|
USAGE:
|
|
lighthouse account_manager wallet [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
--wallets-dir <WALLETS_DIRECTORY>
|
|
A path containing Eth2 EIP-2386 wallets. Defaults to ~/.lighthouse/{network}/wallets
|
|
|
|
|
|
SUBCOMMANDS:
|
|
create Creates a new HD (hierarchical-deterministic) EIP-2386 wallet.
|
|
help Prints this message or the help of the given subcommand(s)
|
|
list Lists the names of all wallets.
|
|
recover Recovers an EIP-2386 wallet from a given a BIP-39 mnemonic phrase.
|
|
|
|
lighthouse-beacon_node 4.3.0
|
|
Sigma Prime <contact@sigmaprime.io>
|
|
The primary component which connects to the Ethereum 2.0 P2P network and downloads, verifies and stores blocks. Provides
|
|
a HTTP API for querying the beacon chain and publishing messages to the network.
|
|
|
|
USAGE:
|
|
lighthouse beacon_node [FLAGS] [OPTIONS]
|
|
|
|
FLAGS:
|
|
--always-prefer-builder-payload If set, the beacon node always uses the payload from the builder instead
|
|
of the local payload.
|
|
--always-prepare-payload Send payload attributes with every fork choice update. This is intended
|
|
for use by block builders, relays and developers. You should set a fee
|
|
recipient on this BN and also consider adjusting the --prepare-payload-
|
|
lookahead flag.
|
|
--builder-fallback-disable-checks This flag disables all checks related to chain health. This means the
|
|
builder API will always be used for payload construction, regardless of
|
|
recent chain conditions.
|
|
--compact-db If present, apply compaction to the database on start-up. Use with
|
|
caution. It is generally not recommended unless auto-compaction is
|
|
disabled.
|
|
--disable-backfill-rate-limiting Disable the backfill sync rate-limiting. This allow users to just sync
|
|
the entire chain as fast as possible, however it can result in resource
|
|
contention which degrades staking performance. Stakers should generally
|
|
choose to avoid this flag since backfill sync is not required for
|
|
staking.
|
|
--disable-deposit-contract-sync Explictly disables syncing of deposit logs from the execution node. This
|
|
overrides any previous option that depends on it. Useful if you intend to
|
|
run a non-validating beacon node.
|
|
--disable-discovery Disables the discv5 discovery protocol. The node will not search for new
|
|
peers or participate in the discovery protocol.
|
|
-x, --disable-enr-auto-update Discovery automatically updates the nodes local ENR with an external IP
|
|
address and port as seen by other peers on the network. This disables
|
|
this feature, fixing the ENR's IP/PORT to those specified on boot.
|
|
--disable-lock-timeouts Disable the timeouts applied to some internal locks by default. This can
|
|
lead to less spurious failures on slow hardware but is considered
|
|
experimental as it may obscure performance issues.
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag
|
|
will generally increase memory usage, it should only be provided when
|
|
debugging specific memory allocation issues.
|
|
--disable-optimistic-finalized-sync Force Lighthouse to verify every execution block hash with the execution
|
|
client during finalized sync. By default block hashes will be checked in
|
|
Lighthouse and only passed to the EL if initial verification fails.
|
|
--disable-packet-filter Disables the discovery packet filter. Useful for testing in smaller
|
|
networks
|
|
--disable-proposer-reorgs Do not attempt to reorg late blocks from other validators when proposing.
|
|
--disable-upnp Disables UPnP support. Setting this will prevent Lighthouse from
|
|
attempting to automatically establish external port mappings.
|
|
--dummy-eth1 If present, uses an eth1 backend that generates static dummy
|
|
data.Identical to the method used at the 2019 Canada interop.
|
|
--enable-private-discovery Lighthouse by default does not discover private IP addresses. Set this
|
|
flag to enable connection attempts to local addresses.
|
|
-e, --enr-match Sets the local ENR IP address and port to match those set for lighthouse.
|
|
Specifically, the IP address will be the value of --listen-address and
|
|
the UDP port will be --discovery-port.
|
|
--eth1 If present the node will connect to an eth1 node. This is required for
|
|
block production, you must use this flag if you wish to serve a
|
|
validator.
|
|
--eth1-purge-cache Purges the eth1 block and deposit caches
|
|
--genesis-backfill Attempts to download blocks all the way back to genesis when checkpoint
|
|
syncing.
|
|
-h, --help Prints help information
|
|
--http Enable the RESTful HTTP API server. Disabled by default.
|
|
--http-allow-sync-stalled Forces the HTTP to indicate that the node is synced when sync is actually
|
|
stalled. This is useful for very small testnets. TESTING ONLY. DO NOT USE
|
|
ON MAINNET.
|
|
--http-enable-tls Serves the RESTful HTTP API server over TLS. This feature is currently
|
|
experimental.
|
|
--import-all-attestations Import and aggregate all attestations, regardless of validator
|
|
subscriptions. This will only import attestations from already-subscribed
|
|
subnets, use with --subscribe-all-subnets to ensure all attestations are
|
|
received for import.
|
|
--light-client-server Act as a full node supporting light clients on the p2p network
|
|
[experimental]
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed
|
|
to store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they
|
|
can be read by any user on the machine. Note that logs can often contain
|
|
sensitive information about your validator and so this flag should be
|
|
used with caution. For Windows users, the log file permissions will be
|
|
inherited from the parent folder.
|
|
--metrics Enable the Prometheus metrics HTTP server. Disabled by default.
|
|
--private Prevents sending various client identification information.
|
|
--proposer-only Sets this beacon node at be a block proposer only node. This will run the
|
|
beacon node in a minimal configuration that is sufficient for block
|
|
publishing only. This flag should be used for a beacon node being
|
|
referenced by validator client using the --proposer-node flag. This
|
|
configuration is for enabling more secure setups.
|
|
--purge-db If present, the chain database will be deleted. Use with caution.
|
|
--reconstruct-historic-states After a checkpoint sync, reconstruct historic states in the database.
|
|
This requires syncing all the way back to genesis.
|
|
--reset-payload-statuses When present, Lighthouse will forget the payload statuses of any already-
|
|
imported blocks. This can assist in the recovery from a consensus
|
|
failure caused by the execution layer.
|
|
--shutdown-after-sync Shutdown beacon node as soon as sync is completed. Backfill sync will not
|
|
be performed before shutdown.
|
|
--slasher Run a slasher alongside the beacon node. It is currently only recommended
|
|
for expert users because of the immaturity of the slasher UX and the
|
|
extra resources required.
|
|
--staking Standard option for a staking beacon node. This will enable the HTTP
|
|
server on localhost:5052 and import deposit logs from the execution node.
|
|
This is equivalent to `--http` on merge-ready networks, or `--http
|
|
--eth1` pre-merge
|
|
--subscribe-all-subnets Subscribe to all subnets regardless of validator count. This will also
|
|
advertise the beacon node as being long-lived subscribed to all subnets.
|
|
--validator-monitor-auto Enables the automatic detection and monitoring of validators connected to
|
|
the HTTP API and using the subnet subscription endpoint. This generally
|
|
has the effect of providing additional logging and metrics for locally
|
|
controlled validators.
|
|
-V, --version Prints version information
|
|
-z, --zero-ports Sets all listening TCP/UDP ports to 0, allowing the OS to choose some
|
|
arbitrary free ports.
|
|
|
|
OPTIONS:
|
|
--auto-compact-db <auto-compact-db>
|
|
Enable or disable automatic compaction of the database on finalization. [default: true]
|
|
|
|
--block-cache-size <SIZE>
|
|
Specifies how many blocks the database should cache in memory [default: 5]
|
|
|
|
--boot-nodes <ENR/MULTIADDR LIST>
|
|
One or more comma-delimited base64-encoded ENR's to bootstrap the p2p network. Multiaddr is also supported.
|
|
|
|
--builder <builder>
|
|
The URL of a service compatible with the MEV-boost API.
|
|
|
|
--builder-fallback-epochs-since-finalization <builder-fallback-epochs-since-finalization>
|
|
If this node is proposing a block and the chain has not finalized within this number of epochs, it will NOT
|
|
query any connected builders, and will use the local execution engine for payload construction. Setting this
|
|
value to anything less than 2 will cause the node to NEVER query connected builders. Setting it to 2 will
|
|
cause this condition to be hit if there are skips slots at the start of an epoch, right before this node is
|
|
set to propose. [default: 3]
|
|
--builder-fallback-skips <builder-fallback-skips>
|
|
If this node is proposing a block and has seen this number of skip slots on the canonical chain in a row, it
|
|
will NOT query any connected builders, and will use the local execution engine for payload construction.
|
|
[default: 3]
|
|
--builder-fallback-skips-per-epoch <builder-fallback-skips-per-epoch>
|
|
If this node is proposing a block and has seen this number of skip slots on the canonical chain in the past
|
|
`SLOTS_PER_EPOCH`, it will NOT query any connected builders, and will use the local execution engine for
|
|
payload construction. [default: 8]
|
|
--builder-profit-threshold <WEI_VALUE>
|
|
The minimum reward in wei provided to the proposer by a block builder for an external payload to be
|
|
considered for inclusion in a proposal. If this threshold is not met, the local EE's payload will be used.
|
|
This is currently *NOT* in comparison to the value of the local EE's payload. It simply checks whether the
|
|
total proposer reward from an external payload is equal to or greater than this value. In the future, a
|
|
comparison to a local payload is likely to be added. Example: Use 250000000000000000 to set the threshold to
|
|
0.25 ETH. [default: 0]
|
|
--builder-user-agent <STRING>
|
|
The HTTP user agent to send alongside requests to the builder URL. The default is Lighthouse's version
|
|
string.
|
|
--checkpoint-block <BLOCK_SSZ>
|
|
Set a checkpoint block to start syncing from. Must be aligned and match --checkpoint-state. Using
|
|
--checkpoint-sync-url instead is recommended.
|
|
--checkpoint-state <STATE_SSZ>
|
|
Set a checkpoint state to start syncing from. Must be aligned and match --checkpoint-block. Using
|
|
--checkpoint-sync-url instead is recommended.
|
|
--checkpoint-sync-url <BEACON_NODE>
|
|
Set the remote beacon node HTTP endpoint to use for checkpoint sync.
|
|
|
|
--checkpoint-sync-url-timeout <SECONDS>
|
|
Set the timeout for checkpoint sync calls to remote beacon node HTTP endpoint. [default: 60]
|
|
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--discovery-port <PORT>
|
|
The UDP port that discovery will listen on. Defaults to `port`
|
|
|
|
--discovery-port6 <PORT>
|
|
The UDP port that discovery will listen on over IpV6 if listening over both Ipv4 and IpV6. Defaults to
|
|
`port6`
|
|
--enr-address <ADDRESS>...
|
|
The IP address/ DNS address to broadcast to other peers on how to reach this node. If a DNS address is
|
|
provided, the enr-address is set to the IP address it resolves to and does not auto-update based on PONG
|
|
responses in discovery. Set this only if you are sure other nodes can connect to your local node on this
|
|
address. This will update the `ip4` or `ip6` ENR fields accordingly. To update both, set this flag twice
|
|
with the different values.
|
|
--enr-tcp-port <PORT>
|
|
The TCP4 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on
|
|
this port over IpV4. The --port flag is used if this is not set.
|
|
--enr-tcp6-port <PORT>
|
|
The TCP6 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on
|
|
this port over IpV6. The --port6 flag is used if this is not set.
|
|
--enr-udp-port <PORT>
|
|
The UDP4 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on
|
|
this port over IpV4.
|
|
--enr-udp6-port <PORT>
|
|
The UDP6 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on
|
|
this port over IpV6.
|
|
--eth1-blocks-per-log-query <BLOCKS>
|
|
Specifies the number of blocks that a deposit log query should span. This will reduce the size of responses
|
|
from the Eth1 endpoint. [default: 1000]
|
|
--eth1-cache-follow-distance <BLOCKS>
|
|
Specifies the distance between the Eth1 chain head and the last block which should be imported into the
|
|
cache. Setting this value lower can help compensate for irregular Proof-of-Work block times, but setting it
|
|
too low can make the node vulnerable to re-orgs.
|
|
--eth1-endpoint <HTTP-ENDPOINT>
|
|
Deprecated. Use --eth1-endpoints.
|
|
|
|
--eth1-endpoints <HTTP-ENDPOINTS>
|
|
One http endpoint for a web3 connection to an execution node. Note: This flag is now only useful for
|
|
testing, use `--execution-endpoint` flag to connect to an execution node on mainnet and testnets.
|
|
Defaults to http://127.0.0.1:8545.
|
|
--execution-endpoint <EXECUTION-ENDPOINT>
|
|
Server endpoint for an execution layer JWT-authenticated HTTP JSON-RPC connection. Uses the same endpoint to
|
|
populate the deposit cache.
|
|
--execution-jwt <EXECUTION-JWT>
|
|
File path which contains the hex-encoded JWT secret for the execution endpoint provided in the --execution-
|
|
endpoint flag.
|
|
--execution-jwt-id <EXECUTION-JWT-ID>
|
|
Used by the beacon node to communicate a unique identifier to execution nodes during JWT authentication. It
|
|
corresponds to the 'id' field in the JWT claims object.Set to empty by default
|
|
--execution-jwt-secret-key <EXECUTION-JWT-SECRET-KEY>
|
|
Hex-encoded JWT secret for the execution endpoint provided in the --execution-endpoint flag.
|
|
|
|
--execution-jwt-version <EXECUTION-JWT-VERSION>
|
|
Used by the beacon node to communicate a client version to execution nodes during JWT authentication. It
|
|
corresponds to the 'clv' field in the JWT claims object.Set to empty by default
|
|
--execution-timeout-multiplier <NUM>
|
|
Unsigned integer to multiply the default execution timeouts by. [default: 1]
|
|
|
|
--fork-choice-before-proposal-timeout <fork-choice-before-proposal-timeout>
|
|
Set the maximum number of milliseconds to wait for fork choice before proposing a block. You can prevent
|
|
waiting at all by setting the timeout to 0, however you risk proposing atop the wrong parent block.
|
|
[default: 250]
|
|
--freezer-dir <DIR>
|
|
Data directory for the freezer database.
|
|
|
|
--graffiti <GRAFFITI>
|
|
Specify your custom graffiti to be included in blocks. Defaults to the current version and commit, truncated
|
|
to fit in 32 bytes.
|
|
--historic-state-cache-size <SIZE>
|
|
Specifies how many states from the freezer database should cache in memory [default: 1]
|
|
|
|
--http-address <ADDRESS>
|
|
Set the listen address for the RESTful HTTP API server. [default: 127.0.0.1]
|
|
|
|
--http-allow-origin <ORIGIN>
|
|
Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not
|
|
recommended in production). If no value is supplied, the CORS allowed origin is set to the listen address of
|
|
this server (e.g., http://localhost:5052).
|
|
--http-port <PORT>
|
|
Set the listen TCP port for the RESTful HTTP API server. [default: 5052]
|
|
|
|
--http-spec-fork <FORK>
|
|
Serve the spec for a specific hard fork on /eth/v1/config/spec. It should not be necessary to set this flag.
|
|
|
|
--http-tls-cert <http-tls-cert>
|
|
The path of the certificate to be used when serving the HTTP API server over TLS.
|
|
|
|
--http-tls-key <http-tls-key>
|
|
The path of the private key to be used when serving the HTTP API server over TLS. Must not be password-
|
|
protected.
|
|
--invalid-gossip-verified-blocks-path <PATH>
|
|
If a block succeeds gossip validation whilst failing full validation, store the block SSZ as a file at this
|
|
path. This feature is only recommended for developers. This directory is not pruned, users should be careful
|
|
to avoid filling up their disks.
|
|
--libp2p-addresses <MULTIADDR>
|
|
One or more comma-delimited multiaddrs to manually connect to a libp2p peer without an ENR.
|
|
|
|
--listen-address <ADDRESS>...
|
|
The address lighthouse will listen for UDP and TCP connections. To listen over IpV4 and IpV6 set this flag
|
|
twice with the different values.
|
|
Examples:
|
|
- --listen-address '0.0.0.0' will listen over Ipv4.
|
|
- --listen-address '::' will listen over Ipv6.
|
|
- --listen-address '0.0.0.0' --listen-address '::' will listen over both Ipv4 and Ipv6. The order of the
|
|
given addresses is not relevant. However, multiple Ipv4, or multiple Ipv6 addresses will not be accepted.
|
|
[default: 0.0.0.0]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--max-skip-slots <NUM_SLOTS>
|
|
Refuse to skip more than this many slots when processing an attestation. This prevents nodes on minority
|
|
forks from wasting our time and disk space, but could also cause unnecessary consensus failures, so is
|
|
disabled by default.
|
|
--metrics-address <ADDRESS>
|
|
Set the listen address for the Prometheus metrics HTTP server. [default: 127.0.0.1]
|
|
|
|
--metrics-allow-origin <ORIGIN>
|
|
Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not
|
|
recommended in production). If no value is supplied, the CORS allowed origin is set to the listen address of
|
|
this server (e.g., http://localhost:5054).
|
|
--metrics-port <PORT>
|
|
Set the listen TCP port for the Prometheus metrics HTTP server. [default: 5054]
|
|
|
|
--monitoring-endpoint <ADDRESS>
|
|
Enables the monitoring service for sending system metrics to a remote endpoint. This can be used to monitor
|
|
your setup on certain services (e.g. beaconcha.in). This flag sets the endpoint where the beacon node
|
|
metrics will be sent. Note: This will send information to a remote sever which may identify and associate
|
|
your validators, IP address and other personal information. Always use a HTTPS connection and never provide
|
|
an untrusted URL.
|
|
--monitoring-endpoint-period <SECONDS>
|
|
Defines how many seconds to wait between each message sent to the monitoring-endpoint. Default: 60s
|
|
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--network-dir <DIR>
|
|
Data directory for network keys. Defaults to network/ inside the beacon node dir.
|
|
|
|
--port <PORT>
|
|
The TCP/UDP port to listen on. The UDP port can be modified by the --discovery-port flag. If listening over
|
|
both Ipv4 and Ipv6 the --port flag will apply to the Ipv4 address and --port6 to the Ipv6 address. [default:
|
|
9000]
|
|
--port6 <PORT>
|
|
The TCP/UDP port to listen on over IpV6 when listening over both Ipv4 and Ipv6. Defaults to 9090 when
|
|
required. [default: 9090]
|
|
--prepare-payload-lookahead <MILLISECONDS>
|
|
The time before the start of a proposal slot at which payload attributes should be sent. Low values are
|
|
useful for execution nodes which don't improve their payload after the first call, and high values are
|
|
useful for ensuring the EL is given ample notice. Default: 1/3 of a slot.
|
|
--progressive-balances <MODE>
|
|
Options to enable or disable the progressive balances cache for unrealized FFG progression calculation. The
|
|
default `checked` mode compares the progressive balances from the cache against results from the existing
|
|
method. If there is a mismatch, it falls back to the existing method. The optimized mode (`fast`) is faster
|
|
but is still experimental, and is not recommended for mainnet usage at this time. [possible values:
|
|
disabled, checked, strict, fast]
|
|
--proposer-reorg-cutoff <MILLISECONDS>
|
|
Maximum delay after the start of the slot at which to propose a reorging block. Lower values can prevent
|
|
failed reorgs by ensuring the block has ample time to propagate and be processed by the network. The default
|
|
is 1/12th of a slot (1 second on mainnet)
|
|
--proposer-reorg-disallowed-offsets <N1,N2,...>
|
|
Comma-separated list of integer offsets which can be used to avoid proposing reorging blocks at certain
|
|
slots. An offset of N means that reorging proposals will not be attempted at any slot such that `slot %
|
|
SLOTS_PER_EPOCH == N`. By default only re-orgs at offset 0 will be avoided. Any offsets supplied with this
|
|
flag will impose additional restrictions.
|
|
--proposer-reorg-epochs-since-finalization <EPOCHS>
|
|
Maximum number of epochs since finalization at which proposer reorgs are allowed. Default: 2
|
|
|
|
--proposer-reorg-threshold <PERCENT>
|
|
Percentage of vote weight below which to attempt a proposer reorg. Default: 20%
|
|
|
|
--prune-payloads <prune-payloads>
|
|
Prune execution payloads from Lighthouse's database. This saves space but imposes load on the execution
|
|
client, as payloads need to be reconstructed and sent to syncing peers. [default: true]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
--shuffling-cache-size <shuffling-cache-size>
|
|
Some HTTP API requests can be optimised by caching the shufflings at each epoch. This flag allows the user
|
|
to set the shuffling cache size in epochs. Shufflings are dependent on validator count and setting this
|
|
value to a large number can consume a large amount of memory.
|
|
--slasher-att-cache-size <COUNT>
|
|
Set the maximum number of attestation roots for the slasher to cache
|
|
|
|
--slasher-backend <DATABASE>
|
|
Set the database backend to be used by the slasher. [possible values: mdbx, lmdb, disabled]
|
|
|
|
--slasher-broadcast <slasher-broadcast>
|
|
Broadcast slashings found by the slasher to the rest of the network [Enabled by default]. [default: true]
|
|
|
|
--slasher-chunk-size <EPOCHS>
|
|
Number of epochs per validator per chunk stored on disk.
|
|
|
|
--slasher-dir <PATH>
|
|
Set the slasher's database directory.
|
|
|
|
--slasher-history-length <EPOCHS>
|
|
Configure how many epochs of history the slasher keeps. Immutable after initialization.
|
|
|
|
--slasher-max-db-size <GIGABYTES>
|
|
Maximum size of the MDBX database used by the slasher.
|
|
|
|
--slasher-slot-offset <SECONDS>
|
|
Set the delay from the start of the slot at which the slasher should ingest attestations. Only effective if
|
|
the slasher-update-period is a multiple of the slot duration.
|
|
--slasher-update-period <SECONDS>
|
|
Configure how often the slasher runs batch processing.
|
|
|
|
--slasher-validator-chunk-size <NUM_VALIDATORS>
|
|
Number of validators per chunk stored on disk.
|
|
|
|
--slots-per-restore-point <SLOT_COUNT>
|
|
Specifies how often a freezer DB restore point should be stored. Cannot be changed after initialization.
|
|
[default: 8192 (mainnet) or 64 (minimal)]
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--suggested-fee-recipient <SUGGESTED-FEE-RECIPIENT>
|
|
Emergency fallback fee recipient for use in case the validator client does not have one configured. You
|
|
should set this flag on the validator client instead of (or in addition to) setting it here.
|
|
--target-peers <target-peers>
|
|
The target number of peers.
|
|
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
--trusted-peers <TRUSTED_PEERS>
|
|
One or more comma-delimited trusted peer ids which always have the highest score according to the peer
|
|
scoring system.
|
|
--validator-monitor-file <PATH>
|
|
As per --validator-monitor-pubkeys, but the comma-separated list is contained within a file at the given
|
|
path.
|
|
--validator-monitor-individual-tracking-threshold <INTEGER>
|
|
Once the validator monitor reaches this number of local validators it will stop collecting per-validator
|
|
Prometheus metrics and issuing per-validator logs. Instead, it will provide aggregate metrics and logs. This
|
|
avoids infeasibly high cardinality in the Prometheus database and high log volume when using many
|
|
validators. Defaults to 64.
|
|
--validator-monitor-pubkeys <PUBKEYS>
|
|
A comma-separated list of 0x-prefixed validator public keys. These validators will receive special
|
|
monitoring and additional logging.
|
|
--wss-checkpoint <WSS_CHECKPOINT>
|
|
Specify a weak subjectivity checkpoint in `block_root:epoch` format to verify the node's sync against. The
|
|
block root should be 0x-prefixed. Note that this flag is for verification only, to perform a checkpoint sync
|
|
from a recent state use --checkpoint-sync-url.
|
|
|
|
lighthouse-boot_node
|
|
Start a special Lighthouse process that only serves as a discv5 boot-node. This process will *not* import blocks or
|
|
perform most typical beacon node functions. Instead, it will simply run the discv5 service and assist nodes on the
|
|
network to discover each other. This is the recommended way to provide a network boot-node since it has a reduced attack
|
|
surface compared to a full beacon node.
|
|
|
|
USAGE:
|
|
lighthouse boot_node [FLAGS] [OPTIONS] --enr-address <ADDRESS>...
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
--disable-packet-filter Disables discv5 packet filter. Useful for testing in smaller networks
|
|
-x, --enable-enr-auto-update Discovery can automatically update the node's local ENR with an external IP
|
|
address and port as seen by other peers on the network. This enables this
|
|
feature.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
--boot-nodes <ENR-LIST/Multiaddr>
|
|
One or more comma-delimited base64-encoded ENR's or multiaddr strings of peers to initially add to the local
|
|
routing table
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--enr-address <ADDRESS>...
|
|
The IP address/ DNS address to broadcast to other peers on how to reach this node. If a DNS address is
|
|
provided, the enr-address is set to the IP address it resolves to and does not auto-update based on PONG
|
|
responses in discovery. Set this only if you are sure other nodes can connect to your local node on this
|
|
address. This will update the `ip4` or `ip6` ENR fields accordingly. To update both, set this flag twice
|
|
with the different values.
|
|
--enr-port <PORT>
|
|
The UDP port of the boot node's ENR. This is the port that external peers will dial to reach this boot node.
|
|
Set this only if the external port differs from the listening port.
|
|
--enr-udp6-port <PORT>
|
|
The UDP6 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on
|
|
this port over IpV6.
|
|
--listen-address <ADDRESS>...
|
|
The address the bootnode will listen for UDP communications. To listen over IpV4 and IpV6 set this flag
|
|
twice with the different values.
|
|
Examples:
|
|
- --listen-address '0.0.0.0' will listen over Ipv4.
|
|
- --listen-address '::' will listen over Ipv6.
|
|
- --listen-address '0.0.0.0' --listen-address '::' will listen over both Ipv4 and Ipv6. The order of the
|
|
given addresses is not relevant. However, multiple Ipv4, or multiple Ipv6 addresses will not be accepted.
|
|
[default: 0.0.0.0]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--network-dir <NETWORK_DIR>
|
|
The directory which contains the enr and it's associated private key
|
|
|
|
--port <PORT> The UDP port to listen on. [default: 9000]
|
|
--port6 <PORT>
|
|
The UDP port to listen on over IpV6 when listening over both Ipv4 and Ipv6. Defaults to 9090 when required.
|
|
[default: 9090]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
lighthouse-database_manager
|
|
Manage a beacon node database
|
|
|
|
USAGE:
|
|
lighthouse database_manager [FLAGS] [OPTIONS] [SUBCOMMAND]
|
|
|
|
FLAGS:
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will
|
|
generally increase memory usage, it should only be provided when debugging
|
|
specific memory allocation issues.
|
|
-h, --help Prints help information
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress If present, compress old log files. This can help reduce the space needed to
|
|
store old logs.
|
|
--logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be
|
|
read by any user on the machine. Note that logs can often contain sensitive
|
|
information about your validator and so this flag should be used with caution.
|
|
For Windows users, the log file permissions will be inherited from the parent
|
|
folder.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--freezer-dir <DIR> Data directory for the freezer database.
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
--slots-per-restore-point <SLOT_COUNT>
|
|
Specifies how often a freezer DB restore point should be stored. Cannot be changed after initialization.
|
|
[default: 2048 (mainnet) or 64 (minimal)]
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
|
|
SUBCOMMANDS:
|
|
help Prints this message or the help of the given subcommand(s)
|
|
inspect Inspect raw database values
|
|
migrate Migrate the database to a specific schema version
|
|
prune_payloads Prune finalized execution payloads
|
|
version Display database schema version [aliases: v]
|
|
|
|
lighthouse-validator_client
|
|
When connected to a beacon node, performs the duties of a staked validator (e.g., proposing blocks and attestations).
|
|
|
|
USAGE:
|
|
lighthouse validator_client [FLAGS] [OPTIONS]
|
|
|
|
FLAGS:
|
|
--allow-unsynced DEPRECATED: this flag does nothing
|
|
--builder-proposals
|
|
If this flag is set, Lighthouse will query the Beacon Node for only block headers during proposals and will
|
|
sign over headers. Useful for outsourcing execution payload construction during proposals.
|
|
--delete-lockfiles
|
|
DEPRECATED. This flag does nothing and will be removed in a future release.
|
|
|
|
--disable-auto-discover
|
|
If present, do not attempt to discover new validators in the validators-dir. Validators will need to be
|
|
manually added to the validator_definitions.yml file.
|
|
--disable-log-timestamp If present, do not include timestamps in logging output.
|
|
--disable-malloc-tuning
|
|
If present, do not configure the system allocator. Providing this flag will generally increase memory usage,
|
|
it should only be provided when debugging specific memory allocation issues.
|
|
--disable-run-on-all
|
|
By default, Lighthouse publishes attestation, sync committee subscriptions and proposer preparation messages
|
|
to all beacon nodes provided in the `--beacon-nodes flag`. This option changes that behaviour such that
|
|
these api calls only go out to the first available and synced beacon node
|
|
--enable-doppelganger-protection
|
|
If this flag is set, Lighthouse will delay startup for three epochs and monitor for messages on the network
|
|
by any of the validators managed by this client. This will result in three (possibly four) epochs worth of
|
|
missed attestations. If an attestation is detected during this period, it means it is very likely that you
|
|
are running a second validator client with the same keys. This validator client will immediately shutdown if
|
|
this is detected in order to avoid potentially committing a slashable offense. Use this flag in order to
|
|
ENABLE this functionality, without this flag Lighthouse will begin attesting immediately.
|
|
--enable-high-validator-count-metrics
|
|
Enable per validator metrics for > 64 validators. Note: This flag is automatically enabled for <= 64
|
|
validators. Enabling this metric for higher validator counts will lead to higher volume of prometheus
|
|
metrics being collected.
|
|
-h, --help Prints help information
|
|
--http Enable the RESTful HTTP API server. Disabled by default.
|
|
--init-slashing-protection
|
|
If present, do not require the slashing protection database to exist before running. You SHOULD NOT use this
|
|
flag unless you're certain that a new slashing protection database is required. Usually, your database will
|
|
have been initialized when you imported your validator keys. If you misplace your database and then run with
|
|
this flag you risk being slashed.
|
|
--log-color Force outputting colors when emitting logs to the terminal.
|
|
--logfile-compress
|
|
If present, compress old log files. This can help reduce the space needed to store old logs.
|
|
|
|
--logfile-no-restricted-perms
|
|
If present, log files will be generated as world-readable meaning they can be read by any user on the
|
|
machine. Note that logs can often contain sensitive information about your validator and so this flag should
|
|
be used with caution. For Windows users, the log file permissions will be inherited from the parent folder.
|
|
--metrics Enable the Prometheus metrics HTTP server. Disabled by default.
|
|
--strict-fee-recipient
|
|
[DEPRECATED] If this flag is set, Lighthouse will refuse to sign any block whose `fee_recipient` does not
|
|
match the `suggested_fee_recipient` sent by this validator. This applies to both the normal block proposal
|
|
flow, as well as block proposals through the builder API. Proposals through the builder API are more likely
|
|
to have a discrepancy in `fee_recipient` so you should be aware of how your connected relay sends proposer
|
|
payments before using this flag. If this flag is used, a fee recipient mismatch in the builder API flow will
|
|
result in a fallback to the local execution engine for payload construction, where a strict fee recipient
|
|
check will still be applied.
|
|
--unencrypted-http-transport
|
|
This is a safety flag to ensure that the user is aware that the http transport is unencrypted and using a
|
|
custom HTTP address is unsafe.
|
|
--use-long-timeouts
|
|
If present, the validator client will use longer timeouts for requests made to the beacon node. This flag is
|
|
generally not recommended, longer timeouts can cause missed duties when fallbacks are used.
|
|
-V, --version Prints version information
|
|
|
|
OPTIONS:
|
|
--beacon-node <NETWORK_ADDRESS>
|
|
Deprecated. Use --beacon-nodes.
|
|
|
|
--beacon-nodes <NETWORK_ADDRESSES>
|
|
Comma-separated addresses to one or more beacon node HTTP APIs. Default is http://localhost:5052.
|
|
|
|
--beacon-nodes-tls-certs <CERTIFICATE-FILES>
|
|
Comma-separated paths to custom TLS certificates to use when connecting to a beacon node (and/or proposer
|
|
node). These certificates must be in PEM format and are used in addition to the OS trust store. Commas must
|
|
only be used as a delimiter, and must not be part of the certificate path.
|
|
--builder-registration-timestamp-override <builder-registration-timestamp-override>
|
|
This flag takes a unix timestamp value that will be used to override the timestamp used in the builder api
|
|
registration
|
|
-d, --datadir <DIR>
|
|
Used to specify a custom root data directory for lighthouse keys and databases. Defaults to
|
|
$HOME/.lighthouse/{network} where network is the value of the `network` flag Note: Users should specify
|
|
separate custom datadirs for different networks.
|
|
--debug-level <LEVEL>
|
|
Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values:
|
|
info, debug, trace, warn, error, crit]
|
|
--gas-limit <INTEGER>
|
|
The gas limit to be used in all builder proposals for all validators managed by this validator client. Note
|
|
this will not necessarily be used if the gas limit set here moves too far from the previous block's gas
|
|
limit. [default: 30,000,000]
|
|
--graffiti <GRAFFITI>
|
|
Specify your custom graffiti to be included in blocks.
|
|
|
|
--graffiti-file <GRAFFITI-FILE>
|
|
Specify a graffiti file to load validator graffitis from.
|
|
|
|
--http-address <ADDRESS>
|
|
Set the address for the HTTP address. The HTTP server is not encrypted and therefore it is unsafe to publish
|
|
on a public network. When this flag is used, it additionally requires the explicit use of the
|
|
`--unencrypted-http-transport` flag to ensure the user is aware of the risks involved. For access via the
|
|
Internet, users should apply transport-layer security like a HTTPS reverse-proxy or SSH tunnelling.
|
|
--http-allow-origin <ORIGIN>
|
|
Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not
|
|
recommended in production). If no value is supplied, the CORS allowed origin is set to the listen address of
|
|
this server (e.g., http://localhost:5062).
|
|
--http-port <PORT>
|
|
Set the listen TCP port for the RESTful HTTP API server. [default: 5062]
|
|
|
|
--latency-measurement-service <BOOLEAN>
|
|
Set to 'true' to enable a service that periodically attempts to measure latency to BNs. Set to 'false' to
|
|
disable. [default: true]
|
|
--log-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the terminal. [possible values: JSON]
|
|
|
|
--logfile <FILE>
|
|
File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a
|
|
new log file is generated where future logs are stored. Once the number of log files exceeds the value
|
|
specified in `--logfile-max-number` the oldest log file will be overwritten.
|
|
--logfile-debug-level <LEVEL>
|
|
The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info,
|
|
debug, trace, warn, error, crit]
|
|
--logfile-format <FORMAT>
|
|
Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON]
|
|
|
|
--logfile-max-number <COUNT>
|
|
The maximum number of log files that will be stored. If set to 0, background file logging is disabled.
|
|
[default: 5]
|
|
--logfile-max-size <SIZE>
|
|
The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is
|
|
disabled. [default: 200]
|
|
--metrics-address <ADDRESS>
|
|
Set the listen address for the Prometheus metrics HTTP server. [default: 127.0.0.1]
|
|
|
|
--metrics-allow-origin <ORIGIN>
|
|
Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not
|
|
recommended in production). If no value is supplied, the CORS allowed origin is set to the listen address of
|
|
this server (e.g., http://localhost:5064).
|
|
--metrics-port <PORT>
|
|
Set the listen TCP port for the Prometheus metrics HTTP server. [default: 5064]
|
|
|
|
--monitoring-endpoint <ADDRESS>
|
|
Enables the monitoring service for sending system metrics to a remote endpoint. This can be used to monitor
|
|
your setup on certain services (e.g. beaconcha.in). This flag sets the endpoint where the beacon node
|
|
metrics will be sent. Note: This will send information to a remote sever which may identify and associate
|
|
your validators, IP address and other personal information. Always use a HTTPS connection and never provide
|
|
an untrusted URL.
|
|
--monitoring-endpoint-period <SECONDS>
|
|
Defines how many seconds to wait between each message sent to the monitoring-endpoint. Default: 60s
|
|
|
|
--network <network>
|
|
Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis,
|
|
sepolia]
|
|
--proposer-nodes <NETWORK_ADDRESSES>
|
|
Comma-separated addresses to one or more beacon node HTTP APIs. These specify nodes that are used to send
|
|
beacon block proposals. A failure will revert back to the standard beacon nodes specified in --beacon-nodes.
|
|
--safe-slots-to-import-optimistically <INTEGER>
|
|
Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
this parameter in the event of an attack at the PoS transition block. Incorrect use of this flag can cause
|
|
your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag.
|
|
--secrets-dir <SECRETS_DIRECTORY>
|
|
The directory which contains the password to unlock the validator voting keypairs. Each password should be
|
|
contained in a file where the name is the 0x-prefixed hex representation of the validators voting public
|
|
key. Defaults to ~/.lighthouse/{network}/secrets.
|
|
--server <NETWORK_ADDRESS>
|
|
Deprecated. Use --beacon-nodes.
|
|
|
|
-s, --spec <DEPRECATED>
|
|
This flag is deprecated, it will be disallowed in a future release. This value is now derived from the
|
|
--network or --testnet-dir flags.
|
|
--suggested-fee-recipient <FEE-RECIPIENT>
|
|
Once the merge has happened, this address will receive transaction fees from blocks proposed by this
|
|
validator client. If a fee recipient is configured in the validator definitions it takes priority over this
|
|
value.
|
|
--terminal-block-hash-epoch-override <EPOCH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should
|
|
only be used if the user has a clear understanding that the broad Ethereum community has elected to override
|
|
the terminal PoW block. Incorrect use of this flag will cause your node to experience a consensus failure.
|
|
Be extremely careful with this flag.
|
|
--terminal-block-hash-override <TERMINAL_BLOCK_HASH>
|
|
Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if
|
|
the user has a clear understanding that the broad Ethereum community has elected to override the terminal
|
|
PoW block. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely
|
|
careful with this flag.
|
|
--terminal-total-difficulty-override <INTEGER>
|
|
Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal
|
|
integer (not a hex value). This flag should only be used if the user has a clear understanding that the
|
|
broad Ethereum community has elected to override the terminal difficulty. Incorrect use of this flag will
|
|
cause your node to experience a consensus failure. Be extremely careful with this flag.
|
|
-t, --testnet-dir <DIR>
|
|
Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective
|
|
if there is no existing database.
|
|
--validator-registration-batch-size <INTEGER>
|
|
Defines the number of validators per validator/register_validator request sent to the BN. This value can be
|
|
reduced to avoid timeouts from builders. [default: 500]
|
|
--validators-dir <VALIDATORS_DIR>
|
|
The directory which contains the validator keystores, deposit data for each validator along with the common
|
|
slashing protection database and the validator_definitions.yml
|
|
|
|
|
|
|