[OpenSIPS-Users] Registration and Loose-Route

Bogdan-Andrei Iancu bogdan at voice-system.ro
Tue Jun 30 13:48:19 CEST 2009


Hi Nathaniel,

OpenSIPs gives you the 403 as it does not recognize itself in the Route 
hdr of the REGISTER. By adding the entry in the domain table, OpenSIPS 
will recognize its own SIP domains and it will validate the request.

about the 401 - this is the normal step during the authentication 
process. First the UAC sends a request with no credentials, the proxy 
answers with a 401 asking for auth; then the UAC should send a new 
request containing the credentials.

Regards,
Bogdan

Nathaniel L Keeling wrote:
> If there is no entry in the domain table, the it will error in the 
> loose_route() function and the error message that I get is "403 
> Preload Route denied". When I add an entry to the domain table, it 
> passes the loose_route() function and then error while authenticating. 
> I have placed an xlog statement within the register block of the 
> config file and right before the loose_route() function block is 
> executed. I have included my config file.
>
> thanks
>
> Nathaniel
>
> Eduardo Panciera wrote:
>> Are you sure that the message are been processed by a register block 
>> of your configuration? can you attach your configuration file? you 
>> can use log function in the differents blocks of your configuration , 
>> in order to clarify your debug.
>>  
>> best regards.
>> Pancho.
>>
>> On Mon, Jun 29, 2009 at 9:06 PM, Nathaniel L Keeling 
>> <keeling at akan-tech.com <mailto:keeling at akan-tech.com>> wrote:
>>
>>     I am new and need an explanation. I have installed opensips 1.5 with
>>     database support. I am trying to authenticate via the subscriber's
>>     table. Utilizing the sample config file and uncommenting the 
>> areas to
>>     allow authentication via database, I try to register a sip device. I
>>     have added a user using opensipsctl. When the registration requests
>>     comes in, it dies in the loose_route() function with the error "403
>>     Preload Route Denied". According to the documentation on the
>>     loose_route() function, if there is no to-tag and there is only on
>>     route
>>     header indicating the localproxy, the function should return 
>> false. It
>>     is returning true. I then added the sip domain to the domain 
>> table and
>>     the error changes to "401Unauthorized". Please explain. I am 
>> including
>>     the SIP message and the debug output.
>>
>>     Jun 29 01:15:03 [15473] DBG:core:parse_msg: SIP Request:
>>     Jun 29 01:15:03 [15473] DBG:core:parse_msg:  method:  <REGISTER>
>>     Jun 29 01:15:03 [15473] DBG:core:parse_msg:  uri:
>>     <sip:kwesi.chicagosip1.akan.us.com
>>     <http://kwesi.chicagosip1.akan.us.com/>>
>>     Jun 29 01:15:03 [15473] DBG:core:parse_msg:  version: <SIP/2.0>
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: flags=2
>>     Jun 29 01:15:03 [15473] DBG:core:parse_via_param: found param type
>>     232,
>>     <branch> = <z9hG4bK728627284>; state=6
>>     Jun 29 01:15:03 [15473] DBG:core:parse_via_param: found param type
>>     235,
>>     <rport> = <n/a>; state=17
>>     Jun 29 01:15:03 [15473] DBG:core:parse_via: end of header reached,
>>     state=5
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: via found, flags=2
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: this is the first 
>> via
>>     Jun 29 01:15:03 [15473] DBG:core:receive_msg: After parse_msg...
>>     Jun 29 01:15:03 [15473] DBG:core:receive_msg: preparing to run 
>> routing
>>     scripts...
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: flags=100
>>     Jun 29 01:15:03 [15473] DBG:core:parse_to: end of header reached,
>>     state=10
>>     Jun 29 01:15:03 [15473] DBG:core:parse_to: display={},
>>     ruri={sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>}
>>     Jun 29 01:15:03 [15473] DBG:core:get_hdr_field: <To> [48];
>>     uri=[sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>]
>>     Jun 29 01:15:03 [15473] DBG:core:get_hdr_field: to body
>>     [<sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>>
>>     ]
>>     Jun 29 01:15:03 [15473] DBG:core:get_hdr_field: cseq <CSeq>: <6493>
>>     <REGISTER>
>>     Jun 29 01:15:03 [15473] DBG:maxfwd:is_maxfwd_present: value = 70
>>     Starting to process request................
>>     Jun 29 01:15:03 [15473] DBG:uri:has_totag: no totag
>>     we are about to check for cancel................
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: flags=78
>>     Jun 29 01:15:03 [15473] DBG:tm:t_lookup_request: start searching:
>>     hash=15692, isACK=0
>>     Jun 29 01:15:03 [15473] DBG:tm:matching_3261: RFC3261 transaction
>>     matching failed
>>     Jun 29 01:15:03 [15473] DBG:tm:t_lookup_request: no transaction 
>> found
>>     we are about to check registration and multidomain................
>>     we are about to check for loose route................
>>     Jun 29 01:15:03 [15473] DBG:core:parse_headers: flags=200
>>     Jun 29 01:15:03 [15473] DBG:rr:is_preloaded: is_preloaded: Yes
>>     Jun 29 01:15:03 [15473] DBG:core:grep_sock_info: checking if 
>> host==us:
>>     29==14 &&  [kwesi.chicagosip1.akan.us.com
>>     <http://kwesi.chicagosip1.akan.us.com/>] == [209.252.110.37]
>>     Jun 29 01:15:03 [15473] DBG:core:grep_sock_info: checking if port 
>> 5060
>>     matches port 5060
>>     Jun 29 01:15:03 [15473] DBG:core:check_self: host != me
>>     Jun 29 01:15:03 [15473] DBG:rr:after_loose: Topmost URI is NOT 
>> myself
>>     Jun 29 01:15:03 [15473] DBG:rr:after_loose: URI to be processed:
>>     'sip:kwesi.chicagosip1.akan.us.com:5060;lr'
>>     Jun 29 01:15:03 [15473] DBG:rr:after_loose: Next URI is a loose 
>> router
>>     Jun 29 01:15:03 [15473] DBG:core:parse_to_param: tag=1590215359
>>     Jun 29 01:15:03 [15473] DBG:core:parse_to: end of header reached,
>>     state=29
>>     Jun 29 01:15:03 [15473] DBG:core:parse_to: display={},
>>     ruri={sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>}
>>     Attempt to route with preloaded Route's
>>
>>     
>> [sip:3124530700 at kwesi.chicagosip1.akan.us.com/sip:3124530700 at kwesi.chicagosip1.akan.us.com/sip:kwesi.chicagosip1.akan.us.com/1069016662-6062-1 at 98.122.86.123]Jun 
>>
>>     
>> <http://sip:3124530700@kwesi.chicagosip1.akan.us.com/sip:3124530700@kwesi.chicagosip1.akan.us.com/sip:kwesi.chicagosip1.akan.us.com/1069016662-6062-1@98.122.86.123%5DJun> 
>>
>>     29
>>
>>     01:15:03 [15473] DBG:core:parse_headers: flags=ffffffffffffffff
>>     Jun 29 01:15:03 [15473] DBG:core:get_hdr_field: content_length=0
>>     Jun 29 01:15:03 [15473] DBG:core:get_hdr_field: found end of header
>>     Jun 29 01:15:03 [15473] DBG:core:check_via_address: params
>>     98.122.86.123, 98.122.86.123, 0
>>     Jun 29 01:15:03 [15473] DBG:core:destroy_avp_list: destroying list 0
>>     Jun 29 01:15:03 [15473] DBG:core:receive_msg: cleaning up
>>
>>
>>     #
>>     U 2009/06/29 01:35:01.608581 98.122.86.123:6062
>>     <http://98.122.86.123:6062/> -> 209.252.110.37:5060
>>     <http://209.252.110.37:5060/>
>>     REGISTER sip:kwesi.chicagosip1.akan.us.com
>>     <http://kwesi.chicagosip1.akan.us.com/> SIP/2.0.
>>     Via: SIP/2.0/UDP 98.122.86.123:6062;branch=z9hG4bK1362945809;rport.
>>     Route: <sip:kwesi.chicagosip1.akan.us.com:5060;lr>.
>>     From: <sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     
>> <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>>;tag=1590215359.
>>     To: <sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>>.
>>     Call-ID: 1069016662-6062-1 at 98.122.86.123
>>     <mailto:1069016662-6062-1 at 98.122.86.123>.
>>     CSeq: 6494 REGISTER.
>>     Contact:
>>     <sip:3124530700 at 98.122.86.123:6062
>>     
>> <http://sip:3124530700@98.122.86.123:6062>>;reg-id=2;+sip.instance="<urn:uuid:00000000-0000-1000-8000-000B821473A2>". 
>>
>>     Max-Forwards: 70.
>>     User-Agent: Grandstream GXW-4004  V1.3A 1.0.1.15.
>>     Supported: path.
>>     Expires: 3600.
>>     Allow: INVITE, ACK, OPTIONS, CANCEL, BYE, SUBSCRIBE, NOTIFY, INFO,
>>     REFER, UPDATE.
>>     Content-Length: 0.
>>     .
>>
>>     #
>>     U 2009/06/29 01:35:01.633256 209.252.110.37:5060
>>     <http://209.252.110.37:5060/> -> 98.122.86.123:6062
>>     <http://98.122.86.123:6062/>
>>     SIP/2.0 403 Preload Route denied.
>>     Via: SIP/2.0/UDP
>>     98.122.86.123:6062;branch=z9hG4bK1362945809;rport=6062.
>>     From: <sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     
>> <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>>;tag=1590215359.
>>     To:
>>     <sip:3124530700 at kwesi.chicagosip1.akan.us.com
>>     
>> <mailto:sip%3A3124530700 at kwesi.chicagosip1.akan.us.com>>;tag=d3ff5fc5ce3916ee69f721c7781603d2.2cfe. 
>>
>>     Call-ID: 1069016662-6062-1 at 98.122.86.123
>>     <mailto:1069016662-6062-1 at 98.122.86.123>.
>>     CSeq: 6494 REGISTER.
>>     Server: OpenSIPS (1.5.1-tls (sparc64/solaris)).
>>     Content-Length: 0.
>>
>>
>>     Thanks
>>
>>     Nathaniel
>>
>>     _______________________________________________
>>     Users mailing list
>>     Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>     http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>>
>> -- 
>> Eduardo Panciera
>> ------------------------------------------------------------------------
>>
>>
>> No virus found in this incoming message.
>> Checked by AVG - www.avg.com Version: 8.5.375 / Virus Database: 
>> 270.12.94/2208 - Release Date: 06/29/09 05:54:00
>>
>>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users




More information about the Users mailing list