在~\Test_Eth\中新建一个文件genesis.json,作为私有链的创世块说明文件:
{
"config": {
"chainId": 6,
"homesteadBlock": 0,
"eip150Block": 0,
"eip155Block": 0,
"eip158Block": 0,
"byzantiumBlock": 0,
"constantinopleBlock": 0,
"petersburgBlock": 0
},
"alloc": {},
"coinbase": "0x0000000000000000000000000000000000000000",
"difficulty": "0x20000",
"extraData": "",
"gasLimit": "0x2fefd8",
"nonce": "0x0000000000000042",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp": "0x00"
}
geth --datadir ./ init genesis.json
结果如下:
此命令将建立一个p2p网络,网络id为225,区块链数据存放于Test_Eth目录中
geth --datadir ./ --networkid 225 console
结果如下所示:
使用同样的genesis.json作为创世块,将Test_Eth中的genesis.json复制到Test_Eth2,执行以下命令:
geth --datadir ./ init genesis.json
使用不同的端口,启动控制台
geth --datadir ./ --networkid 225 --port 30304 console
结果如下:
使用同样的genesis.json作为创世块,将Test_Eth中的genesis.json复制到Test_Eth3,执行以下命令:
geth --datadir ./ init genesis.json
使用不同的端口,启动控制台
geth --datadir ./ --networkid 225 --port 30305 console
结果如下:
admin
结果如下所示:
admin.addPeer("enode://fc0ba73989008806f9050135367426913611c80f1157d988c8dd6509a1225d3866d172db35e84ea4129b361002aee90311af180a802818d5084b6afeaf418489@127.0.0.1:30303")
结果如下所示:
admin.addPeer("enode://fc0ba73989008806f9050135367426913611c80f1157d988c8dd6509a1225d3866d172db35e84ea4129b361002aee90311af180a802818d5084b6afeaf418489@127.0.0.1:30303")
结果如下所示:
admin.peers
结果如下所示:
在节点A创建账户:
personal.newAccount("123456") //123456为账号密码
在节点A使用命令进行挖矿:(默认第一个账户挖矿)
miner.start()
可以看到节点A,节点B,节点C都有相同的数据:
至此,基于本地以太坊客户端搭建多节点私链工作完成。