全节点的网络身份
全节点将自动以随机生成的网络身份启动。这适用于常规的全节点。然而:
您可能希望将您的全节点添加到特定上游 全节点的允许列表(即 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/tools
Docker 容器内部:
这将创建一个 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