首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >亚马逊AWS上的ethereum -如何连接两个采矿对等点?

亚马逊AWS上的ethereum -如何连接两个采矿对等点?
EN

Ethereum用户
提问于 2016-12-13 13:25:56
回答 1查看 1.2K关注 0票数 5

目前,我正试图在AWS EC2实例上设置ethereum私有链。不幸的是,该网络中的节点无法通过ethereum P2P协议相互连接。

我的问题是:我错过了什么?

这是一个配置模式列表,我尝试过,但没有成功。任何提示,我还可以尝试什么,或者如何修复这些模式之一?

网络

的基本结构

  • 三个EC2实例,每个实例都有一个私有ip地址和一个公共ip地址
  • 在端口8000上运行RCP服务器的一个实例(引导节点):禁用挖掘、私有--networkid--nat "none"--port 30304
  • 启用挖掘的两个实例(挖掘节点),私有--networkid--nat "none"--port 30304
  • 这三个节点属于同一个安全组,此安全组中节点之间的通信量(tcp和udp)是不受限制的。

不工作:在引导节点

的私有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在两个挖掘节点上回复[]

不工作: addPeer()使用引导节点

的私有ip地址

  • 不使用--bootnodes启动挖掘节点
  • 两个挖掘节点上的admin.addPeer("enode://enode-of-bootnode@private-ip-of-bootnode:30304")
  • admin.peers在两个挖掘节点上回复[]

不工作: addPeer()使用引导节点

的公共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") 1
  • 关于挖掘的admin.addPeer("enode://enode-of-mining-1@private-ip-of-mining-1:30304") 0
  • admin.peers在两个挖掘节点上回复[]

如果将私有ip-of-挖掘-{0,1}替换为公共-ip-of-挖掘-{0,1}

EN

回答 1

Ethereum用户

发布于 2016-12-15 07:40:33

在回答我自己的问题时,以下是我的案例的最终结果。有关更多细节,请参见此GitHub回购。它提供了用于在亚马逊EC2节点上提供和控制私有ethereum网络的ansible播放本。

两个挖掘节点

我有两个具有私有EC2 ip地址的挖掘节点正在运行。它们是从(更多细节...)开始的

代码语言:javascript
复制
% geth --nodiscover --mine --port 30303 <more command line options>

注意,挖掘节点是用--nodiscover启动的。

这样一个节点的enode url是enode://<enode-id@<private-ip-address>:30303,其中enode_is是在以下命令中得到的:

代码语言:javascript
复制
% geth --exec "admin.nodeInfo.id" <more options> console

网关节点

我添加了一个具有静态配置的最小化节点的网关节点。对等点在数据目录中的文件static-nodes.json中配置:

代码语言:javascript
复制
[
  "enode://<enode-id-1>@<private-ip-address-1>:30303",
  "enode://<enode-id-2>@<private-ip-address-2>:30303"
]

网关节点启动时(更多细节...)

代码语言:javascript
复制
%  geth --nodiscover --port 30303 <more command line options>

我所观察到的

  • 网关节点以对等方式连接到每个挖掘节点。
  • 网关节点接收两个挖掘节点挖掘的块。
票数 2
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/10664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档