區塊鏈(三)基於本地以太坊客戶端搭建多節點私鏈

1. 新建一個目錄Test_Eth,用於存放區塊鏈等數據。

在~\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"
}

 2. 在Test_Eth目錄下啓動geth,以genesis.json中的創世塊開始創建私有鏈。 

geth --datadir ./ init genesis.json

結果如下: 

3. 啓動p2p節點A控制檯

此命令將建立一個p2p網絡,網絡id爲225,區塊鏈數據存放於Test_Eth目錄中

 geth --datadir ./ --networkid 225 console

結果如下所示:

4. 新建另外一個目錄Test_Eth2,啓動另外一個node (node B)

使用同樣的genesis.json作爲創世塊,將Test_Eth中的genesis.json複製到Test_Eth2,執行以下命令:

geth --datadir ./ init genesis.json

使用不同的端口,啓動控制檯

geth --datadir ./ --networkid 225 --port 30304 console

結果如下:

5. 新建另外一個目錄Test_Eth3,啓動另外一個node (node C)

使用同樣的genesis.json作爲創世塊,將Test_Eth中的genesis.json複製到Test_Eth3,執行以下命令:

geth --datadir ./ init genesis.json

使用不同的端口,啓動控制檯

geth --datadir ./ --networkid 225 --port 30305 console

結果如下:

6. 在nodeA通過命令查看節點A的enode信息

admin

結果如下所示:

7. 在啓動後, 在node B控制檯中輸入命令,讓node B連接第一個node A:

admin.addPeer("enode://fc0ba73989008806f9050135367426913611c80f1157d988c8dd6509a1225d3866d172db35e84ea4129b361002aee90311af180a802818d5084b6afeaf418489@127.0.0.1:30303")

結果如下所示:

 8.在node C控制檯中輸入命令,讓node C連接第一個node A: 

admin.addPeer("enode://fc0ba73989008806f9050135367426913611c80f1157d988c8dd6509a1225d3866d172db35e84ea4129b361002aee90311af180a802818d5084b6afeaf418489@127.0.0.1:30303")

結果如下所示:

 

 9. 在任一節點控制檯輸入命令查看節點接入情況

admin.peers

結果如下所示:

在節點A創建賬戶:

personal.newAccount("123456") //123456爲賬號密碼

在節點A使用命令進行挖礦:(默認第一個賬戶挖礦)

miner.start()

可以看到節點A,節點B,節點C都有相同的數據:

至此,基於本地以太坊客戶端搭建多節點私鏈工作完成。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章