For everyone trying out the ipfs p2p command, please add any and all feedback here, this includes (but is not limited to) bugs, opinions, interface critiques, potential usecases, and feature requests.
To enable the command, you will need to run:
ipfs config --json Experimental.Libp2pStreamMounting true
And restart your daemon.
Basic usage of ipfs p2p is as follows:
First, open up a p2p listener on one ipfs node:
`p2p listener open p2p-test /ip4/127.0.0.1/tcp/10101`
This will create a libp2p protocol handler for a protocol named `p2p-test` and then open up a tcp socket locally on port 10101. Your application can now connect to that port to interact with the service.
On the other ipfs node, connect to the listener on node A
ipfsi 1 p2p stream dial $NODE_A_PEERID p2p-test /ip4/127.0.0.1/tcp/10102
Now the ipfs nodes are connected to eachother. This command also created another tcp socket for the other end of your application to connect to. Once the other end connects to that socket, both sides of your application should be able to communicate, with their traffic being routed through libp2p.
The easiest way to try this out is with netcat.
by @magik6k:
The feature is getting refactored in some breaking ways. For updated guide see https://github.com/ipfs/go-ipfs/blob/4bafbf1cdef7d6d0041154ee03efb02f2ef0685b/docs/experimental-features.md#ipfs-p2p.
What changed: #3994 (comment)
For everyone trying out the
ipfs p2pcommand, please add any and all feedback here, this includes (but is not limited to) bugs, opinions, interface critiques, potential usecases, and feature requests.To enable the command, you will need to run:
ipfs config --json Experimental.Libp2pStreamMounting trueAnd restart your daemon.
Basic usage of
ipfs p2pis as follows:First, open up a p2p listener on one ipfs node: `p2p listener open p2p-test /ip4/127.0.0.1/tcp/10101` This will create a libp2p protocol handler for a protocol named `p2p-test` and then open up a tcp socket locally on port 10101. Your application can now connect to that port to interact with the service.On the other ipfs node, connect to the listener on node A
ipfsi 1 p2p stream dial $NODE_A_PEERID p2p-test /ip4/127.0.0.1/tcp/10102Now the ipfs nodes are connected to eachother. This command also created another tcp socket for the other end of your application to connect to. Once the other end connects to that socket, both sides of your application should be able to communicate, with their traffic being routed through libp2p.
The easiest way to try this out is with netcat.
by @magik6k:
The feature is getting refactored in some breaking ways. For updated guide see https://github.com/ipfs/go-ipfs/blob/4bafbf1cdef7d6d0041154ee03efb02f2ef0685b/docs/experimental-features.md#ipfs-p2p.
What changed: #3994 (comment)