以太坊建立一个私有链(两台电脑)

要求:
1、两台电脑要在一个网络中,能ping通

2、两个节点使用相同的创世区块文件

3、禁用ipc;同时使用参数--nodiscover

4、networkid要相同,端口号可以不同
这里节点使用的创始区块内容为:

{
  "config": {
        "chainId": 10, 
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
  "alloc"      : {
        "7df9a875a174b3bc565e6424a0050ebc1b2d1d82": { "balance": "100000000000000000000000" },
        "f41c74c9ae680c1aa78f42e5647a62f353b7bdde": { "balance": "120000000000000000000000" }
},
  "coinbase"   : "0x0000000000000000000000000000000000000000",
  "difficulty" : "0x1",
  "extraData"  : "",
  "gasLimit"   : "0x2fefd8",
  "nonce"      : "0x0000000000000042",
  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "timestamp"  : "0x00"
}

节点A:
初始化区块链:
geth --datadir data0 init genesis.json
geth --datadir data0 --nodiscover --networkid 333 --ipcdisable --port 1111 --rpc --rpcport 2222 console 2>>geth.log
console 2>>geth.log命令是用一个专门的文件记录log信息,保持控制台清洁
这样就进入了控制台界面,获取本节点的信息:
admin.nodeInfo.enode
(我的返回值是:
"enode://c4561d49c91090f4666969dd01b223adbe10c9eeb3d65326002099e4a9f3f17dec3d3c70c8dceffbe4438d3f5f0ee5a9a11841076063422b629be778d669c8df@[::]:1111")

节点B(另一台电脑):执行相同的命令
geth --datadir data0 init genesis.json

geth --datadir data0 --nodiscover --networkid 333 --ipcdisable --port 3333 --rpc --rpcport 4444 console 2>>geth.log

然后B节点主动加入A节点:(通过A的enode信息来连接,其中包括了ip地址和端口号)

admin.addPeer("enode://c4561d49c91090f4666969dd01b223adbe10c9eeb3d65326002099e4a9f3f17dec3d3c70c8dceffbe4438d3f5f0ee5a9a11841076063422b629be778d669c8df@192.168.1.1:1111")

(注意:不能原封不动的将上面的enode复制过来,需要将A节点的ip地址填上)

然后在两个节点上测试:

net.peerCount

会返回已连接的其他节点的个数

admin.peers

返回其他节点的信息

然后一个节点创建账户,开始挖矿(要记得解锁账户),另一个节点也会自动同步。
(A节点可以将智能合约部署在私有链上,B节点可以根据合约部署地址来调用合约)(此功能还未测试)
geth attach "http://172.0.0.1:2222"
参考文章:https://blog.csdn.net/zhj_fly/article/details/79618194

"enode://60c369ceb1f8d75a6c71d4fcf53ebf0d74aa696f07a4b753fbade74a77366cb0769c06f3cf1624b639064230d702a5da7a9615477bbbea9631c9212d644358e5@10.160.25.203:1111"

你可能感兴趣的:(以太坊建立一个私有链(两台电脑))