# FAQ for the Ethereum Merge This is not a definitive guide. Please refer to guides by the ethstaker/ethereum cat herders and/or the wider community for step by step information on how to configure your node. This guide is meant as a general overview for what you need to do in various situations. ## General information One of the best resources for up to date information about the merge can be found on the [Ethereum launchpad website](https://launchpad.ethereum.org/en/merge-readiness/). A compilation of all resources relating to the Ethereum Merge can be found [here](https://notes.ethereum.org/Moiv99h9QTmI-imPL8pvQg?view). On a high level, the common changes for anyone running an Ethereum node are: - You would need to run a Consensus Layer(CL/eth2) node as well as a Execution Layer(EL/eth1) node. These two nodes need to connect to each other in order to function properly. - There is a new API port called the engine API. The EL and CL communicate with each other over the engine API port. Therefore, the CL will need to be able to access the EL Engine API port. - The communication over the Engine API port is authenticated with a JWT token. The easiest way is to generate the JWT token independently and pass this value to both the EL/CL nodes. - Since transactions are proposed by validators, they are eligible to receive transaction fee tips (priority fees). These fees are paid by whoever submitted a transaction and come in the form of ETH and are available to be spent immediately on the network. To receive these fees, the fee receipient Ethereum Address needs to be set in the CL. In case there are still questions on how any of these changes would affect you, please do join us at the [Merge Community Calls](https://github.com/ethereum/pm/issues/580). ## What are you interested in? - I am running an EL node (eth1) and want to know how to prepare for the merge: [here](https://notes.ethereum.org/k06rhqPATJ2PhQW5LvgvBA#EL-node-runner-preparation-guide) - I am running an Ethereum validator and want to know how to prepare for the merge: [here](https://notes.ethereum.org/k06rhqPATJ2PhQW5LvgvBA?both#CLeth2-validator-preparation-guide) :::info <center>⚠️⚠️⚠️</center> Irrespective of what scenario you are dealing with, please visit [here](https://notes.ethereum.org/@launchpad/merge-configuration-checklist) for a checklist on if your node is configured properly. <center>⚠️⚠️⚠️</center> ::: ### EL(eth1) node runner preparation guide: If you are running an EL(eth1) node, you will need to add a CL beacon node to your setup. This is required since after the merge, the EL will rely on the CL in order to stay in sync. If you do not run a CL, post merge the EL will stall indefinitely - i.e, All the data you get from the node will be stale and invalid. You cannot connect to a remote CL for this data (Infura, etc), It would be best to run the CL locally. In preparation for the merge, you will need to do the following: - Add the flags required by your EL(eth1) node to enable your Engine API port and JWT token - Setup a CL beacon node. You can choose any of these clients: Teku, Lighthouse, Lodestar, Nimbus or Prysm - Configure the CL beacon node with the Engine API and the same JWT token used on the EL Once setup, it should look as shown in the diagram below. The JSON-RPC queries used to interact with your Ethereum node in the past will remain unchanged! The only extra part is the CL beacon node addition to keep the EL in sync. ![Ethereum Node](https://storage.googleapis.com/ethereum-hackmd/upload_3640e2ab0a01f17630e49fe0aa91a336.png) Please refer to guides from the community (ethstaker/ethereum cat herders/Somer Esat/etc) for more in depth articles on how to do the above steps. :::info CL beaconchain sync times can be quite high, the recommended approach is to use Checkpoint Sync. A guide for Checkpoint Sync can be found [!! Still WIP, Sam will Update it soon!! here](https://notes.ethereum.org/J33FFss4RfytFaAAYLOtAg). ::: :::info After the CL beacon node has been setup, please refer to the [Checklist for Ethereum Merge](https://notes.ethereum.org/@launchpad/merge-configuration-checklist) to confirm that your setup is correctly configured. ::: ### CL(eth2) validator preparation guide: If you are running a CL(eth2) validator, you will need to have an EL running locally. You can no longer use a remote eth1 node (Infura, etc). This requirement is due to the use of the new Engine API which is a trusted endpoint. You would then need to do the following: - Run (Or update) the EL with the required flags. You can choose any of these clients: Nethermind, Besu, Geth or Erigon - Configure the CL beacon node with the Engine API and the same JWT token used on the EL Once setup, it should look as shown in the diagram below. ![Ethereum Validator](https://storage.googleapis.com/ethereum-hackmd/upload_caf60fba95afe589a75f30ba42d18a82.png) :::info After the CL beacon node has been setup, please refer to the [Checklist for Ethereum Merge](https://notes.ethereum.org/@launchpad/merge-configuration-checklist) to confirm that your setup is correctly configured. :::