Network
Launch Date
Consensus
Note
Sepolia
Oct 2021
PoW
Like-for-like representation of Ethereum
Görli
Jan 2019
PoA
Proof-of-Authority
Kiln
Mar 2022
PoS
Post-Merge (for ETH2), shadow fork of the mainnet
Kintsugi
Dec 2021
PoS
DEPRECATED, use Kiln; post-Merge (for ETH2)
Ropsten
Nov 2016
PoW
DEPRECATED, use Sepolia; the Merge to happen on Jun 8, 2022
Rinkeby
Apr 2017
PoA
DEPRECATED, use Görli and Görli Faucet
Kovan
Mar 2017
PoA
DEPRECATED, use Sepolia or Görli
List of active and deprecated Ethereum testnets, including Kintsugi.
Features
Optimistic rollup 
ZK-rollup 
Proof
Uses fraud proofs to prove transaction validity. 
Uses validity (zero-knowledge) proofs to prove transaction validity. 
Capital efficiency
Requires waiting through a 1-week delay (dispute period) before withdrawing funds. 
Users can withdraw funds immediately because validity proofs provide incontrovertible evidence of the authenticity of off-chain transactions. 
Data compression
Publishes full transaction data as calldata to Ethereum Mainnet, which increases rollup costs. 
Doesn't need to publish transaction data on Ethereum because ZK-SNARKs and ZK-STARKs already guarantee the accuracy of the rollup state. 
EVM compatibility
Uses a simulation of the Ethereum Virtual Machine (EVM), which allows it to run arbitrary logic and support smart contracts. 
Doesn't widely support EVM computation, although a few EVM-compatible ZK-rollups have appeared. 
Rollup costs
Reduces costs since it publishes minimal data on Ethereum and doesn't have to post proofs for transactions, except in special circumstances. 
Faces higher overhead from costs involved in generating and verifying proofs for every transaction block. ZK proofs require specialized, expensive hardware to create and have high on-chain verification costs. 
Trust assumptions
Doesn't require a trusted setup. 
Requires a trusted setup to work. 
Liveness requirements
Verifiers are needed to keep tabs on the actual rollup state and the one referenced in the state root to detect fraud. 
Users don't need someone to watch the L2 chain to detect fraud. 
Security properties 
Relies on cryptoeconomic incentives to assure users of rollup security. 
Relies on cryptographic guarantees for security. 
Start building
on Alchemy.
Sign up for free
Start building on Optimism.
Sign up for free
Start building on Arbitrum.
Sign up for free
Start building on Ethereum.
Sign up for free
Start building on Polygon.
Sign up for free
Start building on Starknet.
Sign up for free
Start building on Flow.
Sign up for free
kiln faucet
Get free Kiln ETH.
Start building today
Goerli faucet
Get free Goerli ETH.
Start building today
SEPOLIA FAUCET
Get free Sepolia ETH.
Start Building Today
mumbai faucet
Get free Mumbai Matic.
Start building today
rinkeby faucet
Get free Rinkeby
ETH.
Start building today
Start building on Ethereum.
Get started for free
Start building on Ethereum.
Get started for free
Start building on Flow.
Get started for free
Start building on Polygon.
Get started for free
Start building on Starknet.
Get started for free
Start building on Optimism.
Get started for free
Start building on Solana.
Get started for free
Start building on Solana.
Sign up for beta access
Start building on Solana.
Join the waitlist
Arbitrum logo
Start building on Arbitrum.
Get started for free
Build with Alchemy's
Gas Manager & Bundler APIs
Learn
Solidity at
Alchemy
University
Get started today
Build with Alchemy's
Gas Manager & Bundler APIs
curl 
https://release.solana.com/v1.10.32/solana-install-init-x86_64-pc-windows-msvc.exe 
--output 
C:\solana-install-tmp\solana-install-init.exe 
--create-dirs
Infra
GETH NODE OVERVIEW

