目前,我正试图在AWS EC2实例上设置ethereum私有链。不幸的是,该网络中的节点无法通过ethereum P2P协议相互连接。
我的问题是:我错过了什么?
这是一个配置模式列表,我尝试过,但没有成功。任何提示,我还可以尝试什么,或者如何修复这些模式之一?
的基本结构
--networkid、--nat "none"、--port 30304--networkid、--nat "none"、--port 30304的私有ip地址中使用--bootnodes
--bootnodes "enode://enode-of-bootnode@private-ip-of-bootnode:30304"启动挖掘节点admin.peers在两个挖掘节点上回复[]的公共ip地址中使用--bootnodes
--bootnodes "enode://enode-of-bootnode@public-ip-of-bootnode:30304"启动挖掘节点admin.peers在两个挖掘节点上回复[]的私有ip地址
--bootnodes启动挖掘节点admin.addPeer("enode://enode-of-bootnode@private-ip-of-bootnode:30304")admin.peers在两个挖掘节点上回复[]的公共ip地址
--bootnodes启动挖掘节点admin.addPeer("enode://enode-of-bootnode@public-ip-of-bootnode:30304")admin.peers在两个挖掘节点上回复[]--bootnodes的情况下并使用--nodiscover启动挖掘节点admin.addPeer("enode://enode-of-mining-0@private-ip-of-mining-0:30304") 1admin.addPeer("enode://enode-of-mining-1@private-ip-of-mining-1:30304") 0admin.peers在两个挖掘节点上回复[]如果将私有ip-of-挖掘-{0,1}替换为公共-ip-of-挖掘-{0,1}
发布于 2016-12-15 07:40:33
在回答我自己的问题时,以下是我的案例的最终结果。有关更多细节,请参见此GitHub回购。它提供了用于在亚马逊EC2节点上提供和控制私有ethereum网络的ansible播放本。
我有两个具有私有EC2 ip地址的挖掘节点正在运行。它们是从(更多细节...)开始的
% geth --nodiscover --mine --port 30303 <more command line options>注意,挖掘节点是用--nodiscover启动的。
这样一个节点的enode url是enode://<enode-id@<private-ip-address>:30303,其中enode_is是在以下命令中得到的:
% geth --exec "admin.nodeInfo.id" <more options> console我添加了一个具有静态配置的最小化节点的网关节点。对等点在数据目录中的文件static-nodes.json中配置:
[
"enode://<enode-id-1>@<private-ip-address-1>:30303",
"enode://<enode-id-2>@<private-ip-address-2>:30303"
]网关节点启动时(更多细节...)
% geth --nodiscover --port 30303 <more command line options>https://ethereum.stackexchange.com/questions/10664
复制相似问题