[Ethereum] the difference between networkid 3 and testnet

go-ethereumnetworkidtestnets

I have geth 1.5.4 installed on my ubuntu box. Here is the geth command line documentation for networkid:

–networkid value Network identifier (integer, 0=Olympic (disused), 1=Frontier, 2=Morden (disused), 3=Ropsten) (default: 1)

So, to connect to the Ropsten network, I started geth with --networkid 3.

geth –fast –networkid 3 console

However, it did not connect to the Ropsten network at all. My node started syncing but not sure what network it connected to. When I don't specify networkid but just pass –testnet:

geth –fast –testnet console

it connects to Ropsten network correctly and starts syncing.

What is the difference between specifying --testnet vs --networkid 3?

Best Answer

In addition to --networkid 3 starting geth with --testnet also makes sure that you use the correct genesis node for Ropsten.

You can start Ropsten also this way:

geth init ropsten_genesis.json && geth --networkid 3
Related Topic