What is a Geth Node and How to Run One

Requirements, Installation, and Deployment
Last Updated:
April 18, 2022

Intro to Geth and Nodes

Ethereum nodes are computers that are part of the Ethereum blockchain network. These nodes are real computers that run software that checks, stores, and sometimes makes blocks.

 "Client" is the name of the actual software. It lets us interact with the blockchain through a JSON-RPC API, read and verify the blockchain, and read or write to smart-contracts.

Geth is one of these clients and one of the most popular ones to use. It's written in the Go programming language and kept up to date by a group of people who work for the Ethereum Foundation and other people who help.

Some characteristics of Geth:

  • It comes with a JavaScript console that you can run with "geth console."
  • The client can work with other JavaScript clients (web3js).
  • The Rinkeby test net is built in (or build your own private Ethereum network)
  • It is usually thought of as the standard for other Ethereum nodes.

In this latest Alchemy blog, we'll learn how to install and run a Geth node.

Networks (Mainnet vs Testnet) and Geth

To understand Geth nodes, we’ll need to understand different networks of Ethereum.

Ethereum features a single core network (Mainnet) where all transactions take place, but it also makes use of a number of other testing networks that have been set up to test things out (Testnet). Consider using these "play" blockchains to experiment with blockchain capabilities outside of your localhost.

1. Mainnet

The Ethereum mainnet is the network used to generate Ethereum. ETH may be mined or traded on exchanges, and it is always available.

2. Ropsten

Ropsten is a test network that most closely mimics the mainnet. Is based on the same proof of work. This Ropsten test network is vulnerable to spam attacks since test ETH is mined in the same way as Mainnet ETH and is easy to get with no value.

3. Rinkeby

Rinkeby's testnet uses proof of authority, which means you won't be able to get test ETH unless you can prove you are who you say you are. This is done by linking an Ethereum address to a social media account, such as Facebook. This makes it far more difficult for someone to attack the network since getting a large number of ETH requires a significant amount of effort. Rinkeby can only be accessed by Geth nodes.

To start building on the Rinkeby testnet and get Rinkeby Ether from a free faucet.

4. Kovan

The main difference is that Kovan is only available on parity nodes, and you must use GitHub to verify your identity.

5. Goerli

Goerli was deployed under the Proof-of-Authority framework. It employs the Clique consensus technique, which was first developed by Chainsafe and Afri Schoedon. The Goerli community maintains the network, which is backed by Geth, Parity, Nethermind, and Hyperledger Besu. Goerli has a larger network size, number of nodes, and range of clients than Kovan and Rinkeby.

Learn how to get Goerli Ether and use Alchemy's GoETH faucet to get started on the Goerli test network.

6. Kiln

At the time of writing, many of the above testnets will be deprecated/upgraded as a result of Ethereum running full speed towards their proof of stake merge later this year. As of now, the Kiln testnet is the final public testnet before the switch to proof of stake. 

This switch is a significant achievement for the Ethereum network, which is about to undergo some of the most significant changes it has seen since its creation. Assuming there are no issues with Kiln, the current Ethereum testnets (Goerli, Ropsten, and so on) will be able to proceed without interruption. 

Learn more about the Kiln testnet and get fake Kiln Ether to start building on Kiln.

What is a Geth Node?

With Geth, you can establish your own private Ethereum network. The blockchain of an Ethereum network begins with a root block known as the genesis block. There are no transactions in the genesis block.

There are different sorts of Ethereum nodes, but Geth nodes are divided into three categories: light nodes, full nodes, and archive nodes.

Light Nodes

Since they don’t validate every block, light nodes do not hold a copy of the Ethereum blockchain. As a result, they rely on data from full nodes. Running light nodes has several advantages, including faster startup, lower storage use, and fewer computational/memory needs. Light nodes have a lesser level of trust and many times rely on full nodes, which can be problematic. 

