首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能让geth通过引导节点param连接到自己的满节点。

不能让geth通过引导节点param连接到自己的满节点。
EN

Ethereum用户
提问于 2017-08-23 14:12:48
回答 1查看 460关注 0票数 4

我正在运行一个启用LES协议的完整节点,我希望我的轻型客户端能够连接到这个节点并与之同步。

我试图通过使用geth --light --bootnodes <my_enode>启动轻型客户端来实现这一点。不相连。在--verbosity 4设置下,它给了我

DEBUG[08-23|16:05:24] Bad packet from <my_ip>:<my_port>: rlp: too few elements for discv5.pong

我也尝试过使用geth --light --bootnodesv4 <my_enode>。还是联系不上。在本例中,没有调试条目。

当附加到轻型客户端节点并发出`admin.addPeer()时,它成功地连接。

我是否误解了--bootnodes param的用途?

如果不是这样,我如何告诉geth在启动时连接到我的整个节点?

更新:

我刚刚注意到,使用admin.addPeer手动添加并不总是有效的,可能是因为整个节点已经连接了maxPeers。是否可以配置完整的节点,以便始终允许给定的节点列表进行连接(例如,通过保留时隙或更高的优先级)?

EN

回答 1

Ethereum用户

发布于 2021-02-26 13:10:10

我的理解是,使用--bootnodes时,您只需要指定要与之流言蜚语的节点,以便找到要与之交换数据的实际对等点。因此,在您开始交换任何有用的区块链数据之前,这是一个预步骤。

如果希望保存静态对等连接(而不是每次通过admin.addPeer手动添加),则需要创建具有以下内容的config.toml文件:

代码语言:javascript
复制
[Node.P2P]
StaticNodes = ["<your-enode-goes-here>"]

然后使用geth运行--config /path/to/config.toml

不过,正如您已经观察到的,这不足以确保轻型客户端不会被服务器踢出。不幸的是,目前似乎没有任何(记录在案的)方法来实现这一点。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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