我正在使用geth运行一个Ethereum节点,它找不到任何对等节点。我已经尝试了维基上建议的时间同步命令。我的带宽很好。
发布于 2016-01-20 19:35:12
默认情况下,geth
使用端口30303连接到其他节点。您可能需要修改防火墙以允许通过此端口进行通信。
当连接到javascript控制台(geth attach
)时,您可以检查对等点计数以及获取对等点列表。
instance: Geth/v1.3.2/darwin/go1.5.1
datadir: /Users/home/Library/Ethereum
coinbase: 0xd3cda913deb6f67967b99d67acdfa1712c293601
at block: 864339 (Sun, 17 Jan 2016 16:00:07 MST)
modules: admin:1.0 db:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 shh:1.0 txpool:1.0 web3:1.0
> net.peerCount
5
> admin.peers
[{
caps: ["eth/61", "eth/62"],
id: "03743aa20db17dc12d2e355f32b75964653408eaab2c6e0fad7b2600fef49b3c2ec938d436fc48e86582d732d8eb64935edddee7d5c9caf726261add05cf46fe",
name: "Geth/v1.2.2/linux/go1.5",
network: {
localAddress: "10.0.1.48:30303",
remoteAddress: "87.106.88.35:35646"
},
protocols: {
eth: {
difficulty: 2283869820384174300,
head: "d0d57a2f8fea1c834ce277d031727fecc1baf617b69e4d169f87f7e2d56f04c6",
version: 62
}
},
...
]
如果您有一个健康的geth节点运行在其他地方,您可以尝试用admin.addPeer
函数引导您的对等连接。函数应该使用admin.addPeer("enode://<id>@<ip_address>:<port>")
格式的enode地址调用,其中ip_address
和port
值来自对等信息的remoteAddress
部分,而id
是对等信息的id
键下的大长十六进制字符串。对上述同行而言,这将是:
admin.addPeer("enode://03743aa20db17dc12d2e355f32b75964653408eaab2c6e0fad7b2600fef49b3c2ec938d436fc48e86582d732d8eb64935edddee7d5c9caf726261add05cf46fe@87.106.88.35:35646")
如果您以某种方式通过某种非基于网络的机制与所有的对等方失去连接,这将是非常有用的。然而,没有对等点可能是一个网络问题,手动添加对等点可能只会将服务器作为止损解决方案。
发布于 2016-01-20 17:51:37
很好,您检查了时间,但最常见的原因是找不到对等点的防火墙和网络配置。如果防火墙正在运行,请尝试禁用它。
https://ethereum.stackexchange.com/questions/53
复制相似问题