a month ago
My deployed bot is having trouble with outbound IPv6 UDP connections during voice call streaming (WebRTC via ntgcalls). Getting repeated errors like:
[webrtc] UDP send of 104 bytes to host [2001:b28:f23f:...] failed with error 101 (Network unreachable)
This happens on every call and causes retries/delay before the stream connects. Can IPv6 be disabled or fixed for this project?
Project: resilient-charisma
1 Replies
a month ago
This thread has been opened as a bounty so the community can help solve it.
Status changed to Open Railway • about 1 month ago
a month ago
This error is consistent with outbound IPv6 being disabled for the Railway service.
The destination [2001:...] is an IPv6 address, and Railway's outbound IPv6 support is opt-in per service. When outbound IPv6 is disabled, IPv6 connection attempts fail with Network is unreachable / ENETUNREACH, which matches your WebRTC UDP error exactly.
Fix:
Open the affected Railway service.
Go to Settings → Networking.
Enable Outbound IPv6.
Apply the staged change and redeploy the service.
You can also stage it from the CLI with:
railway outbound-network ipv6 enable
and then redeploy.
After that, both IPv4 and IPv6 outbound connectivity remain available; enabling IPv6 does not disable IPv4.
Since this is WebRTC/voice traffic over UDP, make sure the remote peer/TURN infrastructure is actually reachable over IPv6 as well. If you do not need IPv6, the alternative is to force the WebRTC/TURN path to use IPv4-only addresses.
So the root cause is not that UDP/WebRTC is unsupported — it is that the application is selecting an IPv6 destination while outbound IPv6 is disabled for this service.