-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
add a config option to allow all protocols via circuit v2 #2079
Comments
I'd love to expose this ability in Kubo as opt-in option under Swarm.RelayService. People loved the fact they could use regular Kubo as a static relay v1 for their web app (in controlled environments, when both service and clients running on web pages were set up statically). Bitswap over relayed connection "just worked". Since we've removed v1 service, it is impossible to do bitswap over relayed connection, and people are forced to run a separate daemon just for the relay feature, which is pretty bad UX for using IPFS in web apps. With this new config option, people will be able to deploy web apps that run bitswap over relay again 👍 |
@lidel that’s not what this issue is about. I don’t plan adding an unlimited relay mode here. The transition to circuit v2 (which enabled decentralized hole punching) was only possible because relays are imposing strict usage limits. |
@marten-seemann ack, i think we are on the same page, we talk about additional option to allow all protocols here, nothing more. I only meant that this new option, together with existing ability to set limits very high, allows users to have a (more-or-less) drop-in replacement for how they use v1 today. |
Would this feature be advertised as a multistream protocol component, like Being able to discover which nodes provide this feature would be very useful, as I imagine nodes willing to enable this will be quite scarce overall |
We don't need a config option, we can just say that if the relay gives us infinite limits we don't apply any filter which protocols can be used. In fact, that's what we're already doing: go-libp2p/p2p/protocol/circuitv2/client/dial.go Lines 181 to 186 in b2f1199
I confirmed that this actually works. An unlimited v2 relay can be started using the Other than that, I believe this issue is fully resolved. |
We should do this if we want to drop v1 support
The text was updated successfully, but these errors were encountered: