Hello
I am trying to make a test setup to test the RTPENGINE.
Case 1:
Now my setup is Kazoo . i.e.:
Subsriber A ---Asterisk (192.168.175.136)-----via NAT(10.111.101.3)-------------Kamailio(10.10.11.104) ----FreeSwitch(10.10.11.104)
Subscriber B is connected directly to Kamailio (this subscriber is in the same network)
Case 2:
When A calls to B - the sound both ways, so it is ok.
Subsriber A ---Asterisk (10.20.20.101)-----via NAT(10.11.97.12)-------------Kamailio(10.10.11.104) ----FreeSwitch(10.10.11.104)
Subscriber B is connected directly to Kamailio (this subscriber is in the same network)
WITH RTPENGINE:
When A calls to B - the sound is absent, no sound.
I compared both dumps the difference only in addresses
And what I read in nathelper module:
1 - Contact header field is searched for occurrence of RFC1918 addresses.
2 - the "received" test is used: address in Via is compared against source IP address of signaling
4 - Top Most VIA is searched for occurrence of RFC1918 addresses
8 - SDP is searched for occurrence of RFC1918 addresses
16 - test if the source port is different from the port in Via
32 - test if the source IP address of signaling is a RFC1918 address
All flags can be bitwise combined, the test returns true if any of the tests identified a NAT.
in nat-traversal-role.cfg
I see:
if (nat_uac_test("3")) {
force_rport();
fix_nated_contact();
}
if (has_body("application/sdp") && nat_uac_test("8")) {
fix_nated_sdp("10");
}
As I understand - both addresses are RFC1918
but in case 2 the RTPENGINE is not kernalized
Does the RTPENGINE distinguish the ip address? why it was not kernalized in case 2?
Any help is appresiated.