Minipool 存款目前已禁用,为 Saturn 1 做准备。
创建新的 Minipool(验证者)
提醒一下,Rocket Pool 中的 minipool 是指您的节点在 Execution Layer 上管理的唯一智能合约实例。minipool 处理您的一部分 ETH,称为债券金额,以及来自 rETH 质押池的一部分 ETH,称为借入金额。它将它们合并在一起形成总共 32 ETH,然后发送到 Beacon Chain 存款合约以创建新验证者。因此,为了使用 Rocket Pool 创建验证者,您需要创建 minipool。
Minipool 创建由两个队列管理。
第一个是 Rocket Pool 存款队列,由 Rocket Pool 协议管理,决定您的 minipool 何时收到其借入的 ETH。存款池中需要有可用的 ETH 来将您的 8 ETH 与存款池中的 24 ETH 匹配并创建 minipool。
第二个是 Beacon Chain 队列,由 Ethereum Beacon Chain 管理,决定您的验证者何时激活。
请注意,您的 minipool 激活所需的时间可能会因您在每个队列中的位置以及网络的当前状态而有很大差异。
Beacon Chain 验证者队列激活(和退出)时间可能会因网络的当前状态而有很大差异。
这不受 Rocket Pool 控制,是 Beacon Chain 本身的功能。
以下工具可以很好地估计您需要等待多长时间: https://www.validatorqueue.com/
请查看此工具以了解您的验证者激活需要等待多长时间。
通过网站质押 RPL
为节点质押 RPL 最简单、最安全的方法是使用协议的代表质押功能,该功能随 Atlas 升级重新引入。这样,您可以在 RPL 仍在您用来获取它的钱包中时为节点质押 RPL。换句话说,您不需要将 RPL 发送到节点的热钱包即可质押它。
将地址列入白名单以代表质押
为了代表节点质押,必须将地址列入白名单。您的提款地址始终列入白名单,如果您的 RPL 由提款地址持有,则可以跳过此步骤。您只需将地址列入白名单一次即可从中质押。您可以通过以下 Smartnode 命令执行此操作:
其中 address-or-ens 是解析为所需地址的地址或 ENS 名称。系统将要求您确认白名单添加,交易确认后,您可以导航到下面的相关页面。
代表质押 RPL
从下面的选项卡中选择您正在使用的网络:
首先使用 MetaMask、WalletConnect 或网站支持的任何其他方法将您的钱包连接到网站。然后您将看到此对话框以查找您的节点地址。
输入您的节点地址并点击"查找"。
在执行此操作之前,请确保您有正确的节点地址!
如果您需要确认节点地址,可以使用 rocketpool node status 命令通过 CLI 快速检索它。
这将检查该地址是否为已注册节点以及节点是否已将连接的钱包列入白名单。提款地址默认列入白名单,但如果您希望允许其他地址,则需要通过节点上的以下命令将它们列入白名单。
这是一个两步过程。
首先,输入您要质押的 RPL 数量并点击 批准 - 这将批准质押合约访问您钱包中那么多 RPL,但不超过该数量。
如果您信任 Rocket Pool 质押合约,并且不想在每次想要质押更多 RPL 时执行此额外的批准交易,您可以批准超过您打算质押的数量。
RPL 获得批准后,您将能够代表节点质押。
在 质押 RPL 框中输入您要质押的 RPL 数量,并在 代表节点地址 框中输入您的节点地址。
输入该信息后,按 质押 按钮并批准交易。
它将被发送到 Ethereum 网络,一旦包含在区块中,您就完成了!
如果您运行 rocketpool node status,您应该会在 === RPL Stake === 部分下看到您质押的 RPL。
从质押白名单中删除地址
如果您想从代表质押白名单中删除地址,可以使用以下 Smartnode 命令执行此操作:
其中 address-or-ens 是您要从白名单中删除的地址或解析为该地址的 ENS 名称。
通过节点 CLI 质押
如果您无法(或不想)使用网站质押 RPL,也可以直接通过节点的 CLI 质押。
首先,将 RPL 从您获取它的钱包转移到节点地址。
请仔细执行此操作并确保您将 RPL 发送到节点地址 - Ethereum 上的转账无法撤销! 将 RPL 发送到错误的地址将导致 RPL 丢失。
如果您不确定节点地址是什么,请使用 rocketpool node status 命令验证节点地址。
运行以下命令:
以下是输出:
选择您想质押多少,然后确认操作。
第一次运行此命令时,它将涉及两笔交易 - 一笔用于批准 Rocket Pool 质押合约访问您的 RPL,另一笔用于质押您的 RPL。后续运行只需要质押交易,因为代币已经获得批准。
两笔交易完成后,您可以使用 rocketpool node status 检查质押的 RPL 数量。以下是您要验证的输出部分:
这将根据您的 RPL 抵押品向您显示您可以制作每种债券大小的 minipool 数量。
(可选)为 Minipool 查找自定义虚荣地址
默认情况下,当您创建新的 minipool 时,Rocket Pool 将为其生成随机唯一地址。但是,Smartnode 提供了为 minipool 搜索自定义虚荣地址的能力。
虚荣地址是您个人选择地址开头字符的地址。这纯粹是美观性练习,不会对 minipool 的运行产生任何实际影响。由于 Ethereum 地址是十六进制的,以下任何字符都是合法的:
作为几个示例,您可以让 minipool 的地址以一堆零(0x000000...)、0x600d(十六进制表示"good")或 0xa77e57ed(十六进制表示"attested",适合 minipool 的前缀)开头。
要找到这样的虚荣地址,您需要搜索它。此搜索过程涉及选择一个数字,将其作为"盐"应用于哈希算法,并将结果与您要查找的内容进行比较。结果实际上是随机的(尽管任何给定的盐总是产生相同的结果),因此找到具有您想要的前缀的地址的唯一方法是尝试大量的盐,直到找到有效的盐。
如果您想在创建 minipool 时使用自定义虚荣地址,可以使用以下命令搜索一个:
这将提示您输入要搜索的前缀,并询问您将进行哪种类型的存款(16 ETH 或 32 ETH 存款 - 有关这些类型的更多信息,请参见下文)。输入该信息后,它将开始尝试大量的盐,直到找到产生您所需前缀的盐!
以下是该过程的完整示例:
在这种情况下,我们搜索 0xa77e57 作为前缀并找到了可以生成它的盐 0x5cd7fb。在下一步中,当我们创建 minipool 时,我们可以将此盐指定为可选参数,以在与盐关联的地址(如上所示的 0xA77E57c892C9e98B0B81289e4AfdA62fb59c5DDD)处创建新 minipool。
通常,您搜索的每个额外字符都会将搜索时间乘以约 16 倍。因此,我们建议您只查找最多 7 或 8 个字符的前缀,除非您拥有具有许多 CPU 内核的非常强大的机器。否则,找到产生您想要的前缀的盐可能需要很长时间。
例如,具有 6 个内核(12 个线程)的 AMD 5600x 以 4.8 GHz 运行,每秒可以搜索约 320 万个盐。平均而言,找到 6 字符前缀需要几秒钟,找到 7 字符前缀需要几分钟,找到 8 字符前缀需要几个小时。
生成的盐特定于以下变量:
- 您正在使用的网络(Hoodi 测试网或主网)
- 节点地址
- 债券金额
- 盐
如果您更改这些变量中的任何一个,给定盐的 minipool 地址也会发生变化。
有关更高级的用法(例如搜索不同的节点地址或更改用于搜索的 CPU 内核数量),请查看 rocketpool minipool find-vanity-address --help 的帮助文本。
存入 ETH 并创建 Minipool
如果 rETH 的市场价值高于其 ETH 支持(即 rETH 在市场上溢价),则在创建 minipool 时有机会套利差额。套利价值等于 minipool 中协议 ETH 的数量乘以溢价(减去少量 gas)。例如,如果在溢价 2.5% 时创建 minipool:16 ETH * .025 = 0.4 ETH。换句话说,在这些条件下,您只需创建 minipool 就可以获得 0.4 ETH 的回报!
如果您有兴趣利用这个机会,可以考虑使用社区开发的 rocketarb 工具来捕获启动 minipool 创造的 MEV rETH 套利机会的利润。
要了解有关 rocketarb 的更多信息,请随时在 RP discord 服务器上咨询。
在您迄今为止所做的一切之后,您终于准备好存入 ETH、创建新 minipool 并创建 Beacon Chain 验证者。使用以下命令完成此操作:
虽然 CLI 确实为您自动化了许多后续步骤,但我们强烈建议监控您的节点和交易,以确保从 prelaunch 到 staking 的成功过渡。
失败的交易(由于调整的 gas 设置或 ETH 不足)可能会使您的 minipool 过渡到 dissolved 状态,这是您想要避免的。
如果您想使用上述过程找到的虚荣地址的盐,请改为运行以下命令:
您首先会看到一条注释,说明存入新 minipool 将自动分配节点的费用分配器合约中的任何余额(如果您未选择加入 Smoothing Pool,则用于捕获 MEV 奖励):
如果您已经拥有 minipool 并且费用分配器中有余额,如果分配此余额会在您的司法管辖区造成应税事件,您可以决定不创建另一个 minipool。
之后,您将收到新 minipool 的佣金率通知,以及关于您节点的信用余额是否可用于支付 minipool 债券费用的说明:
接下来,您将收到网络当前 gas 成本建议的提示;确认您选择的 gas 价格并按照其余提示操作。
请注意,创建 minipool 是一笔昂贵的交易!密切注意总成本并确保您接受它。
如果您接受,将触发您的 minipool 创建。交易完成后,您将获得 Execution Layer 上新 minipool 合约的地址及其在 Beacon Chain 上对应的验证者公钥。如果您愿意,可以使用任何区块浏览器访问这些。
确认成功质押
创建后,您的 minipool 将进入 initialized 状态。它将保持在这里,直到轮到您在 Rocket Pool 队列中从质押池获得 24 ETH,以便您可以在 Beacon Chain 上质押新验证者。
发生这种情况后,您的 minipool 将在一定时间内(目前为 12 小时)进入 prelaunch 状态。您的 8 ETH 存款将转移到 Beacon Chain,Oracle DAO 将验证一切是否正确。在此期间,您可以使用 Beacon Chain 浏览器(如 https://beaconcha.in(或 Hoodi 测试网的 https://hoodi.beaconcha.in))查找其验证者公钥来观察验证者。
您可以使用 rocketpool minipool status 命令检查新 minipool 的状态。例如,当它进入 prelaunch 时,您可能会看到类似这样的内容:
在此预启动期之后,您的 minipool 将进入 staking 状态并将来自质押池的额外 ETH 发送到存款合约。这将由 rocketpool_node Docker 容器(或如果您使用原生设置,则由 rp-node 服务)完成 - 如果出于某种原因您进入 staking 状态的时间异常长,查看此容器/服务的日志可能会告诉您出了什么问题。您可以使用 rocketpool service logs node 命令(或原生模式设置上的 /srv/rocketpool/node_log.sh)检查这些日志。
运行 rocketpool minipool status 然后会显示类似这样的内容:
从 prelaunch 迁移到 staking 的交易由您的节点自动提交,并受 rocketpool service config 中的 gas 设置的约束。如果 gas 设置阻止节点提交交易,或者节点钱包中的 ETH 不足以支付交易费用,minipool 将在进入 prelaunch 两周后变为 dissolved。如果发生这种情况,检索余额是一个昂贵且漫长的过程,因此请确保密切监控您的 minipool,直到它达到 staking 状态!
一旦 Beacon Chain 接受两笔存款(一笔来自您,一笔来自质押池),您的验证者将进入 Beacon Chain 队列,在那里它将等待轮到它被激活并开始质押。
至此,您完成了!恭喜!您已经正式使用 Rocket Pool 创建了验证者!
请查看监控和维护中的下一部分,了解如何随时间观察验证者的性能和健康状况。
创建多个 Minipool
方便的是,您的 Rocket Pool 节点能够托管任意数量的 minipool。您不需要为每个 minipool 创建新节点。
如果您想为节点创建第二个(或第三个、第四个...)minipool,您只需再次运行 rocketpool node deposit。此外,您将无法重用旧的虚荣地址盐 - 您需要为每个 minipool 搜索另一个唯一的盐。
下一步
现在您已经有一个正在运行的 minipool,接下来的步骤将引导您了解如何监控节点的健康状况、检查和应用更新以及在其整个生命周期中维护它。
请接下来阅读 监控和维护 部分以了解有关这些主题的更多信息。