Light nodes:

  • Store the header chain and request everything else.
  • Verify the validity of the data against the state roots in the block headers.
  • Provide a use for low capacity devices, such as embedded devices or mobile phones, which can't afford to store gigabytes of blockchain data.

Full Nodes

Full nodes verify that the transactions in the blocks follow the standards outlined in the Ethereum Yellow Paper. They do this to guarantee that the blocks transferred over the network are genuine. You can have faith in their efforts. This verification technique is used by complete nodes to keep the network in line with Ethereum's requirements.

Full nodes:

  • ​​Store full blockchain data.
  • Participate in block validation and verify all blocks and states.
  • Derive all states.
  • Serve the network and provide data on request.

Archive Nodes

An archive node is a node that saves the entire transaction history. The wellness and structure of the network is dependent on these nodes.

Archive Nodes:

  • Store everything kept in the full node and build an archive of historical states. This is needed if you want to query account balances or any on-chain data, or simply and reliably test your own transactions set without mining them using OpenEthereum.
  • Provide data that represents units of terabytes. This makes them less attractive for average users but makes them handy for services like block explorers, wallet vendors, and chain analytics.

source: https://ethereum.org/en/developers/docs/nodes-and-clients/

Requirements for Installing Geth

  • Multi-core CPU (7GB+ of RAM)
  • Local SSD drive with at ~600GB+ of free space
  • *OPTIONAL* Use 16/32 GB+ CPU for optimized performance by caching. By using caching features (aka using the ‘--cache’ flag), Geth will be able to get the state from memory instead of your hard drive.
  • Homebrew for Mac users
  • PPA for Linux/Ubuntu
  • *OPTIONAL* Parity (for more information, learn how to migrate from parity to Geth)

Geth Installation Methods

You can install Geth via packet manager, via homebrew on MacOS or PPA on Ubuntu, directly download it, run it in a docker, or even build it from scratch.

Homebrew using MacOS Terminal:

$ brew tap ethereum/ethereum $ brew install ethereum

Check out a list of different helpful commands here (abigen, bootnode, checkpoint-admin, clef, devp2p, ethkey, evm, faucet, geth, etc.) or you can also run:

$ geth --help

PPA for Linux/Ubuntu:

$ sudo add-apt-repository -y ppa:ethereum/ethereum

Install the stable version of go-ethereum:

$ sudo apt-get update $ sudo apt-get install ethereum

Docker:

Download Docker from here. Then run the following:

$ docker pull ethereum/client-go:latest

And then run:

$ docker run ethereum/client-go:latest

Run Geth

Run this command in a terminal at the location where we unzipped the Geth folder/root folder so that we can run it:

$ ./Geth console --testnet --syncmode "light" --rpc --rpcaddr "localhost" --rpcport "8545" --rpccorsdomain "*" --rpcapi="db,eth,net,web3,personal"

This will right away take us to the Geth console. By typing

net

,we can see if we have any peers, and by typing

eth.syncing

,we can see if the node is currently syncing. It is possible that your node will not begin synchronizing until you restart it.

For example, running

eth.syncing

will output the following sample query:

> eth.syncing{currentBlock: 3264679,highestBlock: 5257370,knownStates: 3180,pulledStates: 212,startingBlock: 3263125}

Final Thoughts

Geth is often already included in the majority of web/extension wallets accessible for consumer adoption (MetaMask, Coinbase, Rainbow, etc). 

But, installing and running Geth is well worth the effort if you want to experiment with mining or develop your own custom Ethereum software. It’s also useful if you simply want to control your own node and your wallet's key (signing your own transactions rather than relying on third-party software). Using Geth, you can now open up a whole world of Ethereum development!

ALCHEMY SUPERNODE - ETHEREUM NODE API

Scale to any size, without any errors

Alchemy Supernode finally makes it possible to scale blockchain applications without all the headaches. Plus, our legendary support will guide you every step of the way.

Get started for free
Supernode footer
Infra
GETH NODE OVERVIEW

