gpt4 book ai didi

javascript - Geth轻节点不同步

转载 作者:行者123 更新时间:2023-12-02 22:07:30 38 4
gpt4 key购买 nike

我想使用 geth 控制台 检查我的钱包余额。因此我确实尝试在轻模式下使用 geth 。但是当我使用时:

geth console --syncmode light

它卡在区 block 号 0 处并且无法开始同步。以下是一些结果:

  • web3.eth.syncing - false

  • eth.blockNumber - 0

我使用的版本是:1.7.3

有人知道如何强制它开始同步吗?

这是我得到的输出:

WARN [12-01|12:02:28] No etherbase set and no accounts found as default
INFO [12-01|12:02:28] Starting peer-to-peer node instance=Geth/v1.7.3-stable-4bb3c89d/linux-amd64/go1.9
INFO [12-01|12:02:28] Allocated cache and file handles database=/root/.ethereum/geth/lightchaindata cache=128 handles=1024
INFO [12-01|12:02:28] Writing default main-net genesis block
INFO [12-01|12:02:29] Initialised chain configuration config="{ChainID: 1 Homestead: 1150000 DAO: 1920000 DAOSupport: true EIP150: 2463000 EIP155: 2675000 EIP158: 2675000 Byzantium: 4370000 Engine: ethash}"
INFO [12-01|12:02:29] Disk storage enabled for ethash caches dir=/root/.ethereum/geth/ethash count=3
INFO [12-01|12:02:29] Disk storage enabled for ethash DAGs dir=/root/.ethash count=2
INFO [12-01|12:02:29] Added trusted checkpoint chain name="ETH mainnet"
INFO [12-01|12:02:29] Loaded most recent local header number=0 hash=d4e567…cb8fa3 td=17179869184
INFO [12-01|12:02:29] Starting P2P networking
INFO [12-01|12:02:31] UDP listener up self=enode://56ff89f879fea8caee295e2e60086b5b1d4e56e0a6135a351f35a092cfdbbc9b7c32261396e0be61998b773ba565e8ef05ed1d3cc1ac7e479ebbccefac754b65@[::]:30303
WARN [12-01|12:02:31] Light client mode is an experimental feature
INFO [12-01|12:02:31] RLPx listener up self=enode://56ff89f879fea8caee295e2e60086b5b1d4e56e0a6135a351f35a092cfdbbc9b7c32261396e0be61998b773ba565e8ef05ed1d3cc1ac7e479ebbccefac754b65@[::]:30303
INFO [12-01|12:02:31] IPC endpoint opened: /root/.ethereum/geth.ipc

提前致谢!

最佳答案

问题是 Geth 全节点默认不为轻量节点提供服务。这会导致轻客户端找不到任何对等点。

现在,我有两个想法来解决这个问题。您可能两者都不喜欢:P

  1. 如果您有权访问任何 Geth 完整节点,请使用 --lightserv 90 运行它,这将专用 90% 的节点带宽来为轻量级节点提供服务。现在尝试使用 admin.addPeer() 将轻客户端硬连接到完整节点。显然,如果您无法访问完整节点,则这是不可行的。

  2. 如果你不依赖Geth,可以尝试Parity它也有一个轻客户端实现,这也不是 super 稳定,但 Parity 客户端默认服务器轻客户端。只需使用 parity --light 尝试一下,看看是否可以从同行那里获取最新的 header 。

披露:我为 Parity 工作。

关于javascript - Geth轻节点不同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47588806/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com