Mina 文档 - 高级篇 之 种子节点

  • MinaFans
  • 更新于 2021-12-18 15:45
  • 阅读 3206

Mina 开发者中文文档

4.11种子对等节点

种子对等节点是我们有用的盟友,让其他人更容易连接到网络。

大多数节点通过使用在种子节点上显式运行的种子对等节点连接到Mina网络。

运行种子节点

关于种子节点有两件重要的事情:

1.它们的地址应该是静态的

2.它们需要高运行时间,并且能够支持许多连接——因此,除了“播种”,它们应该尽量避免做更多的事情。

强制发布静态地址

首先,您需要一个用于运行节点的静态主机。最好是使用DNS并将种子节点托管在其中,例如:seed.o1test.net。您也可以配置静态ipv4地址,如82.230.217.200

其次,您需要选择节点运行的端口。默认情况下,它在8302.上。

第3, 您需要预先生成libp2p密钥对——这是用来在gossip网络上识别您的身份的。这样做:

mina advanced generate-libp2p-keypair

这将在您的机器上生成libp2p密钥对。使用--discovery-keypair参数运行您的守护进程:

最后,您会像这样发布您的DNS地址:

/dns4/seed.o1test.net/tcp/8302/p2p/12D3KooWGDHtsPUS8dZk3x3FUgsXCWwpnSJ6W7EwkWZKBZXczkwC

或者静态IP地址:

/ip4/82.230.217.200/tcp/8302/p2p/12D3KooWCE97fGwuDCicVNK3ZWF8fVzfNezp3uGjmSc8VrRFem6a

其他人可以通过这个地址字符串连接到您。

优化节点以适应正常运行时间和高连接

首先,不要在这个节点上运行区块生产或snark。完全停止一切操作。这两件事情都不要做,在这个节点上执行逻辑的开销会大大减少。

最好使用更大的--max-connection参数运行。至少要100个。您仍然可以使用超过100个节点进行播种,但您一次只能维护100个节点的连接。

后台程序的命令示例

当我们把所有需要的配置组合在一起时,基本的种子节点配置可以像下面的示例那样。

mina daemon \
--seed \
--peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt \
--file-log-level Info -log-level Info \
--log-block-creation false \
--log-snark-work-gossip false \
--log-txn-pool-gossip false \
--metrics-port 9100 \
--discovery-keypair /keys/my-libp2p \
--generate-genesis-proof true \
--max-connection 100

请注意--discovery-keypair 的值可能会改变,这取决于您在前面步骤中存储libp2p密钥对的位置。还要确保您运行的版本高于1.1.2,以处理主网流量。

如果您正在使用Docker,那么这里有一个类似的例子。

docker run --name mina-seed-node -d \
--restart always \
-p 8302:8302 \
-p 9100:9100 \
-v $(pwd)/keys:/root/keys:ro \
-v $(pwd)/.mina-config:/root/.mina-config \
--env CODA_LIBP2P_PASS='PASS' \
minaprotocol/mina-daemon-baked:1.1.2-0975867 daemon \
--discovery-keypair /keys/libp2p-keys \
--peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt \
--metrics-port 9100 \
--seed \
--max-connection 100 \
--file-log-level Info \
--log-level Info

请确保将--env CODA_LIBP2P_PASS=''"替换为libp2p密钥对的正确密码。与前面的示例一样,确保使用--discovery-keypair.设置了正确的值。

对等节点列表

将会有一个由一些O(1)实验室节点托管的对等节点列表,还有一些来自与O(1)无关的人的地址。这个列表是为那些应该是优秀的种子节点而设计的,同时也会尽力保持列表的最新。

备用对等节点列表

毕竟,我们有一个去中心化的网络——我们鼓励社区中的其他成员去负责播种的名单。要创建一个列表,请与您信任的人交谈,并使用他们的地址作为种子对等节点

要使用这样的备用列表,可以交换参数-peer-list-file-peer-list-url来指向另一个列表。

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
MinaFans
MinaFans
minafans.tech