What is a Geth Node and How to Run One

Requirements, Installation, and Deployment
Last Updated:
April 18, 2022
Last Updated:
March 14, 2023
Don't miss an update
Sign up for our newsletter to get alpha, key insights, and killer resources.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Talk to an Expert

Learn how Alchemy's blockchain developer tools can help your business succeed in web3!
Valid number
Thank you! An Alchemy expert will be in touch with you shortly!
Oops! Something went wrong while submitting the form.

{{building-alchemy-ad}}

Table of Contents

Intro to Geth and Nodes

Ethereum nodes are computers that are part of the Ethereum blockchain network. These nodes are real computers that run software that checks, stores, and sometimes makes blocks.

 "Client" is the name of the actual software. It lets us interact with the blockchain through a JSON-RPC API, read and verify the blockchain, and read or write to smart-contracts.

Geth is one of these clients and one of the most popular ones to use. It's written in the Go programming language and kept up to date by a group of people who work for the Ethereum Foundation and other people who help.

Some characteristics of Geth:

  • It comes with a JavaScript console that you can run with "geth console."
  • The client can work with other JavaScript clients (web3js).
  • The Rinkeby test net is built in (or build your own private Ethereum network)
  • It is usually thought of as the standard for other Ethereum nodes.

In this latest Alchemy blog, we'll learn how to install and run a Geth node.

Networks (Mainnet vs Testnet) and Geth

To understand Geth nodes, we’ll need to understand different networks of Ethereum.

Ethereum features a single core network (Mainnet) where all transactions take place, but it also makes use of a number of other testing networks that have been set up to test things out (Testnet). Consider using these "play" blockchains to experiment with blockchain capabilities outside of your localhost.

1. Mainnet

The Ethereum mainnet is the network used to generate Ethereum. ETH may be mined or traded on exchanges, and it is always available.

2. Ropsten

Ropsten is a test network that most closely mimics the mainnet. Is based on the same proof of work. This Ropsten test network is vulnerable to spam attacks since test ETH is mined in the same way as Mainnet ETH and is easy to get with no value.

3. Rinkeby

Rinkeby's testnet uses proof of authority, which means you won't be able to get test ETH unless you can prove you are who you say you are. This is done by linking an Ethereum address to a social media account, such as Facebook. This makes it far more difficult for someone to attack the network since getting a large number of ETH requires a significant amount of effort. Rinkeby can only be accessed by Geth nodes.

To start building on the Rinkeby testnet and get Rinkeby Ether from a free faucet.

4. Kovan

The main difference is that Kovan is only available on parity nodes, and you must use GitHub to verify your identity.

5. Goerli

Goerli was deployed under the Proof-of-Authority framework. It employs the Clique consensus technique, which was first developed by Chainsafe and Afri Schoedon. The Goerli community maintains the network, which is backed by Geth, Parity, Nethermind, and Hyperledger Besu. Goerli has a larger network size, number of nodes, and range of clients than Kovan and Rinkeby.

Learn how to get Goerli Ether and use Alchemy's GoETH faucet to get started on the Goerli test network.

6. Kiln

At the time of writing, many of the above testnets will be deprecated/upgraded as a result of Ethereum running full speed towards their proof of stake merge later this year. As of now, the Kiln testnet is the final public testnet before the switch to proof of stake. 

This switch is a significant achievement for the Ethereum network, which is about to undergo some of the most significant changes it has seen since its creation. Assuming there are no issues with Kiln, the current Ethereum testnets (Goerli, Ropsten, and so on) will be able to proceed without interruption. 

Learn more about the Kiln testnet and get fake Kiln Ether to start building on Kiln.

What is a Geth Node?

With Geth, you can establish your own private Ethereum network. The blockchain of an Ethereum network begins with a root block known as the genesis block. There are no transactions in the genesis block.

There are different sorts of Ethereum nodes, but Geth nodes are divided into three categories: light nodes, full nodes, and archive nodes.

