如何使用IPFS-JS获取公共IP地址

时间:2020-08-01 04:03:27

标签: ipfs js-ipfs

运行IPFS JS时:

const ipfsNode = await IPFS.create();
const addresses = await ipfsNode.swarm.localAddrs();
console.log(addresses);

我明白了:

Swarm listening on /ip4/127.0.0.1/tcp/4002/p2p/PeeridFooBar
Swarm listening on /ip4/192.168.0.113/tcp/4002/p2p/PeeridFooBar
Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/p2p/PeeridFooBar

但是所有这些都是本地/ LAN地址。我如何获取公共ID,以便可以从另一个节点通过互联网像jsipfs swarm connect PUBLIC ADDRESS HERE那样连接到该节点?

1 个答案:

答案 0 :(得分:1)

您可以通过libp2p config配置公共IP。

通过js-ipfs,您可以检查此example,以了解如何为libp2p提供自定义配置。

此处的目标是将您的公共IP添加到libp2p的announce地址中,以便其他节点知道如何访问您节点的公共地址。之后,您将nginx设置为从公共IP转发到节点的内部私有IP。