全节点的网络身份
全节点将自动以随机生成的网络身份启动。这适用于常规的全节点。然而:
您可能希望将您的全节点添加到特定上游 全节点的允许列表(即 Aptos 网络中的另一个 全节点 参与者),因为
您可能需要在此特定上游 全节点 上的 全节点 的特定权限,或者
这个上游 全节点只允许已知身份连接到它,或者
您可能希望宣传您的 全节点 以供其他 Aptos 全节点 连接(以帮助支持 Aptos 网络)。
在这种情况下,如果您使用静态网络身份运行 全节点,而不是每次启动 全节点 时都会不断变化的随机生成的网络身份,这会有所帮助。
本指南将向您展示如何:
为您的 全节点 创建一个静态网络身份。
启动具有静态网络标识的节点。
允许其他 全节点连接到您的 全节点
在您继续之前
在继续之前,请确保您已经知道如何启动本地 全节点。有关详细文档,请参阅运行全节点。
Docker 仅在 LINUX 上支持
目前仅 Linux x86-64 平台支持 Docker 容器。如果您在 macOS 或 Windows 平台上,请使用 Aptos-core 源方法。
为全节点创建静态身份
为您的全节点创建一个静态身份:
您首先为您的全节点创建一个私钥、公钥对。
接下来,您从公钥中派生出
peer_id最后,您使用
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:
在此示例中,B881EA2C174D8211C123E5A91D86227DB116A44BB345A6E66874F83D8993F813 是 peer_id。在您的 fullnode.yaml 的peer_id 字段中使用它来为您的全节点创建一个静态身份。
以静态网络身份启动节点
生成公钥后,您可以使用配置文件fullnode.yaml的 peer_id 字段中的公钥以静态网络身份启动 全节点:
在我们的示例中,您将指定上面生成的peer_id来代替 <PEER_ID>:
允许其他全节点连接
端口和端口设置
有关端口设置及其使用方式的说明,请参阅端口和端口设置。
使用静态身份启动 全节点 后,您可以允许其他人通过您的节点连接到 devnet。
注意
在以下步骤中,使用的端口号仅用于说明。您可以使用您选择的端口号。
确保打开端口
6180(或6182,例如,取决于您的节点正在侦听的端口)并打开防火墙。如果您使用 Docker,只需在
docker-compose.yaml文件的端口下添加"6180:6180"”或"6182:6182"。与他人共享您的全节点 静态网络身份。然后他们可以在他们的
fullnode.yaml文件的seeds键中使用它来连接到您的 全节点。确保您在
addresses中输入的端口号与您在 全节点 配置文件fullnode.yaml中的端口号匹配(例如,6180或6182)。
在 Discord 频道 advertise-full-nodes 中以以下格式分享您的全节点 静态网络身份:
例如:
注意
对等 ID 与 AccountAddress 同义。请参阅 NetworkAddress 以了解addresses键值是如何构造的。
Last updated