Skip to main content

Ports

Only peer-to-peer ports should be reachable from the internet. Everything else listens on 127.0.0.1 by default and should stay private unless you need to expose it and have secured it.

Open to the internet​

Forward these on your router and allow them through your firewall. Open ports bring more peers, which helps your node receive blocks and attestations on time. See Ports, peers and router setup.

PortProtocolUsed byPurposeChange with
13000TCPBeacon nodelibp2p peer connections--p2p-tcp-port
13000UDPBeacon nodelibp2p over QUIC--p2p-quic-port
12000UDPBeacon nodediscv5 peer discovery--p2p-udp-port
30303TCP and UDPExecution clientExecution-layer peers (typical default; check your client)Execution client flags

Keep private​

PortUsed byPurposeChange with
3500Beacon nodeBeacon API (HTTP), used by validator clients and tools--http-port
4000Beacon nodegRPC API for Prysm validator clients--rpc-port
8080Beacon nodePrometheus metrics--monitoring-port
6060Beacon node, validatorpprof profiling, when --pprof is set--pprofport
7500ValidatorKeymanager API, only when --rpc or --web is set--http-port
8081ValidatorPrometheus metrics--monitoring-port
8551Execution clientEngine API, authenticated with the JWT secretExecution client flags; Prysm connects with --execution-endpoint
8545Execution clientJSON-RPC APIExecution client flags
18550MEV-BoostBuilder API relay proxyMEV-Boost -addr; Prysm connects with --http-mev-relay
Never expose the validator's APIs

Anyone who reaches port 7500 with a valid token can manage your keys, and a few of its routes need no token at all. Keep it on 127.0.0.1, or behind a VPN or SSH tunnel. See the Security checklist.

Running multiple nodes on one machine​

Give each beacon node its own --datadir and shift every port it listens on, for example --p2p-tcp-port=13001 --p2p-quic-port=13001 --p2p-udp-port=12001 --http-port=3501 --rpc-port=4001 --monitoring-port=8082. Point each validator client at its own beacon node with --beacon-rpc-provider or --beacon-rest-api-provider.