The Merge & Node Operators

Darren Langley
Rocket Pool
Published in
8 min readJul 27, 2022

If you are a Rocket Pool node operator you are probably wondering what is happening with The Merge and how you should prepare.

Don’t worry we have you covered!

Redstone is the name of the Rocket Pool release that includes The Merge compatibility. If you haven’t read our Redstone article it is a good primer for understanding the new features coming to Rocket Pool.

How will it be rolled out?

The Redstone smart node and smart contract release will happen before The Merge so that Rocket Pool is ready.

Here is the outline of events:

  1. Smart Node 1.5.0 release (Redstone compatible) — targeted for release this week
  2. Oracle DAO will vote on the smart contract upgrade proposal — targeted for proposal on 15 Aug
  3. Rocket Pool Core Team will apply the smart contract upgrade — targeted for 29 Aug
  4. Ethereum client teams will publish the official Terminal Total Difficulty for The Merge and client releases — approx late Aug
  5. A subsequent 1.5.x smart node version release will contain these client releases (Merge compatible) — approx late Aug
  6. The Merge!!! — targeted for 19 Sept

To prepare for Redstone and The Merge:

  • Prepare your node for Smart Node 1.5.0 — follow the instructions below
  • Pay attention to Rocket Pool’s Discord announcements and/or Twitter
  • Install Smart Node 1.5.0 before the Redstone smart contracts are applied (~29 Aug)
  • Install Smart Node 1.5.x before The Merge (~19 Sept)
  • Have fun participating in the biggest event in crypto for decades!

What has changed with The Merge?

We will take you through what is changing with The Merge and how it affects operating an Ethereum node.

Naming

The Merge brings new vocabulary — the terms Ethereum 1 and Ethereum 2 have been replaced.

Ethereum 1 clients such as Geth, Besu, and Nethermind are now called Execution clients — because they are responsible for executing transactions and updating chain state (such as account balances).

Ethereum 2 clients such as Lighthouse, Prysm, Nimbus, Teku, and Lodestar are now called Consensus clients — because they are responsible for chain consensus and finalisation.

Engine API

To enable an Execution client and Consensus client to talk to each other, a new interface has been created called the Engine API. The Execution client secures this interface using a randomly-generated JSON Web Token (JWT), so that only the authenticated Consensus client can talk to it. Consequently the Execution client and Consensus client are coupled 1-to-1 — together they form the concept of an Ethereum node.

In the past you could use external RPC services such as Infura and Pocket, as either your primary or fallback, this is no longer the case.

You have to have a dedicated full Execution client when operating an Ethereum node.

Fee Recipient

An exciting aspect of The Merge is that Ethereum validators will now be executing transactions when they propose a block. As such, they will receive the priority fees that Ethereum users pay to have their transactions included in a block.

Your Consensus client is actually two components: the beacon chain client (maintains the chain), and the validator client (performs validator duties such as attesting and proposing blocks). The validator client is configured with a Fee Recipient address, which is paid priority fees when you propose a block.

As a Rocket Pool node operator priority fees that your node generates are split (factoring in commissions) between you as the node operator, and rETH holders. Your Fee Recipient address is automatically set by the smart node stack. Be aware: penalties apply if you manually change the Fee Recipient to a different address and take the rETH holders’ share.

A node operator’s Fee Recipient must be set to a special Fee Distributor address that is specific to each node. As priority fees are paid to that address a node operator can access the rewards in real-time (without waiting for ETH withdrawals to be implemented). To access fee payments, a node operator performs a one-time Fee Distributor smart contract initialisation, via the Smart Node CLI. This deploys a smart contract at your Fee Distributor address to support claiming fee payments. You do not need to initialise this smart contract until you want to access those payments or if you want to deploy more minipools. For more information check out our Fee Distributor overview.

If you are participating in the smoothing pool, the Fee Recipient address must be set to the smoothing pool smart contract instead of the node’s Fee Distributor address. The smart node stack sets this for you when you join the smoothing pool. Priority fee payments are claimed from the smoothing pool. For more information check out our Smoothing Pool overview.

To ensure that Rocket Pool node operators share Priority Fees the Rocket Pool Oracle DAO, monitor blocks produced by node operators and apply a 10% ETH penalty if the Fee Recipient is not set appropriately. For in-depth information take a look at the penalty system research article.

MEV Boost

The smart node stack comes bundled with Flashbot’s MEV-Boost, enabling node operators to access Maximal Extractable Value (MEV) proposer rewards.

