Summary:ASTERISK-26457: [patch] force_rport,auto_comedia: No NAT detection triggered.
Reporter:Alexander Traud (traud)Labels:
Date Opened:2016-10-11 07:00:20Date Closed:2016-10-19 10:09:04
Versions:11.23.1 13.11.2 14.0.2 Frequency of
is caused byASTERISK-21374 [patch] One-way Audio With auto_* NAT Settings When SIP Calls Initiated By PBX
Environment:Attachments:( 0) just_auto_comedia.patch
Description:*Steps to Reproduce*
# Asterisk with {{nat=force_rport,auto_comedia}}
# first VoIP/SIP client (caller) uses public IP addresses in its SDP
 for example not within a NAT, like IPv6
# second VoIP/SIP client (callee) uses private IP addresses in its SDP
 for example within a NAT, for example IPv4 without STUN
# call is established = signaling via SIP is OK

*Expected Results*
Media (RTP) should flow, because comedia is enabled as Asterisk detected a NAT towards the callee. Asterisk is sending RTP to public IP addresses.

*Actual Results*
Media is one way (from callee to caller). Asterisk sends the media of the caller to the address mentioned in the SDP message of the callee. That was a private IP address. Therefore media does not reach the callee. Therefore one-way media.

{{nat=auto_force_rport,auto_comedia}} fixed the issue for me, because the related code tests for a NAT in that case.

Asterisk should test for NAT, whether {{auto_force_rport}} or {{auto_comedia}} is set. This is done in other calling scenarios within Asterisk already. The attached patch does this for this scenario here as well.