IPFS Private Network

In IPFS Private Network,

A and B are two nodes using different internet (JIO and Airtel)
They share the same swarm key as well as bootstrap node C
Bootstrap node C can show both the peer id’s of A and B. A and B can communicate to the Bootstrap node C.
Can A and B communicate with each other when they use different internet?
It works if both A and B are using the same internet.

They should be able to unless the ISP is blocking external traffic to Node A or Node B.

Given that both JIO and Airtel appear to be mobile internet providers, I wouldn’t be surprised if individual subscribers are firewalled from the internet.

I would suggest upgrading to v0.4.19 and enabling the experimental AutoRelay feature on your nodes and bootstrap node. In short,

  1. On Node A and Node B, ipfs config --json Swarm.EnableAutoRelay true
  2. On Node C, ipfs config --json Swarm.EnableAutoNATService true

If that doesn’t work, you can try connecting Node A and Node B manually through the relay (Node C) as described here.

You’ll also need to turn node C into a relay by running ipfs config --json Swarm.EnableRelayHop true.

1 Like

I have a similar problem; AB executable program downloaded from git version 0.4.23; C is version 0.5.0-dev compiled by myself;
ABC uses the same swarm.key;
C enable EnableRelayHop, EnableAutoNATService;
A and B have EnableAutoRelay turned on; and they are running under different routers with upnp turned off;
Nodes in C can see AB;
My test method is:
A add a file
B get a file
But B hasn’t responded for a long time.
Error: Post http://127.0.0.1:5001/api/v0/get?arg=QmNcKWhB2GJD9vWseNUYnH6wsgxf5p5ijBefuJArSs6f6o&encoding=json&stream-channels=true: context canceled
Am i missing something

i edit DefaultRelays in the file github.com\libp2p\go-libp2p\p2p\host\relay\autorelay.go and found it works

Hello, may I ask how you solved it and did you make any changes

Check this IPFS Private Network