Open Rkrushanovskij opened 5 years ago
"context deadline exceeded" means the we reached a timeout. It sounds like you're behind a very restrictive network.
Can you try running:
> nc 104.131.131.82 4001
That should spit out the text /multistream/1.0.0
.
(you'll need some netcat variant)
@Stebalien thanks for answer! I`m able to see /multistream/1.0.0
when I connects to peers with which i see "context deadline exceeded" by executing ipfs swarm connect
. I did not check all peers that listed in my previous message at output of ipfs dht provide <hash>
because i don`t know how to get their multiaddr and ip:port, but i think it is not necessary if this happens with my remote node (nc ip port
success but ipfs swarm connect
- no)?
Also, i`ve discussed it with my network administrator - we have no any restricts. Moreover - i setted up port forwarding, so I don`t think that it is the problem.
So, you're saying that nc 104.131.131.82 4001
works but ipfs swarm connect /ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
doesn't? Can you try those exact commands just to make sure?
Note: It is perfectly normal to not be able to connect to all peers. Many may either be offline or behind NATs. However, you should be able to connect to the bootstrap nodes.
I`ll be able to try tomorrow. Will back with screenshot xD But i`m quite sure that i`ve tried it (and many other bootstrap peers too)
@Stebalien here is the link to screenshot where I made clean install of ipfs on clean Ubuntu 16.04.
As you can see - after ipfs init
(you can see it`s output peer identity
in the top of left window) I started daemon and tried to ipfs swarm peers
- no connections.
roman@RomanServer:~$ ipfs bootstrap | ipfs swarm connect
Error: connect QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN failure: dial attempt failed: failed to dial <peer.ID Qm*ezGAJN> (default failure)
roman@RomanServer:~$ ipfs swarm connect /ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
Error: connect QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ failure: dial attempt failed: <peer.ID Qm*QkrW5F> --> <peer.ID Qm*QLuvuJ> dial attempt failed: context deadline exceeded
And I can`t connect to 104.131.131.82... What do you think? It happend with two different machines.
If you can use netcat (nc 104.131.131.82 4001
) but not ipfs (ipfs swarm connect...
). Then my only guess is that something on your network is detecting encrypted traffic and blocking it.
However, to rule out other potential issues, mind running the example in the readme here: https://github.com/Stebalien/p2pcat (go get github.com/Stebalien/p2pcat
)? That will rule out any ipfs-related funniness.
@Stebalien does this output correct?
p2pcat -v -routed $MADDR /ipfs/id/1.0.0 <&-| protocat -l -d $PROTOBUF
I: bootstrapping
I: bootstrap error: dial attempt failed: <peer.ID Qm*H5cw9J> --> <peer.ID Qm*VQKNAd> dial attempt failed: dial tcp6 [2a03:b0c0:0:1010::23:1001]:4001: connect: network is unreachable
I: bootstrap error: dial backoff
I: bootstrap error: dial backoff
I: connecting to: /ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
I: connected to: /ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
E: read /dev/stdin: bad file descriptor
{
"publicKey": "CAASpgQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCh9cDnwNXlVq/A6EVm+MVldzrbVI3cIZypaIYToAlsLf0GmATISWhUW5yd8Z3RMcyECLd4Hffd+vIIpCqCFSPOA5VRZKYtyra9EN0m+FB1F1Z8oSjwCgVthja5VJ3bWcpydih3XJC9kdYlGtvf02v2ignDv+aeGxWH6PMaS1WvyAlee29mgxZfnA7wrRsi2Lc3Se4CqkZWbNX3qf9usQmf42s2Or1OEpMQim1HOjSed6yhXkmyD/5htCIus6Y06Egdcaf9zuqIogRPpc7d4d7jFOJ4gLxxPKV4gUaE6F4NIc/0DiPDQfE+4aBkUvKEZkmZhilz5R1pK1eM2bfeideGrWuuvPjfw0PbjtpDShWSlZGRfFK/FnQTWRSdDnCSvJGZKPHVsly0iw+Qp6BbDrKa3KmT+JPG+xN6U6XEcKijCbV0u0/YCHm959zCN+ryzpoXuRkwMt+ZyL9VGYdWHuJkoJcw+QKWEFcWJeDQ4eKn+QRppqSA7QjPm0w68FZ7/pq/RwB52Mx9fyLvyDWY+GyeBnjK954imamcR8jQV+fzuK9AGFyN1JmhwWfDWNerg69lgZRM4Li2vSz+S/gMjJ5/Yf6UgW33nhKuXoLFiPiUuG/VmdpZEvh1TeKiPy0VKYRaVXCnLY2FNzJbld08adnKMLgYbCAXDRCVW32iFoIscwIDAQAB",
"listenAddrs": [
"BH8AAAEGD6E=",
"BGiDg1IGD6E=",
"BGiDg1IGD6E="
],
"protocols": [
"/ipfs/id/1.0.0",
"/libp2p/circuit/relay/0.1.0",
"/ipfs/ping/1.0.0",
"/floodsub/1.0.0",
"/ipfs/kad/1.0.0",
"/ipfs/dht",
"/ipfs/bitswap/1.1.0",
"/ipfs/bitswap/1.0.0",
"/ipfs/bitswap"
],
"observedAddr": "BNRaOkoG1CI=",
"protocolVersion": "ipfs/0.1.0",
"agentVersion": "go-ipfs/0.4.16-rc3/a9efa7e"
}
@Stebalien anyway, after that i still have no any peer in ipfs swarm peers
.
And still gets timeout error when trying to ipfs swarm connect
Yep, that's the expected output. That's really weird.
@Stebalien to clarify all environment details - in both cases nodes interacting with the Internet through NAPT; but port forwarding did not help to resolve it.
I have the same problem
@amidmm The exact same problem? The issue here isn't the error message "dial attempt failed: context deadline exceeded". You'll get that whenever a dial fails.
The issue here is that libp2p (our networking library) appears to be working while go-ipfs isn't.
@Stebalien I'm using go-libp2p and for bootstrapping DHT I'm using
"/ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ", "/ip4/104.236.176.52/tcp/4001/ipfs/QmSoLnSGccFuZQJzRadHn95W2CrSFmZuTdDWP8HXaHca9z", "/ip4/104.236.179.241/tcp/4001/ipfs/QmSoLPppuBtQSGwKDZT2M73ULpjvfd3aZ6ha4oFGL1KrGM", "/ip4/162.243.248.213/tcp/4001/ipfs/QmSoLueR4xBeUbY9WZ9xGUUxunbKWcrNFTDAadQJmocnWm", "/ip4/128.199.219.111/tcp/4001/ipfs/QmSoLSafTMBsPKadTEgaXctDQVcqN88CNLHXMkTNwMKPnu", "/ip4/104.236.76.40/tcp/4001/ipfs/QmSoLV4Bbm51jM9C4gDYZQ9Cy3U6aXMJDAbzgu2fzaDs64", "/ip4/178.62.158.247/tcp/4001/ipfs/QmSoLer265NRgSp2LA3dPaeykiS1J6DifTC88f5uVQKNAd", "/ip4/178.62.61.185/tcp/4001/ipfs/QmSoLMeWqB7YGVLJN3pNLQpmmEk35v6wYtsMGLzSr5QBU3", "/ip4/104.236.151.122/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx",
but I will get timeout everytime
I double checked it with this example and it failed to connect too
@Stebalien same using ipfs
Are both of your daemons running on the same machine? What ports? What's the output of ipfs swarm peers
.
similar error for me, but I am running 2 ipfs in separate docker-compose projects on the same machine (swarm ports exposed to host machine: 4001 and 4101) and when I run
sudo docker-compose exec ipfs0 ipfs swarm connect /ip4/<machine_ip>/tcp/4101/ipfs/QmZmQ18xwVPMV7x8Xw7Dd5vmC23zsLsGSmvMUY86Ltbdn3
WARNING: The CLUSTER_SECRET variable is not set. Defaulting to a blank string.
Error: connect QmZmQ18xwVPMV7x8Xw7Dd5vmC23zsLsGSmvMUY86Ltbdn3 failure: dial attempt failed: <peer.ID fUNV8W> --> <peer.ID ZmQ18x> dial attempt failed: EOF
I get dial attempt failed: EOF and netcat gives the expected result
nc <machine_ip> 4101
/multistream/1.0.0
For everybody experiencing this error, could you please build from master and try again? This should've been fixed in https://github.com/libp2p/go-libp2p-kad-dht/pull/237.
Please report your findings.
I just tried to run 2 nodes on separate machines inside docker-compose, and it worked.
in order to add the peer I had to run:
docker-compose exec ipfs ipfs bootstrap add /ip4/<my_ip>/tcp/4101/ipfs/QmUtyTW7H6U7T1DyqxyUWvtGXvebvTnsyH7wAjVPHvDrDx
docker-compose exec ipfs ipfs swarm connect /ip4/<my_ip>/tcp/4101/ipfs/QmUtyTW7H6U7T1DyqxyUWvtGXvebvTnsyH7wAjVPHvDrDx
Version information:
Type:
Bug
Description:
Hi all! I installed clean instance of
ipfs init
and startedipfs daemon
. After thatipfs swarm peers
answers with nothing. When I tried toipfs swarm connect
to the multiaddrs fromipfs bootstrap
, it always saysAfter that i setted up port forwarding from my outer IP:4001 to my local PC`s IP:4001. Still same situation. After that i tried to connect from remote node directly through outer IP:4001 and it was successful, and after that my
ipfs swarm peers
started to fills by some addresses. And restarts of daemon connects to peers (but if I wait for a while between stopping and starting, there are empty list inipfs swarm peers
, sometimes there appears some address and peerlist starts fills again - i think it is because peers that i was connected to, tries to reconnect to me afterperiod
seconds).But i still can`t connect to my remote node - same error:
Also, when i trying to execute
ipfs dht provide <hash>
- it hangs. With-v
flag it shows many connections to peers, some of them successful and some are not with same or similar errors:Can you provide me information about why these errors pops up (especially
context deadline exceeded
error)