IPv6 outbound UDP connection errors on WebRTC/voice calls
batmanm894-bit
FREEOP

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

$10 Bounty

1 Replies

Railway
BOT

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


turicamirabelamaria-art
PRO

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.


Welcome!

Sign in to your Railway account to join the conversation.

Loading...