# Consensus Layer

Historically, an Execution Layer (EL) client alone was enough to run a full Ethereum node. However, as Ethereum has moved from proof-of-work (PoW) to proof-of-stake (PoS) based consensus with "The Merge", a Consensus Layer (CL) client needs to run alongside the EL to run a full Ethereum node, a Gnosis Chain node or a Polygon node.

The execution client listens to new transactions, executes them in the Ethereum Virtual Machine (EVM), and holds the latest state and database of all current Ethereum data.

The consensus client, also known as the Beacon Node or CL client, implements the Proof-of-Stake consensus algorithm, which enables the network to achieve agreement based on validated data from the execution client. Both clients work together to keep track of the head of the Ethereum chain and allow users to interact with the Ethereum network.

{% hint style="warning" %}
By default, Erigon 2 is configured to run with an external beacon client.
{% endhint %}

***

## Choosing the Consensus Layer client

A Consensus Layer (CL) client needs to run alongside Erigon to run a [full Ethereum node](https://ethereum.org/en/developers/docs/nodes-and-clients/node-architecture/), a [Gnosis Chain node](https://docs.erigon.tech/erigon/v2/eli5-nodes/how-to-run-a-gnosis-chain-node) and a [Polygon node](https://docs.erigon.tech/erigon/v2/eli5-nodes/how-to-run-a-polygon-node) and its respective testnets. Basically, without a CL client the EL will never get in sync. See below which Beacon node for which chain you can run along with Erigon:

{% tabs %}
{% tab title="Ethereum" %}
[Prysm](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/prysm), [Lighthouse](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/lighthouse), Lodestar, Nimbus, Teku.

See also <https://ethereum.org/en/developers/docs/nodes-and-clients/client-diversity/#consensus-clients>.

*\*Block validation with Erigon is* [*supported*](#block-production-pos-validator) *with external beacon nodes.*
{% endtab %}

{% tab title="Gnosis Chain" %}
[Prysm](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/prysm), [Lighthouse](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/lighthouse), Lodestar, Nimbus, Teku.

See also <https://docs.gnosischain.com/node/manual>
{% endtab %}
{% endtabs %}

If you are planning or not to validate blocks , you can use [**Lighthouse**](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/lighthouse)**,** [**Prysm**](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/prysm) or any other supported Beacon Chain. Check also [**Block Production** ](https://docs.erigon.tech/erigon/v2/advanced-usage/consensus-layer/block-production)pag&#x65;**.**

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Prysm</strong></td><td></td><td>Running Erigon with Prysm as external CL</td><td><a href="https://2414554083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Feeqc6D5KqkgOsOW7j4k6%2Fuploads%2FU1hGHMIpSmjuimsRXKHi%2Fpr.png?alt=media&#x26;token=b9c1a492-ece9-4d39-a67c-5744030ae88b">pr.png</a></td><td><a href="consensus-layer/prysm">prysm</a></td></tr><tr><td><strong>Lighthouse</strong></td><td></td><td>Running Erigon with Lighthouse as external CL</td><td><a href="https://2414554083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Feeqc6D5KqkgOsOW7j4k6%2Fuploads%2Fn2RAc8Gf2oPe0AqT6x7A%2Flh.png?alt=media&#x26;token=6b15be32-b8f5-4596-ad7b-7cf4b54d38dc">lh.png</a></td><td><a href="consensus-layer/lighthouse">lighthouse</a></td></tr></tbody></table>
