[Users] Routing to NATed gateways

Bogdan-Andrei Iancu bogdan at voice-system.ro
Thu Nov 10 14:36:06 CET 2005


Hi Leonid,

does the logic solved your problem? on a first view, the script look ok.
regarding the failure of lookup(); you can stick to sending an error 
reply or you can try the next gateway provided by LCR.

regards,
bogdan

Leonid Fainshtein wrote:

>In other words, the simplified configuration may be as the following:
>
>    # Save original user name (the called phone number).
>    avp_printf("$orig_called_num", "$rU");
>    if (load_gws())
>    {
>        if (next_gw())
>        {
>           if (lookup("location")) 
>           {
>                avp_pushto("$ruri/username", "$orig_called_num");
>                t_on_failure("2");
>                route(x); # NAT and other usual staff there
>                exit;
>           }
>           else 
>           {
>                xlog("L_INFO", "I have to think what to do in this
>situation.\n");
>                sl_send_reply("404", "User Not Found");
>           }
>        }
>    }
>
>failure_route[2]
>{
>    if (method=="INVITE" && t_check_status("408|500|503"))
>    {
>        if (!next_gw())
>        {
>            t_reply("503", "Service not available, no more gateways");
>        }
>        else
>        {
>            if (!lookup("location")) 
>            {
>                xlog("L_INFO", "I have to think what to do in this
>situation.\n");
>                t_reply("503", "Service not available, no more
>gateways");
>                exit;
>            };
>            t_on_failure("2");
>            t_on_branch("2");
>            t_relay();
>        }
>    }
>}
>
>branch_route[2]
>{
>    avp_pushto("$ruri/username", "$orig_called_num");
>}      
>
>Am I correct? Actually I don't know what to do if one of the gateways is
>off-line (lookup() failed). 
>
>Best regards,
>Leonid Fainshtein 
>-----Original Message-----
>From: Bogdan-Andrei Iancu [mailto:bogdan at voice-system.ro] 
>Sent: Tuesday, November 08, 2005 5:30 PM
>To: Leonid Fainshtein
>Cc: users at openser.org
>Subject: Re: [Users] Routing to NATed gateways
>
>Hi Leonid,
>
>the scenario you are probing might be already doable. Set in the LCR
>table some IP addresses which will be used as aliases: private addresses
>in 10.10.x.x class for example. Then register this IPs in usrloc
>pointing to the real GWs address.
>So you can do lcr (next_gw) and then lookup.
>
>for this to work, lcr must operate on RURI and not on DST_URI (not sure
>how exactly is working).
>
>regards,
>bogdan
>
>Leonid Fainshtein wrote:
>
>  
>
>>Hi,
>>I'd like to use OpenSER for routing calls to NATed gateways. I also 
>>want to support the LCR feature. Unfortunately, the current LCR module 
>>doesn't support NAT. I mean that the gateway IP addresses must be 
>>defined explicitly  in the "gtw" table. Now I'm looking for a way to 
>>force OpenSer to use information from the "location" table.
>>I want to write a module that will have the similar functionality like 
>>the current LCR module has but resolving procedure will be more 
>>complicated (not based on prefix and From only). The module should 
>>build avp list where each gateway will have symbolic user name. For 
>>example, g1, g2 etc. The gateways will also be registered on the proxy 
>>with those names. Then I think it will be possible to call 
>>lookup("location") after successful call the next_gtw() from the
>>    
>>
>script.
>  
>
>>Is it feasible? Is there another way to solve my problem?
>>
>>Thank you in advance,
>>Leonid Fainshtein
>>
>>_______________________________________________
>>Users mailing list
>>Users at openser.org
>>http://openser.org/cgi-bin/mailman/listinfo/users
>>
>> 
>>
>>    
>>
>
>
>  
>





More information about the Users mailing list