本地节点(Geth)无法从TestNet同步

时间:2017-10-16 08:21:54

标签: blockchain solidity get-headers blockchain.info-api

亲爱的所有区块链专家,

我已经使用Geth创建了一个本地节点,这是启动命令。

  • geth --testnet --rpc --rpcaddr“localhost”--rpcport“8545”--rpcapi“web3,eth,net,personal”--rpccorsdomain“*” - datadir“./ data” - 身份“localnode” - fast

本地节点启动并运行。我立即创建了两个个人帐户并将其存储到Keystore文件夹中。

然后,我已经通过MetaMasks将以太网从我的Testnet帐户转移到本地节点的帐户。这里真奇怪的是我仍然可以看到本地节点的帐户以太值是ZERO。

我甚至删除了chaindata文件夹并重新启动了geth客户端控制台。

请建议并多多欣赏。

谢谢。

1 个答案:

答案 0 :(得分:1)

不幸的是,您已成功同步了当地的GEth,但使用的网络不同于您检查以太网的网络!

这种混乱的发生是因为某些节点已经纠正了对Ropesten网络的攻击,但其他节点仍然拥有旧数据。当你运行你的命令时:

  

geth --testnet --rpc --rpcaddr“localhost”--rpcport“8545”--rpcapi“web3,eth,net,personal”--rpccorsdomain“*” - datadir“./ data” - 身份“localnode” - fast

您没有在命令中指定要连接的任何特定节点。而且您错误地连接到仍在旧的已弃用的过时网络区块链数据上运行的节点!

删除“chaindata”文件夹,不会通知GEth尝试其他节点。因为,它将从文件夹“nodes”中选择相同的节点。

要选择要同步的新节点,您可以:

  • 删除“nodes”文件夹,并指定要更新的节点 GEth使用“--bootnodes”选项。
  • 或者,即使在使用以下命令进行同步后添加节点:“admin.addPeer('enode:// ADDRESS @ IP:PORT')”。这是在您使用“geth attach ipc:/home/developer/.ethereum/testnet/geth.ipc”附加到终端的Geth之后

但是,因为没有明确列出哪些节点已经分叉和更新以更正黑客,并且由于许多其他问题,例如整个网络节点的大尺寸,我建议使用Parity连接到正确的Ropsten节点的网络。

要使用奇偶校验,我建议您遵循其中一个链接:

所以,感谢Parity!您可以通过运行:"parity --chain ropsten"

轻松地使用“--chain”指定所需的网络