As a Rocket Pool node operator, the MEV that your node generates is also shared with rETH holders (factoring in commissions).

MEV rewards are sent to the same address as the Fee Recipient whether that is the node’s Fee Distributor address or the smoothing pool, depending on whether the node has joined the smoothing pool.

MEV Boost is still under active development so some things may change but we will keep everyone informed.

How do I prepare for The Merge?

Individual node operators use the Rocket Pool smart node stack in a number of ways/modes. How you prepare for The Merge depends on what mode you use. Before you upgrade to Smart Node 1.5.0 follow the steps below.

Common to all modes are these considerations:

  1. If you are using Infura or Pocket as your primary Execution client, you will not be able to use it going forward. You need to run a dedicated full Execution client. So before you upgrade to smart node 1.5.0, migrate away from Infura and Pocket as they are no longer available in that version. To migrate, ensure you have Infura or Pocket setup as a fall-back and then change your primary Execution client to either Geth, Besu, or Nethermind. Make sure you have enough disk space to run an Execution client! The smart node stack will synchronise the Execution client and when it is ready, it will automatically swap back to the new primary. Once that is done you can upgrade to smart node 1.5.0.
  2. If you are using Infura or Pocket as your fallback Execution client, you will not be able to use it going forward. An Execution client and Consensus client pair is required as a fallback. So you will either forego a fallback or spin up a new Execution client and Consensus client pair on another machine or on a cloud provider. For more in-depth information please read our fallback overview.

Docker Mode —smart node manages everything for you

The default mode for using Rocket Pool’s smart node stack is Docker mode. If you are running Docker mode, it is the simplest option, in terms of, preparing for The Merge.

Simply upgrade to the latest smart node release and everything else is taken care of by the smart node stack — this includes setting your Fee Recipient to the correct address.

To check the running version of the smart node stack use:

$ rocketpool service version

Keep an eye on our Discord and Twitter announcements as we will make it very clear what version you need to be Merge ready.

More information can be found in our Docker mode migration guide.

Hybrid Mode — you manage Execution Client and Consensus Client, smart node manages validators

Hybrid mode is usually used by solo stakers running Rocket Pool minipools beside their solo staking setup. Essentially the smart node stack manages a set of validators and the node operator manages the Execution client and Consensus client external to the smart node stack.

Hybrid mode is similar to Docker mode in that because the Rocket Pool smart node stack manages the validator processes it can set your Fee Recipient address to the correct address.

You are responsible for configuring the Execution client and Consensus client so that they can talk to each other using the JSON Web Token (JWT).

More information can be found in our Hybrid mode migration guide.

Reverse Hybrid Mode —smart node manages a full stack, but you manage some validators that connect to the Execution client and Consensus client

Reverse Hybrid Mode is usually used by solo stakers running Rocket Pool minipools and solo stake side-by-side. It is preferred in some ways because the smart node stack makes managing an Execution client and Consensus client so streamlined.

This mode is the same as Docker mode, you just need to upgrade to the latest version and it is ready.

Native — you manage everything

In native mode, a node operator natively (without Docker) runs some but not all elements of the Rocket Pool stack. This mode is usually reserved for experts. The smart node stack is not involved so cannot help you; all configuration is up to the node operator to get right.

It is particularly important to get the Fee Recipient address setup correctly initially and if you decide to opt-in or opt-out of the smoothing pool.

More information can be found in our Native mode migration guide.

Questions or just say hello!

Well 12 points to you for making it this far! If you have questions, feedback, bug reports or want to know a bit more about us, why not swing by for a chat and say G’day!

About Rocket Pool

Rocket Pool is Ethereum’s most decentralised liquid staking protocol. Its 1,300+ worldwide node operators have staked over 200,000 ETH representing over 1.5% of all Ethereum staked.

Liquid stakers can participate by depositing as little as 0.01 ETH to receive the rETH liquid staking token. Rocket Pool is a fully non-custodial solution, and its node operators are economically-aligned to perform well for stakers.

Joining as a node operator is fully permissionless and requires just 16 ETH (instead 32). A boosted ROI is provided from both operator commission plus RPL rewards. For more information check out our node operator guide.

The Rocket Pool team have been in the staking space since its inception in 2016, which gives them a pedigree and track record without peer.

Take a look at the Rocket Pool website | Join the Rocket Pool community on Discord | Stay up to date with the latest news on Twitter | View all links on our Linktree

--

--