[Home]

Summary:ASTERISK-27437: [patch] ICE: server-reflexive candidates (srflx) with Dual-Stack.
Reporter:Alexander Traud (traud)Labels:patch
Date Opened:2017-11-21 06:24:40.000-0600Date Closed:2017-11-23 09:13:37.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:Resources/res_rtp_asterisk
Versions:13.18.2 15.1.2 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) ice_srflx_with_dual_stack.patch
Description:When ICE and IPv4+IPv6 (Dual-Stack) are enabled, no server-reflexive ICE candidates (srflx) are advertised in SDP, even if a user-agent client is connected via IPv4 only.

*Steps to reproduce*
# Asterisk behind a NAT
# channel driver _chan_sip_
# configuration file _sip.conf_ enabled for IPv6: {{bindaddr=::}}
# configuration file _sip.conf_ enabled for ICE: {{icesupport=yes}}
# call an extension on this Asterisk server, trace with Wireshark

*Expected results*
The answer to the SIP-INVITE contains an SDP media session with server-reflexive ICE candidates, like:
{{a=candidate:2 1 UDP 1694498815 192.0.2.3 45664 typ srflx raddr 10.0.1.1 rport 8998}}

*Actual results*
The answer to the SIP-INVITE contains an SDP media session without any server-reflexive ICE candidates.

*Notes*
The current source code works for IPv4-only servers. In all other cases (IPv6-only, IPv4+IPv6) no srflx are gathered. The attached patch gathers srflx even when Asterisk is enabled for IPv4+IPv6. When no IPv4 interface is available (Asterisk is IPv6-only), the proposed patch does not gather srflx as before.
Comments:By: Friendly Automation (friendly-automation) 2017-11-23 09:13:38.563-0600

Change 7332 merged by Joshua Colp:
res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack.

[https://gerrit.asterisk.org/7332|https://gerrit.asterisk.org/7332]

By: Friendly Automation (friendly-automation) 2017-11-23 09:29:57.843-0600

Change 7333 merged by Joshua Colp:
res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack.

[https://gerrit.asterisk.org/7333|https://gerrit.asterisk.org/7333]

By: Friendly Automation (friendly-automation) 2017-11-23 09:50:40.974-0600

Change 7331 merged by Joshua Colp:
res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack.

[https://gerrit.asterisk.org/7331|https://gerrit.asterisk.org/7331]