Connectivity issues and performance

Hey guys,

I did a small connectivity test with ipfs on two of my machines (both being in the same local network).
For reference here’s what I did:

machine1> ipfs init
machine1> ipfs daemon &
machine1> ipfs id -f '<id>\n'
QmNtQvGh2q94K2iwTedCB9oG6yq4dinHKS5JnoyfE1JvPV
machine2> ipfs init
machine2> ipfs daemon &
machine2> ipfs id -f '<id>\n'
Qmeue9x3Vq7WtMR8KuvYdxbBe9ubkoECdwKPmyGVsggzCo
machine1> ipfs id Qmeue9x3Vq7WtMR8KuvYdxbBe9ubkoECdwKPmyGVsggzCo
...
  "Addresses": [
    "/ip4/172.17.0.1/tcp/4001"
  ],
...
machine2> ipfs id QmNtQvGh2q94K2iwTedCB9oG6yq4dinHKS5JnoyfE1JvPV
...
  "Addresses": [
    "/ip4/172.17.0.1/tcp/4001"
  ],
...

I have a few questions about that:

  • Out of curiosity: Why does it show “/ip4/172.17.0.1/tcp/4001” directly after starting up in both cases?
    After some time he finds the right local address.
  • Is there any way to speed up the connection process? It sometimes takes up to 2 minutes until he figures the connection out. This can be quite long when writing tests that require a connection. It would already help if connections in the same network are sped up.
  • When I repeat the above, but change the swarm port to 4002, he completely fails to find a suitable connection. Is there a reason for this?

I use ipfs version 0.4.16.