我确实有关于 libp2p 的问题。最近,我一直在玩图书馆,发现它很有趣。我能够使用中继节点和引导节点进行通信,并认为我可以使用此示例进行下一步https://github.com/libp2p/js-libp2p-examples/tree/master/chat/nodejs/06-Pubsub
我将示例调整为不使用mdns进行对等点发现,因为我想通过 WAN 连接到我使用移动热点托管在另一台 PC 上的另一个对等点。这是我的节点配置:
const libp2p = await Libp2p.create({
addresses: {
listen: [
'/ip4/0.0.0.0/tcp/0',
'/ip4/0.0.0.0/tcp/0/ws',
'/dns4/wrtc-star1.par.dwebops.pub/tcp/443/wss/p2p-webrtc-star',
'/dns4/wrtc-star2.sjc.dwebops.pub/tcp/443/wss/p2p-webrtc-star'
]
},
modules: {
transport: [ TCP, Websockets, WebRTCStar ],
streamMuxer: [ Mplex ],
connEncryption: [ NOISE ],
peerDiscovery: [ Bootstrap ],
dht: KadDHT
// TODO: set pubsub
},
config: {
transport : {
[WebRTCStar.prototype[Symbol.toStringTag]]: {
wrtc
}
},
peerDiscovery: {
bootstrap: {
list: [
'/dnsaddr/bootstrap.libp2p.io/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN',
'/dnsaddr/bootstrap.libp2p.io/p2p/QmbLHAnMoJPWSCR5Zhtx6BHJX9KiKNN6tpvbUcqanj75Nb',
'/dnsaddr/bootstrap.libp2p.io/p2p/QmZa1sAxajnQjVM8WjWXoMbmPd7NsWhfKsPkErzpm9wGkp',
'/dnsaddr/bootstrap.libp2p.io/p2p/QmQCU2EcMqAqQPR2i9bChDtGNJchTbq5TbXJJ16u19uLTa',
'/dnsaddr/bootstrap.libp2p.io/p2p/QmcZf59bWwK5XFi76CZX8cbJ4BhTzzA3gU1ZjYZcYW3dwt'
],
interval: 60e3,
}
},
dht: {
enabled: true,
randomWalk: {
enabled: true
}
}
}
})
我确实从这里玩了很多选择:https ://github.com/libp2p/js-libp2p/blob/master/doc/CONFIGURATION.md但这也没有帮助。
两个节点运行相同的代码,如果它们使用相同的 Internet 连接连接到引导服务器,则可以轻松地相互访问。
有没有人遇到过这种问题并且可以指出我正确的方向?
非常感谢大家花时间阅读本文