I've created a config.toml for Ropsten (NetworkId =3) that looks like this: https://pastebin.com/raw/2DxWE1jf

But when I run

geth --config /home/path-to-config

From the cli I get: (Note ChainID:1, should be 3)

INFO [08-27|00:10:34.285] Initialised chain configuration config="{ChainID: 1 Homestead: 1150000 DAO: 1920000 DAOSupport: true EIP150: 2463000 EIP155: 2675000 EIP158: 2675000 Byzantium: 4370000 Constantinople: 7280000 Petersburg: 7280000 Istanbul: 9069000, Muir Glacier: 9200000, YOLO v1: <nil>, Engine: ethash}"

And the clients is stucked looking for peers.

What I'm missing? If I run geth --testnet it works fine.

In Geth the configuration file works differently from bitcoin/parity?

I've also tried to dump the config file from geth --testnet, that works, but if I delete the chaindata I have the same problem. I need to pass the configuration file on the first run of the node

  • 1
    Seems an issue to me, take a look at this: ethereum.stackexchange.com/questions/29063/… I've also searched a relative issue on geth git, but without success, if you can't figure out a solution, maybe you should open it.
    – Dibi91
    Commented Aug 27, 2020 at 9:43
  • 2
    I was thinking the same, as far as I understood the point is that --testnet does not exist in the configuration options so you can specify the networkid (3) but the client will alway start with the mainet genesis file. To solve this you would need write the genesis block in the config.toml but this is not what I'm looking for since the genesis may change in the future. I'll open an issue on github
    – greengo
    Commented Aug 27, 2020 at 10:48

1 Answer 1


You must specify the --ropsten parameter

geth --ropsten --config /home/path-to-config

If for some reason you don't want to use the ropsten parameter, follow the instructions below.

  1. dump the ropsten config with geth --ropsten dumpconfig > ropsten_config.toml
  2. change ropsten_config.toml at your will, I suggest to change the datadir
  3. dump the ropsten genesis with geth --ropsten dumpgenesis > ropsten_genesis.json
  4. init the chain geth --config ropsten_config.toml init ropsten_genesis.json
  5. start the chain geth --config ropsten_config.toml

If ropsten is resetted for some reason:

  1. download the new geth client (it will have the new genesis embedded)
  2. remove the levelDB and ancient DB with: geth --config ropsten_config.toml removedb
  3. repeat from step 1)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.