Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dialback Protocol #925

Closed
dirkmc opened this issue May 14, 2020 · 2 comments
Closed

Dialback Protocol #925

dirkmc opened this issue May 14, 2020 · 2 comments
Assignees
Labels

Comments

@dirkmc
Copy link
Contributor

dirkmc commented May 14, 2020

Background

New users to IPFS typically expect to be able to add some data to IPFS on their local machine and then fetch it through the IPFS Gateway, or from a Pinning Service.

If the user's local machine is behind a NAT, another machine can't fetch the data.

Dialback Protocol

One solution is for the publicly available node to request a "dialback" from the NATed node. Once the NATed node connects directly to the public node, the public node can fetch the data from the NATed node through this connection.

During a DHT query, each node reports its nearest neighbours - the NATed node should be connected to its nearest neighbours in the DHT. In order to request a dialback, the public node can find a neighbour to the NATed node and ask the neighbour to pass the dialback request to the NATed node. Participating nodes' peer records should indicate that they support the dialback protocol.

@aarshkshah1992
Copy link
Contributor

@jacobheun This falls under the larger umbrella of NAT traversal. Assigning this to myself as this should be the first win in that path.

@aarshkshah1992 aarshkshah1992 self-assigned this Oct 28, 2020
@Stebalien Stebalien removed the feature label Mar 27, 2021
@marten-seemann
Copy link
Contributor

This should be handled by our hole punching logic now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants