任何人都可以在他们的计算机上运行以太坊节点。这意味着您可以参与验证以太坊区块链上的交易和区块。运行节点的两个最常见的客户端是Geth和Parity。根据节点运行的类型和系统的硬件规格,初始同步时间和存储要求会有所不同。
以下是用户可以运行的不同类型的节点,它们的设置以及它们的含义。
完整节点
完整节点:
存储磁盘上可用的完整区块链数据,并可根据请求为网络提供任何数据。 在参与块验证时接收新的事务和块。 验证所有块和状态。 存储最近状态仅用于更有效的初始同步。 所有状态都可以从完整节点派生。 完全同步后,将所有状态向前移动存储类似于存档节点(下面更多)。客户端设置
GETH
默认同步模式。通过下载整个状态数据库,首先请求标头,然后填写块体和收据来同步执行快速同步的完整节点。一旦快速同步到达以太坊网络的最佳块,它就会切换到完全同步模式。
geth --syncmode已满
从genesis开始同步一个完整节点,验证所有块并执行所有事务。此模式比快速同步模式慢一点但具有更高的安全性。
平价
默认同步模式。通过下载30,000个最佳块和最新状态数据库的快照,使用warp同步模式同步完整的以太坊节点。
恢复快照后,客户端切换到完全同步,并在后台从网络同步古代块。
奇偶校验默认节点在完成同步后将网络作为完整节点提供服务。
平价 - 无扭曲
从genesis开始同步一个完整节点,验证所有块并执行所有事务。此模式比warp同步模式慢一点但具有更高的安全性。
geth full和parity no-warp都被认为是一个完整的以太坊节点,因为:
它从genesis开始运行完整的区块链同步。 它重放所有交易并执行所有合约。 它重新计算每个块的状态。 它将所有历史块保留在磁盘上。 它使最近的状态保持在磁盘上并修剪古代各州。轻节点
一个轻节点:
存储标题链并按需请求其他所有内容。 可以根据块头中的状态根验证数据的有效性。光节点对于低容量设备非常有用,例如嵌入式设备或移动电话,它们无法承受存储数十亿字节的区块链数据。
客户端设置
geth --syncmode light
在开始从过去的2,300个块同步之前等待大约200秒,然后定期接收1到10个块的小束。初始同步只需要很少的时间。
平价 - 光
几乎立即开始从硬编码值(块#6219777)开始同步,速度约为每分钟23,500个块。高度为6,500,000,需要15分钟。一旦同步,灯节点在完整节点挖掘和验证时接收块。
奇偶校验--light --no-hardcoded-sync
与-light相同,但与genesis块同步。
将奇偶校验灯节点连接到MetaMask(MacOS)
下载自制软件(您必须首先通过苹果开发条款)
查找并打开应用程序终端(utilties / terminal)
在终端中逐个输入以下命令:
brew tap paritytech / paritytech(这增加了冲泡水龙头列表的平价)
brew安装奇偶校验(安装奇偶校验 - 稳定版)
parity --light --jsonrpc-cors =“chrome-extension:// nkbihfbeogaeaoehlefnkodbefgpgknn”&(同步光节点,连接到同行并导入块头)
按ctrl + C然后键入:
tail -f nohup.out(这将显示日志以确保其全部工作)
在Web浏览器上打开元掩码,下拉网络,连接到localhost。归档节点
归档节点:
存储保存在完整节点中的所有内容。 还构建了历史状态的存档。只有在要检查任何给定块高度的帐户状态时,才需要存档节点。例如,如果您想知道帐户在块#4,000,000处的以太网余额,则需要运行并查询归档节点。
它们通常仅用于诸如块浏览器和Infura等基础设施提供商之类的服务。它们依赖于用例,对区块链的安全性或信任模型没有影响。
客户端设置
geth --syncmode full --gcmode archive
从genesis开始同步归档节点,彻底验证所有块,执行所有事务,并将所有中间状态写入磁盘(“归档”)。
在Geth中,这称为gcmode,它指的是垃圾收集的概念。将其设置为存档基本上将其关闭。
parity --no-warp --pruning archive
从genesis开始同步归档节点,彻底验证所有块,执行所有事务,并将所有中间状态写入磁盘(“归档”)。
在Parity中,这称为修剪,它指的是状态trie修剪的概念。将其设置为存档基本上将其关闭。
硬件
消费级笔记本电脑足以运行完整节点,但不能运行存档节点。归档节点确实需要2 TB以上的磁盘空间,并且该磁盘空间不能是HDD - 它必须是完整和归档节点的SSD。轻型节点在SD卡和HDD上运行良好。
如果一个完整节点暂时脱机,其数据可能会损坏,并且可能需要一段时间才能恢复它。为了获得最佳效果,如果运行您自己的节点,请在永远在线的始终连接设备上运行它,以最大限度地减少停机时间和最大可靠性。这在笔记本电脑上是不可能的,在桌面PC(500W +)上是昂贵的,因此最好使用便宜的设备来构建和更换并且几乎可以自由运行。Raspberry Pi足够用于轻型节点,而完整节点可以在ARM微型计算机上正常运行。查看Block And Mortar,Ava.do和DAppNode预先同步的预建设备。
警告:永远不要将任何无法彻底检查和验证的LAN插入局域网。您可能会在不知情的情况下对DNS进行DNS劫持或加密攻击。如果硬件和软件不是开源的(至少是组装部件),则使用它们是不安全的。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。