How to to fork Ethereum main net (from latest block) into a non-official chain that can only be mined by PoA/clique using geth?

Preference for keeping geth code untouched if possible.

As expected, user balances, smart contracts state and history would keep the same as main net until that point, from which on will diverge.

1 Answer 1


How to fork Ethereum from the current state?

You can use testrpc (now renamed as ganache-cli) to fork from another instance.

-f or --fork: Fork from another currently running Ethereum client at a given block. Input should be the HTTP location and port of the other client, e.g. http://localhost:8545. You can optionally specify the block to fork from using an @ sign: http://localhost:8545@1599200.

  • 1
    Thank you! But we do need to use geth for compatibility with the tools we use. Surprisingly, the tools RPC protocols behave slightly different Nov 7, 2018 at 21:47

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.