没有IP地址的IPFS在线节点

时间:2018-09-12 17:49:04

标签: ipv6 p2p ipfs

在IPFS节点浏览器开发期间,我们在Addresses字段中发现了一些不具有有效IP的异常在线节点。例如:QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV

通过ipfs id命令获取节点信息。

查询:

root@tux:~# ipfs id QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV

响应:

{
"ID": "QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV",
"PublicKey": "CAASpgIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDFhgftYoqapg+Y7wlWq67HA4O2c37jelJxUJqai0DyZMEeyQBzw4+Jc0VxPuXJNovb3SRIz9XCq3tyibbBs2JcZkHF+i9t8WERJth7c3rnLsEddPHAagW9nnBd+XxT4l9guZZtYOQ/YFZBTicZEdyKdc4fithz4QaweZqj/sa5lWYuaTTEA9y4Zikhh2NkM6gs0Suhamtym2boBrFaIJMfS7I1GLJecg1ap/fGTBsdmncQ4cEKnxpUAtGzLcsqukr9qkTYKeXP5imGvrm077A1mXwbPTKP1st5zmtZduRayIfOWvWtwhrfm1CrTpUzhu+XZsAn5sTO/Dk2QWnTiuNzAgMBAAE=",
"Addresses": [
    "/ip6/::1/tcp/4001"
],
"AgentVersion": "go-ipfs/0.4.17/",
"ProtocolVersion": "ipfs/0.1.0"
}

仅获得IPv6回送地址,而没有公共地址。

现在使用ipfs ping ping该节点:

查询:

root@tux:~# ipfs ping -n 4 QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV

回复:

PING QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV.
Pong received: time=8.28 ms
Pong received: time=5.98 ms
Pong received: time=6.27 ms
Pong received: time=6.20 ms
Average latency: 6.68ms

没有IP地址怎么办?如何获取此类节点的IP地址?

1 个答案:

答案 0 :(得分:1)

除了执行ipfs id <PeerID>之外,您还可以询问DHT如何看待对等方。对于ipfs dht findpeer <PeerID>,我看到以下内容:

QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV

如果您想查看如何与对等方建立联系,可以将$ ipfs dht findpeer QmRBRUCPY8saqzsLRyHexza3qUL8Wn9Zt59TcLMNnXF6zV /ip4/192.168.10.11/tcp/4001 /ip4/127.0.0.1/tcp/4001 /ip6/::1/tcp/4001 /ip4/83.162.192.96/tcp/31885 /ip4/83.162.192.96/tcp/16803 (您当前连接到的对等方)与ipfs swarm peers一起使用(过滤输出)

grep