[asterisk-dev] Symmetric RTP behaviour and 'nat' peer option.
Alex Balashov
abalashov at evaristesys.com
Wed Apr 22 18:42:59 CDT 2009
Joshua,
Thanks for doing the testing.
I suspect that there is a bug at work here wherein what the code thinks
it's doing (and thus, what log messages based on flags set therein) is
not what it actually does.
I will privately e-mail you a packet capture that demonstrates the
actual behaviour I see.
-- Alex
Joshua Colp wrote:
> ----- "Alex Balashov" <abalashov at evaristesys.com> wrote:
>
>> I agree that this patch is germane, but I think it is a little
>> orthogonal to the problem I have. Maybe it's just a philosophical
>> difference.
>>
>> Specifically, I do not *want* Asterisk to always retrain its outbound
>>
>> RTP destination ports on the source port of the incoming RTP. This is
>>
>> what the patch appears to effect. I don't think that should be the
>> behaviour. If I set nat=no, I don't want Asterisk to do anything
>> "intelligent" like that. I want it to behave strictly according to
>> protocol mechanics and send the RTP to where the SDP says to send the
>>
>> RTP to. If I set nat=yes, then it can do that.
>>
>
> I just did some testing using the latest 1.4 from SVN and 1.4.21.1 for this specific situation.
>
> To confirm whether the symmetric RTP support is being used or not I added a line of code that outputs a log message to the screen when it is executed.
>
> 1. Set nat to no in the general section, left unconfigured elsewhere. Confirmed that the code is not executed.
> 2. Set nat to yes in the general section, left unconfigured elsewhere. Confirmed that code is executed.
> 3. Set nat to no in the general section, set to yes in the phone entry. Confirmed that code is executed.
> 4. Set nat to no in the general section, set to no in the phone entry. Confirmed that code is not executed.
> 5. Set nat to yes in the general section, set to no in the phone entry. Confirmed that code is not executed.
> 6. Set nat to yes in the general section, set to yes in the phone entry. Confirmed that code is executed.
> 7. Set nat to no in the general section, disabled phone entry. Confirmed that code is not executed.
> 8. Set nat to yes in the general section, disabled phone entry. Confirmed that code is executed.
>
> I've thrown all the scenarios I can think of at it and they all behave as expected. Are you doing something differently?
>
--
Alex Balashov
Evariste Systems
Web : http://www.evaristesys.com/
Tel : (+1) (678) 954-0670
Direct : (+1) (678) 954-0671
Mobile : (+1) (678) 237-1775
More information about the asterisk-dev
mailing list