Light Nodes

Since they don’t validate every block, light nodes do not hold a copy of the Ethereum blockchain. As a result, they rely on data from full nodes. Running light nodes has several advantages, including faster startup, lower storage use, and fewer computational/memory needs. Light nodes have a lesser level of trust and many times rely on full nodes, which can be problematic. 

Light nodes:

  • Store the header chain and request everything else.
  • Verify the validity of the data against the state roots in the block headers.
  • Provide a use for low capacity devices, such as embedded devices or mobile phones, which can't afford to store gigabytes of blockchain data.

Full Nodes

Full nodes verify that the transactions in the blocks follow the standards outlined in the Ethereum Yellow Paper. They do this to guarantee that the blocks transferred over the network are genuine. You can have faith in their efforts. This verification technique is used by complete nodes to keep the network in line with Ethereum's requirements.

Full nodes:

  • ​​Store full blockchain data.
  • Participate in block validation and verify all blocks and states.
  • Derive all states.
  • Serve the network and provide data on request.

Archive Nodes

An archive node is a node that saves the entire transaction history. The wellness and structure of the network is dependent on these nodes.

Archive Nodes:

  • Store everything kept in the full node and build an archive of historical states. This is needed if you want to query account balances or any on-chain data, or simply and reliably test your own transactions set without mining them using OpenEthereum.
  • Provide data that represents units of terabytes. This makes them less attractive for average users but makes them handy for services like block explorers, wallet vendors, and chain analytics.

source: https://ethereum.org/en/developers/docs/nodes-and-clients/

Requirements for Installing Geth

  • Multi-core CPU (7GB+ of RAM)
  • Local SSD drive with at ~600GB+ of free space
  • *OPTIONAL* Use 16/32 GB+ CPU for optimized performance by caching. By using caching features (aka using the ‘--cache’ flag), Geth will be able to get the state from memory instead of your hard drive.
  • Homebrew for Mac users
  • PPA for Linux/Ubuntu
  • *OPTIONAL* Parity (for more information, learn how to migrate from parity to Geth)

Geth Installation Methods

You can install Geth via packet manager, via homebrew on MacOS or PPA on Ubuntu, directly download it, run it in a docker, or even build it from scratch.

Homebrew using MacOS Terminal:

$ brew tap ethereum/ethereum $ brew install ethereum

Check out a list of different helpful commands here (abigen, bootnode, checkpoint-admin, clef, devp2p, ethkey, evm, faucet, geth, etc.) or you can also run:

$ geth --help

PPA for Linux/Ubuntu:

$ sudo add-apt-repository -y ppa:ethereum/ethereum

Install the stable version of go-ethereum:

$ sudo apt-get update $ sudo apt-get install ethereum

Docker:

Download Docker from here. Then run the following:

$ docker pull ethereum/client-go:latest

And then run:

$ docker run ethereum/client-go:latest

Run Geth

Run this command in a terminal at the location where we unzipped the Geth folder/root folder so that we can run it:

$ ./Geth console --testnet --syncmode "light" --rpc --rpcaddr "localhost" --rpcport "8545" --rpccorsdomain "*" --rpcapi="db,eth,net,web3,personal"

This will right away take us to the Geth console. By typing

net

,we can see if we have any peers, and by typing

eth.syncing

,we can see if the node is currently syncing. It is possible that your node will not begin synchronizing until you restart it.

For example, running

eth.syncing

will output the following sample query:

> eth.syncing{currentBlock: 3264679,highestBlock: 5257370,knownStates: 3180,pulledStates: 212,startingBlock: 3263125}

Final Thoughts

Geth is often already included in the majority of web/extension wallets accessible for consumer adoption (MetaMask, Coinbase, Rainbow, etc). 

