使用bootnode节点建立private network

使用bootnode,让各个节点发现彼此。其实bootnode就类似是中心注册服务,各个节点连接到bootnode,来获取其他节点。

启动bootnode

bootnode --genkey=boot.key
bootnode --nodekey=boot.key

bootnode的配置很简单,只需要一个key就可以。启动后,会监听一个端口,供其他其他服务连接。

启动各个节点

每个节点都要执行下面的操作

geth --datadir path/to/custom/data/folder init genesis.json

geth --datadir path/to/custom/data/folder --networkid 15 --bootnodes <bootnode-enode-url-from-above>

geth --datadir DIR console
> net.peerCount
2
> admin.peers
...

注意,在3节点的情况下(1个bootnode节点,3个peer节点),连接到每个peer,看到的net.peerCount=2admin.peers也会显示其他2个节点的信息,而不包括自己。

Ref