Mev-Boost
mev-boost
is an optional add-on for validators to enable them to source blocks from multiple different relays.
Configuring mev-boost
is likely to increase both the profitability and reliability of your validator operation.
It is the recommended method for connecting to Eden Relay.
Spec
mev-boost
implements the latest Builder Specification.
Installing
mev-boost
can run in any machine, as long as it is reachable by the beacon client. The default port is 18550. The most common setup is to install it in the same machine as the beacon client.
Dependencies
From source
Install mev-boost with go install
:
go install github.com/flashbots/mev-boost@latest
mev-boost -help
Or clone the repository and build it:
git clone https://github.com/flashbots/mev-boost.git
cd mev-boost
make build
From Docker image
There is a public mev-boost Docker image at https://hub.docker.com/r/flashbots/mev-boost
- Install Docker Engine
- Pull & run the latest image:
docker pull flashbots/mev-boost:latest
docker run flashbots/mev-boost -help
Usage
A single mev-boost
instance can be used by multiple beacon nodes. To connect mev-boost
to multiple relays, pass the relay URLs as a comma-separated list (no spaces) to the -relay
flag.
mev-boost
will automatically choose the most profitable block from all relays every slot.
- Mainnet
- Goerli
./mev-boost -mainnet -relay-check -relays https://0xb3ee7afcf27f1f1259ac1787876318c6584ee353097a50ed84f51a1f21a323b3736f271a895c7ce918c038e4265918be@relay.edennetwork.io
./mev-boost -goerli -relay-check -relays https://0xb1d229d9c21298a87846c7022ebeef277dfc321fe674fa45312e20b5b6c400bfde9383f801848d7837ed5fc449083a12@relay-goerli.edennetwork.io
Configure Consensus Client
Prysm
To use Eden Relay as your source for block production with Prysm + mev-boost
, you simply need to add the following flag to your beacon node client to point it at your newly running mev-boost
instance:
--http-mev-relay=http://localhost:18550
And the following to your validator client:
--enable-builder
Lighthouse
To use Eden Relay as your source for block production with Lighthouse + mev-boost
, you simply need to add the following flag to your beacon node client to point it at your newly running mev-boost
instance:
--builder=http://localhost:18550
And the following to your validator client:
--builder-proposals
See official Lighthouse Documentation for more details and advanced configuration options.
Teku
To use Eden Relay as your source for block production with Teku + mev-boost
where your beacon node and validator are run in the same process, you simply need to add the following flags to your client to point it at your newly running mev-boost
instance:
--validators-builder-registration-default-enabled=true
--builder-endpoint=http://localhost:18550
If you are running a Teku + mev-boost
setup where your beacon node and validator are run in different processes, your setup should look like the following:
Validator client:
teku validator-client --validators-proposer-blinded-blocks-enabled=true --validators-proposer-config="/etc/teku/proposerConfig.json"
Proposer configuration:
{
"proposer_config": {
"0xa057816155ad77931185101128655c0191bd0214c201ca48ed887f6c4c6adf334070efcd75140eada5ac83a92506dd7a": {
"fee_recipient": "0x50155530FCE8a85ec7055A5F8b2bE214B3DaeFd3",
}
},
"default_config": {
"fee_recipient": "0x6e35733c5af9B61374A128e6F85f553aF09ff89A",
"builder": {
"enabled": true
}
}
}
Beacon node:
teku --validators-proposer-default-fee-recipient="0x6e35733c5af9B61374A128e6F85f553aF09ff89A" --ee-endpoint="http://127.0.0.1:8551" --ee-jwt-secret-file="/etc/jwt-secret.hex" --builder-endpoint="http://localhost:18550"
See official Teku Documentation for more details and advanced configuration options.