[Ethereum] How to fork Ethereum from the current state

forksgo-ethereumhardforksnodesprivate-blockchain

I've read a lot of tutorials and guides that teach how to set up your own private network from scratch.

However, how would I do that from the current state of the blockchain? Instead of generating a new genesis, I'd like to simply "fork" to a private network in-house.

Related but incomplete: How to fork my own version of ETH?related

irrelevant, but: this is strictly educational

Best Answer

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.

Related Topic