But, installing and running Geth is well worth the effort if you want to experiment with mining or develop your own custom Ethereum software. It’s also useful if you simply want to control your own node and your wallet's key (signing your own transactions rather than relying on third-party software). Using Geth, you can now open up a whole world of Ethereum development!

Intro to Geth and Nodes

Ethereum nodes are computers that are part of the Ethereum blockchain network. These nodes are real computers that run software that checks, stores, and sometimes makes blocks.

 "Client" is the name of the actual software. It lets us interact with the blockchain through a JSON-RPC API, read and verify the blockchain, and read or write to smart-contracts.

Geth is one of these clients and one of the most popular ones to use. It's written in the Go programming language and kept up to date by a group of people who work for the Ethereum Foundation and other people who help.

Some characteristics of Geth:

  • It comes with a JavaScript console that you can run with "geth console."
  • The client can work with other JavaScript clients (web3js).
  • The Rinkeby test net is built in (or build your own private Ethereum network)
  • It is usually thought of as the standard for other Ethereum nodes.

In this latest Alchemy blog, we'll learn how to install and run a Geth node.

Networks (Mainnet vs Testnet) and Geth

To understand Geth nodes, we’ll need to understand different networks of Ethereum.

Ethereum features a single core network (Mainnet) where all transactions take place, but it also makes use of a number of other testing networks that have been set up to test things out (Testnet). Consider using these "play" blockchains to experiment with blockchain capabilities outside of your localhost.

1. Mainnet

The Ethereum mainnet is the network used to generate Ethereum. ETH may be mined or traded on exchanges, and it is always available.

2. Ropsten

Ropsten is a test network that most closely mimics the mainnet. Is based on the same proof of work. This Ropsten test network is vulnerable to spam attacks since test ETH is mined in the same way as Mainnet ETH and is easy to get with no value.

3. Rinkeby

Rinkeby's testnet uses proof of authority, which means you won't be able to get test ETH unless you can prove you are who you say you are. This is done by linking an Ethereum address to a social media account, such as Facebook. This makes it far more difficult for someone to attack the network since getting a large number of ETH requires a significant amount of effort. Rinkeby can only be accessed by Geth nodes.

To start building on the Rinkeby testnet and get Rinkeby Ether from a free faucet.

4. Kovan

The main difference is that Kovan is only available on parity nodes, and you must use GitHub to verify your identity.

5. Goerli

Goerli was deployed under the Proof-of-Authority framework. It employs the Clique consensus technique, which was first developed by Chainsafe and Afri Schoedon. The Goerli community maintains the network, which is backed by Geth, Parity, Nethermind, and Hyperledger Besu. Goerli has a larger network size, number of nodes, and range of clients than Kovan and Rinkeby.

Learn how to get Goerli Ether and use Alchemy's GoETH faucet to get started on the Goerli test network.

6. Kiln

At the time of writing, many of the above testnets will be deprecated/upgraded as a result of Ethereum running full speed towards their proof of stake merge later this year. As of now, the Kiln testnet is the final public testnet before the switch to proof of stake. 

This switch is a significant achievement for the Ethereum network, which is about to undergo some of the most significant changes it has seen since its creation. Assuming there are no issues with Kiln, the current Ethereum testnets (Goerli, Ropsten, and so on) will be able to proceed without interruption. 

Learn more about the Kiln testnet and get fake Kiln Ether to start building on Kiln.

What is a Geth Node?

With Geth, you can establish your own private Ethereum network. The blockchain of an Ethereum network begins with a root block known as the genesis block. There are no transactions in the genesis block.

There are different sorts of Ethereum nodes, but Geth nodes are divided into three categories: light nodes, full nodes, and archive nodes.

Light Nodes

Since they don’t validate every block, light nodes do not hold a copy of the Ethereum blockchain. As a result, they rely on data from full nodes. Running light nodes has several advantages, including faster startup, lower storage use, and fewer computational/memory needs. Light nodes have a lesser level of trust and many times rely on full nodes, which can be problematic. 

