[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 sr-users
mailing list