Amazon ec2 如何在aws上使用bootnode设置专用以太坊网络

Amazon ec2 如何在aws上使用bootnode设置专用以太坊网络,amazon-ec2,network-programming,blockchain,ethereum,Amazon Ec2,Network Programming,Blockchain,Ethereum,我正在尝试使用bootnode建立一个专用以太坊网络。我在EC2(t2.medium)上创建了两个具有相同安全组的实例 bootnode -genkey boot.key 然后我使用以下命令设置bootnode bootnode -nodekey boot.key -verbosity 7 -addr "172.31.20.13:30310" geth --datadir "./mydatadir" init genesis.json geth --networkid

我正在尝试使用bootnode建立一个专用以太坊网络。我在EC2(t2.medium)上创建了两个具有相同安全组的实例

     bootnode -genkey boot.key
然后我使用以下命令设置bootnode

     bootnode -nodekey boot.key -verbosity 7 -addr "172.31.20.13:30310"
geth --datadir "./mydatadir" init genesis.json
geth --networkid 1337 --datadir "./mydatadir" --bootnodes                              "enode://52c75d5bb8f8287a5942151dabb35756b2ee664faa8a1f98b8fb5ae778953bf0dde553b0d574e85cbfcbd8adf4068a0c7611f270e673776c7e67225b38eadcd2@172.31.20.13:30310" --port 3003 --ipcdisable --syncmode full console
已使用enode值成功设置引导节点=enode://52c75d5bb8f8287a5942151dabb35756b2ee664faa8a1f98b8fb5ae778953bf0dde553b0d574e85cbfcbd8adf4068a0c7611f270e673776c7e67225b38eadcd2@172.31.20.13:30310

我使用genesis文件和下面的命令初始化了这两个节点

     bootnode -nodekey boot.key -verbosity 7 -addr "172.31.20.13:30310"
geth --datadir "./mydatadir" init genesis.json
geth --networkid 1337 --datadir "./mydatadir" --bootnodes                              "enode://52c75d5bb8f8287a5942151dabb35756b2ee664faa8a1f98b8fb5ae778953bf0dde553b0d574e85cbfcbd8adf4068a0c7611f270e673776c7e67225b38eadcd2@172.31.20.13:30310" --port 3003 --ipcdisable --syncmode full console
Genesis.json

{
"config": {
    "chainId": 1337,
    "homesteadBlock": 0,
    "eip155Block": 0,
    "eip158Block": 0
},
"nonce": "0x0000000000000042",
"timestamp": "0x00",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "0x00",
"gasLimit": "0x8000000",
"difficulty": "0x01",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x238dd521ad221b37cc176fa9f4bf88cf19fe39f1",
"alloc": {
  "0x238dd521ad221b37cc176fa9f4bf88cf19fe39f1" : {
    "balance" : "200000000000000000000000"
  },
  "0xaebc7588345fc7963505dd6de9d12390980fc13d" : {
    "balance" : "10000000000000000000"
  },
  "0xa5c77bd6319a5eaba9494acd90cac9712f9e15c9" : {
    "balance" : "20000000000000000000"
    }
 }
 }
我现在尝试将两个节点(两个实例)连接到bootnode,其中一个节点位于bootnode的同一个实例上。我使用了下面的命令

     bootnode -nodekey boot.key -verbosity 7 -addr "172.31.20.13:30310"
geth --datadir "./mydatadir" init genesis.json
geth --networkid 1337 --datadir "./mydatadir" --bootnodes                              "enode://52c75d5bb8f8287a5942151dabb35756b2ee664faa8a1f98b8fb5ae778953bf0dde553b0d574e85cbfcbd8adf4068a0c7611f270e673776c7e67225b38eadcd2@172.31.20.13:30310" --port 3003 --ipcdisable --syncmode full console
此节点成功加入bootnode并与之交互

TRACE[05-24|21:01:55] << FINDNODE/v4                           addr=172.31.20.13:3003 err="unknown node"<br>
TRACE[05-24|21:01:55] >> PONG/v4                               addr=172.31.20.13:3003 err=nil<br>
TRACE[05-24|21:01:55] << PING/v4                               addr=172.31.20.13:3003 err=nil<br>
TRACE[05-24|21:01:55] Starting bonding ping/pong               id=33c0695b8d4f9ff6 known=false failcount=0 age=424221h1m55.666391609s<br>
TRACE[05-24|21:01:55] >> PING/v4                               addr=172.31.20.13:3003 err=nil

节点已成功启动,但我看不到它与bootnode交互,当我在两个节点上键入admin.peer命令时,我得到一个空列表。我是否做错了什么?请帮我解决一下

似乎是某个节点中的防火墙。。。默认情况下,引导节点在端口30301上启动。可能是您已配置安全组,因此端口30310未打开。确保所需的端口已打开,并且两个EC2节点能够通过IP相互通信

确保您可以使用UDP访问侦听端口,就像geth使用UDP进行对等一样