[OpenSIPS-Users] two UACs behind the same nat
Nick Khamis
symack at gmail.com
Mon Mar 18 15:06:15 CET 2013
It will change it if fired. Make sure that you get to
"route[nat_fixups]" for the call. And for testing, try removing the
flags" (isflagset(5) || isbflagset(6))" etc... xlog("Why me god:
$ru\n") always seems to have mercy on our souls. ;)
Nick.
On 3/18/13, Nick <nick.chang at kland.com.tw> wrote:
> Hello
>
> I modify my config.
>
> route[nat_fixups] {
> xlog("L_NOTICE","4 NAT FIXED - $fu call $ru ");
> #---- RTP Proxy handling ---#
> if (is_method("BYE|CANCEL")) {
> unforce_rtp_proxy();
> } else if (is_method("INVITE")){
> #---- Activates the RTP Proxy for the CALLEE ---#
> rtpproxy_offer("c","61.67.128.46");
> };
> # catch and fix replies
> t_on_reply("2");
> }
>
> onreply_route[2] {
> #xlog("incoming reply\n");
>
> #---- Handling of the SDP for the 200 or 183 reply ----#
> #---- If behind nat (flags 5 or 6) start RTP Proxy ----#
> #---- Activates the RTP Proxy for the CALLER ----#
> if ( is_method("INVITE") &&
> (isflagset(5) || isbflagset(6)) &&
> has_body("application/sdp") ){
> rtpproxy_answer("c","61.67.128.46");
> }
>
> #---- If the CALLEE is behind NAT, fix the CONTACT HF ----#
> if (isbflagset(6)) {
> fix_nated_contact();
> search_append('Contact:.*sip:[^>[:cntrl:]]*', ';nat=yes');
> }
> exit;
> }
>
> Then, I used ngrep get packet.
>
> Connection Information still not Opensips SERVER of IP.
> It's not change to my setting.
>
> Do you have any suggestion??
>
> Thanks
> Nick
>
>
>
> 2013/3/15 Nick Khamis <symack at gmail.com>
>
>> Hello Nick,
>>
>> As Bogdan pointed out please look at the important parts of your SDP
>> payload:
>>
>> sip:55688 at 61.67.128.46:5060
>> Contact: <sip:55688 at 211.75.166.164:5060>
>> c=IN IP4 211.75.166.164
>>
>> sip:9999 at 61.67.128.46
>> Contact: <sip:9999 at 192.168.4.197:5060>
>> c=IN IP4 192.168.4.197
>>
>> Kind Regards,
>>
>> Nick.
>>
>> On 3/15/13, Bogdan-Andrei Iancu <bogdan at opensips.org> wrote:
>> > Hi Nick,
>> >
>> > But in the SDP-s received by the UACs, in the "c" line, you see the IP
>> > of the other UAC and not the IP of OpenSIPS, right ?
>> >
>> > Regards,
>> >
>> > Bogdan-Andrei Iancu
>> > OpenSIPS Founder and Developer
>> > http://www.opensips-solutions.com
>> >
>> >
>> > On 03/15/2013 03:28 AM, Nick Chang wrote:
>> >>
>> >> Hello Bodgan
>> >>
>> >> 2 UACs behind the same nat, I check my routing.
>> >>
>> >> UAC don't route to nat_fixups.
>> >>
>> >> But UACs checked My OpenSIPS private IP (10.10.12.111), Not Public IP.
>> >>
>> >> I don't know why? Do you have any suggestion??
>> >>
>> >> My Config
>> >>
>> >> route[generic_relay] {
>> >>
>> >> xlog("L_NOTICE","3 invite $si");
>> >>
>> >> # for INVITEs enable some additional helper routes
>> >>
>> >> #---- Helper route, if nat=yes in the R-URI set flag 6 ----#
>> >>
>> >> #---- This is used to Process REINVITES ----#
>> >>
>> >> if (subst_uri('/((sip:.*)||(sip:.*:.*));nat=yes/\1/')){
>> >>
>> >> setbflag(6);
>> >>
>> >> };
>> >>
>> >> #---- If caller(flag 5) or callee(flag 6) are behind NAT ---#
>> >>
>> >> #---- Call the route(6) to force the use of the RTP Proxy ---#
>> >>
>> >> if (isflagset(5) || isbflagset(6)) {
>> >>
>> >> route(nat_fixups);
>> >>
>> >> };
>> >>
>> >> if (!t_relay()) {
>> >>
>> >> sl_reply_error();
>> >>
>> >> };
>> >>
>> >> exit;
>> >>
>> >> }
>> >>
>> >> route[nat_fixups] {
>> >>
>> >> xlog("L_NOTICE","4 NAT FIXED - $fu call $ru ");
>> >>
>> >> #---- RTP Proxy handling ---#
>> >>
>> >> if (is_method("BYE|CANCEL")) {
>> >>
>> >> unforce_rtp_proxy();
>> >>
>> >> } else if (is_method("INVITE")){
>> >>
>> >> #---- Activates the RTP Proxy for the CALLEE ---#
>> >>
>> >> rtpproxy_offer();
>> >>
>> >> };
>> >>
>> >> # catch and fix replies
>> >>
>> >> t_on_reply("2");
>> >>
>> >> }
>> >>
>> >> Thanks
>> >>
>> >> Nick
>> >>
>> >> *From:*Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
>> >> *Sent:* Friday, March 15, 2013 12:32 AM
>> >> *To:* OpenSIPS users mailling list
>> >> *Cc:* Nick Chang
>> >> *Subject:* Re: [OpenSIPS-Users] two UACs behind the same nat
>> >>
>> >> Hi Nick,
>> >>
>> >> Assuming routing is possible between the 2 UACs, you need to double
>> >> check that the IPs in SDP are not changed by proxy and points to the
>> >> actual UACs.
>> >>
>> >> Regards,
>> >>
>> >> Bogdan-Andrei Iancu
>> >> OpenSIPS Founder and Developer
>> >> http://www.opensips-solutions.com
>> >>
>> >>
>> >> On 03/11/2013 11:40 AM, Nick Chang wrote:
>> >>
>> >> Hello
>> >>
>> >> I have two UACs behind the same nat.
>> >>
>> >> A call B is OK. But it's not voice.
>> >>
>> >> Can everyone give me a suggestion??
>> >>
>> >> Thanks
>> >>
>> >> Nick
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> Users mailing list
>> >> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>> >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> >
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>
More information about the Users
mailing list