BelledonneCommunications / flexisip

Linphone.org mirror for flexisip (git://git.linphone.org/flexisip.git)
http://flexisip.org
GNU Affero General Public License v3.0
150 stars 74 forks source link

b2bua with IPv4/v6 cannot receive RTP packets from SIP server only with IPv4 #193

Open skhrshin opened 3 months ago

skhrshin commented 3 months ago

Overview

On an environment which supports both IPv4 and IPv6, b2bua sip-bridge mode passes IPv6 address to the upstream SIP servers. If they can send IPv6 packets, b2bua can hear RTP stream but it is unreachable if they can't.

Environment

Flexisip 2.3.4 on Debian GNU/Linux bookworm

Steps to reproduce

  1. Configure b2bua-server with sip-bridge mode
  2. Set up sip-bridge so that it would connect to SIP server which doesn't support IPv6 (like Docker container with default settings)
  3. Call from the client connecting to the proxy so that b2bua would bridge to that SIP server.

Expected behavior

Audio from the callee reaches the caller.

Actual behavior

The caller can hear nothing from the callee.

Remarks

The cause of this issue seems to be the address of b2bua passed to the upstream SIP server.

In my case, the SIP server I want b2bua to bridge to was on a Docker container, so I needed to configure IPv6 for the container as workaround.