As far as I know, it’s not planned. The reason being, v2 is only there as a means for nodes to connect directly to each other using hole punching (which is a way for nodes behind separate NAT routers to establish a direct connection). Make sure hole punching is enabled:
It is not that the relays do not support relaying anything. It is that in Kubo, specifically, the relay-server part is utilized to enable NAT hole punching now and only that, and as such it is limited to relaying small pieces of data.
Thank you so much for that link, @hector! It was exactly what I needed.
I read through the thread How to setup V1 Relay in the new config, and I was using a very similar network configuration as @susarlanikhilesh: The two nodes I wanted to connect were behind an unknown level of firewalls with no visibility into their network configuration. I needed a way to tunnel through any firewalls and pass files between the nodes. I followed the instructions carefully, but in my tests, hole punching was not successful and I was not able to get the two nodes to connect to one another directly. Reverting to a v1 Relay was my only option.
I was able to setup libp2p-relay-daemon as a V1 relay using this config:
Hi @christroutner, can you please tell me how did you get it to work with v1 relay? Kubo nodes have a different config (which I guess only supports v2 relays) from legacy go-ipfs v1 relay configs.
You identified the situation correctly. A couple months after creating that V1 relay Docker package, I realized it was useless.
I’ve moved away from Kubo (go-ipfs) to Helia (js-ipfs), and it’s the same thing: those nodes will simply not use the v1 relay anymore. They only support v2 relays, despite their shortcomings.
I’ve given up on using v1 relays, even though I really like the simplicity of the solution.
My experience so far has been that v2 Circuit Relays are flaky, and the ability to use webRTC breaks continuously and is also flaky. Sometimes it works, sometimes it doesn’t, and I never really understand why it worked or didn’t work. I’m trying to learn more about the tech and the underlying code so that I can one day fix this issue, as it’s badly needed in the software I’m developing.
The only thing that has allowed me to continue using libp2p and IPFS is to set up my own network of nodes on cloud VPS with a static IP address and open ports. I use pubsub channels as the primary form of communication, so as long as my edge nodes can make a direct connection to one of these VPS nodes, they get the information from the pubsub channel.
I hope that I can get better network connectivity through webRTC and V2 Circuit Relays some day, but right now that part of the tech just isn’t reliable. If it wasn’t for the more reliable ip4 direct connections and pubsub channels, I wouldn’t be able to use libp2p/IPFS in my project at all.
My understanding is that v1 relays are only accessible by older versions of go-ipfs. If you have a plan for using v1 relays, I’d like to hear more about it. I’d love to revert my network back to v1 relays if possible.