You need a SOCKS5 client that supports the
UDP ASSOCIATE command. Many tools, curl for example, only send TCP over SOCKS5. They can log in but can’t send UDP.Connection Settings
string
required
true to route the session over the UDP-capable path. 1, yes and on also work.udp-true with geo-targeting, OS-targeting, location fallback and sessions. Put it before the session ID:
How It Works
- Your client opens a SOCKS5 connection to
residential.roundproxies.com:5002and logs in. - It sends a
UDP ASSOCIATErequest. - We reply with the address and port of your UDP relay.
- Your client sends its UDP packets to the relay, and we forward them to the destination.
- Replies come back through the relay.
Test With a DNS Query
DNS runs over UDP port53, so it is the quickest way to test. This example uses PySocks (pip install pysocks) to look up example.com at 1.1.1.1:
Python
Rules and Limits
- Same IP for TCP and UDP. Your UDP packets must come from the same public IP as your SOCKS5 login. Packets from other IPs are dropped. The first packet also fixes the UDP port you send from.
- Blocked ports. Mail (SMTP, POP3, IMAP), FTP, SSH and Telnet ports are blocked, the same as for TCP. Packets to them are dropped.
- No fragmentation. SOCKS5 UDP fragments are not supported. Each packet has to fit in one UDP datagram.
- Billing. UDP packets in both directions count toward your data balance, the same as TCP. When your balance runs out, the relay closes.
Troubleshooting
If
UDP ASSOCIATE fails, you get the same SOCKS5 reply codes as for a failed TCP connection. See Error Handling.