全节点的网络身份

全节点将自动以随机生成的网络身份启动。这适用于常规的全节点。然而:

  • 您可能希望将您的全节点添加到特定上游 全节点的允许列表(即 Aptos 网络中的另一个 全节点 参与者),因为

    • 您可能需要在此特定上游 全节点 上的 全节点 的特定权限,或者

    • 这个上游 全节点只允许已知身份连接到它,或者

    • 您可能希望宣传您的 全节点 以供其他 Aptos 全节点 连接(以帮助支持 Aptos 网络)。

在这种情况下,如果您使用静态网络身份运行 全节点,而不是每次启动 全节点 时都会不断变化的随机生成的网络身份,这会有所帮助。

本指南将向您展示如何:

  • 为您的 全节点 创建一个静态网络身份。

  • 启动具有静态网络标识的节点。

  • 允许其他 全节点连接到您的 全节点

在您继续之前

在继续之前,请确保您已经知道如何启动本地 全节点。有关详细文档,请参阅运行全节点

Docker 仅在 LINUX 上支持

目前仅 Linux x86-64 平台支持 Docker 容器。如果您在 macOS 或 Windows 平台上,请使用 Aptos-core 源方法。

为全节点创建静态身份

为您的全节点创建一个静态身份:

  1. 您首先为您的全节点创建一个私钥、公钥对。

  2. 接下来,您从公钥中派生出 peer_id

  3. 最后,您使用 fullnode.yaml 中的peer_id为您的全节点创建静态网络身份。

请按照以下详细步骤操作:

1. 准备

使用 Aptos-core 源代码

拷贝 aptos-labs/aptos-core 存储库。例如:

使用Docker

或者,如果您使用的是 Linux x86-64 平台,则可以使用 Aptos Docker 映像。

cd进入本地公共全节点的目录并使用最新工具启动 Docker 容器,例如

2. 生成私钥

使用 Aptos-core 源代码

运行 Aptos CLI aptos s 以生成十六进制编码的静态 x25519 私钥。这将是您的网络身份的私钥**。**

注意

以下命令还将创建一个相应的 private-key.txt.pub文件,其中包含公共身份密钥。

示例 private-key.txt 和相关的 private-key.txt.pub 文件如下所示:

使用Docker

aptoslabs/tools Docker 容器内运行此步骤。打开一个新终端并 cd 进入您为全节点启动 Docker 容器的目录。确保提供要存储私钥 TXT 文件的完整路径,运行以下命令:

3. 检索对等身份

使用 Aptos-core 源代码

使用Docker

aptoslabs/toolsDocker 容器内部:

这将创建一个 YAML 文件,其中您的 peer_id与您提供的 private-key.txt 相对应。

示例输出 peer-info.yaml

在此示例中,B881EA2C174D8211C123E5A91D86227DB116A44BB345A6E66874F83D8993F813peer_id。在您的 fullnode.yamlpeer_id 字段中使用它来为您的全节点创建一个静态身份。

以静态网络身份启动节点

生成公钥后,您可以使用配置文件fullnode.yamlpeer_id 字段中的公钥以静态网络身份启动 全节点:

在我们的示例中,您将指定上面生成的peer_id来代替 <PEER_ID>

允许其他全节点连接

端口和端口设置

有关端口设置及其使用方式的说明,请参阅端口和端口设置

使用静态身份启动 全节点 后,您可以允许其他人通过您的节点连接到 devnet。

注意

在以下步骤中,使用的端口号仅用于说明。您可以使用您选择的端口号。

  • 确保打开端口 6180(或 6182,例如,取决于您的节点正在侦听的端口)并打开防火墙。

  • 如果您使用 Docker,只需在 docker-compose.yaml文件的端口下添加"6180:6180"”或"6182:6182"

  • 与他人共享您的全节点 静态网络身份。然后他们可以在他们的fullnode.yaml文件的seeds键中使用它来连接到您的 全节点。

  • 确保您在addresses中输入的端口号与您在 全节点 配置文件 fullnode.yaml中的端口号匹配(例如,61806182)。

在 Discord 频道 advertise-full-nodes 中以以下格式分享您的全节点 静态网络身份:

例如:

注意

对等 ID 与 AccountAddress 同义。请参阅 NetworkAddress 以了解addresses键值是如何构造的。

Last updated