博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用树莓派和PC机搭建多节点私人以太坊网络
阅读量:5317 次
发布时间:2019-06-14

本文共 1688 字,大约阅读时间需要 5 分钟。

 发现国内很少有树莓派和电脑组建的私人区块链,所以在自己做实验的过程中记录下来分享给大家,第一次写博客,哈哈 

以太坊私有链搭建(电脑,树莓派端都适用)

(1)新建一个文件夹,例如mychain,用来保存私有链的数据。创建一个初始化的配置文件,genesis.json

$ mkdir mychain

$ cd mychain

$ vim genesis.json

然后将如下的配置信息写入到genesis.json文件中(注意:chainId不能为0)

{

  "config": {

        "chainId": 3,

        "homesteadBlock": 0,

        "eip155Block": 0,

        "eip158Block": 0

    },

  "alloc"      : {},

  "coinbase"  : "0x0000000000000000000000000000000000000000",

  "difficulty" : "0x200",

  "extraData"  : "",

  "gasLimit"  : "0x2fefd8",

  "nonce"      : "0x0000000000000042",

  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",

  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",

  "timestamp"  : "0x00"

}

注意

Insert写入文件后

Esc退出

Shift + :

wq

(2)初始化创世区块,并指定数据存放路径

$ geth --datadir mychain init genesis.json

(3)启动私有链节点,并将日志输入到mychain.log

geth --networkid 3 --datadir mychain --identity "mychain" --rpc --rpcaddr 0.0.0.0 --rpcport 8545 --rpcapi "admin,debug,eth,miner,net,personal,shh,txpool,web3" --port 30303 --rpccorsdomain "*" --nodiscover console 2>>mychain.log

启动成功后进入控制台界面

4.测试

(1)创建新账户

personal.newAccount(“123456”)

创建成功将返回账户的地址

树莓派端:

查看节点信息

电脑端:

查看节点信息

注意事项:

1.电脑在同一网络,可相互ping通

2.有相同创世块文件

3.neworkid相同

4.port号(节点端口号),rpcport号(http-rpc端口号)不能重复 networkid:3

我的树莓派 ip地址:192.168.1.106 port:8546 rpcport:30302

我的PC机 ip地址:192.168.1.105 port:8545 rpcport:30303

树莓派的节点主动加入电脑端节点:(通过PC机的enode信息来连接,其中包括了ip地址和端口号)

> admin.nodeInfo.enode

admin.addPeer("enode://2aa01bad57cfcd9bc9073a3ae7cc33fcd31704e4c81990f69b586e4ddd5fbcd3a1130ff6394f25f2c25dc645f1ec301d69223e857cdd014780ebdb22597e81f3@192.168.1.105:30303")

电脑端采用相同方式添加树莓派节点

(树莓派节点可以将智能合约部署在私有链上,电脑端节点可以根据合约部署地址来调用合约,挖矿。)

 

 

 

转载于:https://www.cnblogs.com/yue-chen/p/11212234.html

你可能感兴趣的文章
聊聊setTimeout和setInterval线程
查看>>
项目执行过程
查看>>
关于input type=file 限制文件上传类型
查看>>
深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap[转]
查看>>
JDK中DNS缓存的分析
查看>>
Objective-C中的@property和@synthesize用法
查看>>
一位面试者提到直接调用vuex中mutations方法
查看>>
动态加载vs静态加载
查看>>
(7)关于margin的一些想法2.0
查看>>
C#类与结构体究竟谁快——各种函数调用模式速度评测
查看>>
我到底要选择一种什么样的生活方式,度过这一辈子呢:人生自由与职业发展方向(下)...
查看>>
一些有意思的算法代码[转载]
查看>>
poj 题目分类
查看>>
windows 安装yaml支持和pytest支持等
查看>>
读书笔记:季羡林关于如何做研究学问的心得
查看>>
面向对象的优点
查看>>
套接口和I/O通信
查看>>
mysqlslap 压力测试工具
查看>>
DWR与Spring结合
查看>>
[转]Eclipse下导入外部jar包的3种方式
查看>>