Light nodes:

  • Store the header chain and request everything else.
  • Verify the validity of the data against the state roots in the block headers.
  • Provide a use for low capacity devices, such as embedded devices or mobile phones, which can't afford to store gigabytes of blockchain data.

Full Nodes

Full nodes verify that the transactions in the blocks follow the standards outlined in the Ethereum Yellow Paper. They do this to guarantee that the blocks transferred over the network are genuine. You can have faith in their efforts. This verification technique is used by complete nodes to keep the network in line with Ethereum's requirements.

Full nodes:

  • ​​Store full blockchain data.
  • Participate in block validation and verify all blocks and states.
  • Derive all states.
  • Serve the network and provide data on request.

Archive Nodes

An archive node is a node that saves the entire transaction history. The wellness and structure of the network is dependent on these nodes.

Archive Nodes:

  • Store everything kept in the full node and build an archive of historical states. This is needed if you want to query account balances or any on-chain data, or simply and reliably test your own transactions set without mining them using OpenEthereum.
  • Provide data that represents units of terabytes. This makes them less attractive for average users but makes them handy for services like block explorers, wallet vendors, and chain analytics.

source: https://ethereum.org/en/developers/docs/nodes-and-clients/

Requirements for Installing Geth

  • Multi-core CPU (7GB+ of RAM)
  • Local SSD drive with at ~600GB+ of free space
  • *OPTIONAL* Use 16/32 GB+ CPU for optimized performance by caching. By using caching features (aka using the ‘--cache’ flag), Geth will be able to get the state from memory instead of your hard drive.
  • Homebrew for Mac users
  • PPA for Linux/Ubuntu
  • *OPTIONAL* Parity (for more information, learn how to migrate from parity to Geth)

Geth Installation Methods

You can install Geth via packet manager, via homebrew on MacOS or PPA on Ubuntu, directly download it, run it in a docker, or even build it from scratch.

Homebrew using MacOS Terminal:

$ brew tap ethereum/ethereum $ brew install ethereum

Check out a list of different helpful commands here (abigen, bootnode, checkpoint-admin, clef, devp2p, ethkey, evm, faucet, geth, etc.) or you can also run:

$ geth --help

PPA for Linux/Ubuntu:

$ sudo add-apt-repository -y ppa:ethereum/ethereum

Install the stable version of go-ethereum:

$ sudo apt-get update $ sudo apt-get install ethereum

Docker:

Download Docker from here. Then run the following:

$ docker pull ethereum/client-go:latest

And then run:

$ docker run ethereum/client-go:latest

Run Geth

Run this command in a terminal at the location where we unzipped the Geth folder/root folder so that we can run it:

$ ./Geth console --testnet --syncmode "light" --rpc --rpcaddr "localhost" --rpcport "8545" --rpccorsdomain "*" --rpcapi="db,eth,net,web3,personal"

This will right away take us to the Geth console. By typing

net

,we can see if we have any peers, and by typing

eth.syncing

,we can see if the node is currently syncing. It is possible that your node will not begin synchronizing until you restart it.

For example, running

eth.syncing

will output the following sample query:

> eth.syncing{currentBlock: 3264679,highestBlock: 5257370,knownStates: 3180,pulledStates: 212,startingBlock: 3263125}

Final Thoughts

Geth is often already included in the majority of web/extension wallets accessible for consumer adoption (MetaMask, Coinbase, Rainbow, etc). 

But, installing and running Geth is well worth the effort if you want to experiment with mining or develop your own custom Ethereum software. It’s also useful if you simply want to control your own node and your wallet's key (signing your own transactions rather than relying on third-party software). Using Geth, you can now open up a whole world of Ethereum development!

{{building-alchemy-ad}}

Contact Us

Talk to an expert at Alchemy to answer all of your product questions.
Valid number
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Build blockchain magic with Alchemy

Alchemy combines the most powerful web3 developer products and tools with resources, community and legendary support.

Get started for free