【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链

新建node2节点数据存储文件夹

之前的【区块链2.0实战学习笔记】————11、搭建以太坊私有链算是一个单节点以太坊网络,这次我们在原来的基础上再增加一个节点网络,命名为node2,使用eth2为data目录。

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第1张图片

因为我们只是简单的增加节点所以我们的创世区块文件保持不变,创世区块文件保持不变。创世区块文件保持不变!重要的话说三遍!

初始化创世区块

 geth --datadir /home/r00t/Private_eth/eth2 init genesis.json

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第2张图片

启动节点node2并于node1相连

查看node1的enoded url信息,这是节点01与其他节点互动的唯一id:
【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第3张图片

启动node2,由于是单机多节点,节点node2的port以及rpcport应与节点node1的不同,并通过enoded url与节点01相关联。

sudo geth --networkid 111 --datadir /home/r00t/Private_eth/eth2 --identity "node2" --rpc --rpcport "8546" --port "30304" --rpcaddr "192.168.11.193" --nodiscover --bootnodes "enode://2a072dcdc47e8c494f0bb237b793083bd13227b2d1ab585aafd01981ff0db7a67eb7c58320b8ecde489f26e14f98588e3b13111c3d1b8bd2bfd99ff7df4ce3eb@127.0.0.1:30303?discport=0" --rpcapi "eth,net,web3,personal.admin,shhh,txpool,debug,miner" console

如果执行上述命令报错,那么你也不要偷懒自己手敲上述的命令,有时候你复制过去的内容由于编码不同就会导致无法执行。

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第4张图片

注:bootndoes的值来链接节点01,后面跟着在节点01的控制台通过admin.nodeInfo得到的值。你也可以先不设置bootnodes,直接启动节点,之后进入命令行后通过admin.addPeer(enodeUrl)来添加节点01,使其和节点01相连。

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第5张图片

查看节点node2的信息:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第6张图片

多节点信息查看

1、查询链接的其他节点的个数

node2:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第7张图片

node1:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第8张图片

2、查询链接的其他节点列表

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第9张图片

3、查询节点node2中的区块高度

这时你会发现node2已经与node1完成了同步,区块的高度都变为了79,这也验证了我们所述的区块链中的每个节点都是一个“区块链数据库”的副本。

创建第三个节点

下面我们继续创建第三个节点,并且将第三个节点也加入到该私有链中进行测试:

1、新建node3节点数据存储文件夹

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第10张图片

2、初始化创世区块

geth --datadir /home/r00t/Private_eth/eth3 init genesis.json

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第11张图片

3、启动节点node2

geth --networkid 111 --datadir /home/r00t/Private_eth/eth3 --identity "node3" --rpc --rpcport "8547"  --port "30305" --rpcaddr "192.168.11.193" --nodiscover --rpcapi "eth,net,web3,personal,admin,shh,txpool,debug,miner" console

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第12张图片

4、添加节点node1,node2到node3中

添加node1到node3中

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第13张图片

添加node2到node3中:

查询信息

node3:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第14张图片

多节点挖矿

因为node2、node3中默认账户为0,所以我们先在node2、node3中创建两个新账户:

node2:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第15张图片

node3:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第16张图片

在挖矿之前,我们先来一波交易:

1、node1解锁账户account[0]

2、node3获取eth.accounts[0]的账户地址

3、node1中执行转账,转账1eth:

4、node1中执行转账,转账3eth

5、node2中查看当前待确认的交易信息:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第17张图片

现在我们开始挖矿,三个节点同时挖掘

node1、node2、node3同时挖矿,将交易打包

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第18张图片

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第19张图片

 

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第20张图片

停止挖矿,node1上查看待确认的交易:

node1余额:

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第21张图片

node2余额

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第22张图片

node3余额

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第23张图片

 

参考链接:
https://www.jianshu.com/p/979c23c0ffa0
https://blog.csdn.net/u014454538/article/details/88750570

写作不易,请作者喝杯奶茶或可乐吧!

【区块链2.0实战学习笔记】————12、以太坊单机多节点私有链_第24张图片

你可能感兴趣的:(【区块链】,————区块链2.0研读)