Hacker News new | ask | show | jobs
Show HN: I used udp2raw for WireGuard, since my cloud provider blocked UDP (gist.github.com)
11 points by hamid_rostami 1256 days ago
2 comments

That udp2raw tool is pretty interesting. I was pondering about this while I was in China, since an UDP based tunnel was rather slow. I wondered whether TCP would get a different treatment, packet loss for UDP was constantly around 33%, which made me suspicious. But I didn't have the patience to fake the TCP headers properly and simulate a 3-way handshake. I saw the same author created a tool that would wrap UDP traffic with reed-solomon to tackle packet loss. I took the cheap approach and just sent every packet a second time with a delay of RTT/2, so a lost packet that made it through on the second attempt would still be in time (2*RTT) to avoid TCP doing a slow start again, ruining throughput all the time. YouTube went from unusable to doing 480p most of the time.
Yes, indeed udp2raw is very interesting. It's a while I'm playing with it and I found it stable enough. Actually, I avoid putting so much stress on my wireguard connection over udp2raw, just being able to establish SSH connection to my devices is enough for me and this method is doing great so far.
I'm sorry your cloud provider did what now?
Bases on my investigations, it's been dropping all UDP datagrams.
That sounds more like a firewall issue, I highly doubt your cloud provider blocked UDP entirely.
Which cloud provider? Is it possible it could be a firewall/security group config issue?
Well, it's situated in Iran and as you might know they're applying highly restricted rules on traffic. I doubt there is a firewall issue. I have UDP connections from a peer within Iran, but absolutely nothing from outside.