[OpenSER-Users] Need help to solve BYE signalling problem

Krunal Patel krunal.patel at ecosmob.com
Mon May 26 08:59:50 CEST 2008


Hi,

++ I have registered 3 UACs to the same openser server which are behind NAT.
     UAC 1 -- 111111
     UAC 2 -- 222222
     UAC 3 -- 333333

++ So in location table , I am getting :

 ------------------------------------------------+-----------------------+--------------------------
           Contact                                |      Received
|
------------------------------------------------+-----------------------+--------------------------
111111@<private-IP>:5060                |  sip:public-IP : 5060|
222222@<private-IP>:5060                |  sip:public-IP : 5060|
333333@<private-IP>:5060                |  sip:public-IP : 5060|

++ I have set user preferences :
+------+------------------+-------------------------+-------------+------+------------------------------------------------------+
| uuid | username        | domain                       | attribute   | type
| value                                                               |
+------+------------------+-------------------------+-------------+------+------------------------------------------------------+
|         | 222222              | domainname.com     | fwdbusy     |    0 |
fwdbusy:sip:333333 at domainname.com <fwdbusy%3Asip%3A333333 at domainname.com>
|         | 222222              | domainname.com     | noanscfwd |    0 |
noanscfwd:sip:333333 at domainname.com<noanscfwd%3Asip%3A333333 at domainname.com>+------+------------------+-------------------------+--------------+------+------------------------------------------------------+

++ I am using mediaproxy for audio signaling.

++ Now I am dialing 222222 using 111111 & keeps 222222 ringing until it
stops automatically. So call is being forwarded to 333333.
     111111 ---------------> 222222---------------> 333333

++ I pick up the call . So 111111 & 333333 is connected.

++ Now I hangup 333333 , so it sends BYE request to 111111.

++ Now the problem is openser do not send  the BYE request to 111111 . So
111111 stays connected. & the BYE request keeps looping infinitly in
openser.

>
> Here is the BYE request :
>
> Message Body: BYE sip:111111@<server-IP>:5060 SIP/2.0
> Via: SIP/2.0/UDP <111111's Private IP>:5060;branch=z9hG4bK-ed33673a;rport
> From: <sip:222222 at domainname.com <sip%3A222222 at domainname.com>
> >;tag=632a4773b79ebfa8i1
> To: Anonymous <sip:111111 at domainname.com <sip%3A111111 at domainname.com>
> >;tag=26190b20d13c8197o0
> Call-ID: 4d753c94-f366deb3 at localhost
> CSeq: 101 BYE
> Max-Forwards: 70
> Route: <sip:[SERVER'sIP]:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on>,
> <sip:[SERVER's IP]:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on>
> User-Agent: Linksys/PAP2T-3.1.15(LS)
> Content-Length: 0
>
>
>  0(5877) DEBUG:maxfwd:is_maxfwd_present: value = 70
>  0(5877)
> #############################record_route###############################
>  0(5877) #######################After record_route########################3
>  0(5877)  ------         ------ bye ---call tear down ---
>   0(5877) parse_headers: flags=78
>  0(5877) ##################################Before
> loose_route##########################
>  0(5877) parse_headers: flags=200
>  0(5877) is_preloaded: No
>  0(5877) grep_sock_info - checking if host==us: 13==13 &&  [SERVER IP] ==
> [SERVER IP]
>  0(5877) grep_sock_info - checking if port 5060 matches port 5060
>  0(5877) after_strict: Next hop: 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on' is loose router
>  0(5877) parse_headers: flags=ffffffffffffffff
>  0(5877) rewrite_uri: Rewriting Request-URI with 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on'
>  0(5877) after_strict: The last route URI: 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on'
>  0(5877) ##################################into
> loose_route##########################
>  0(5877) DEBUG: has_totag: totag found
>  0(5877) DEBUG: has_totag: totag found
>  0(5877) check_via_address(PUBLIC IP of 111111, PRIVATE IP of 111111, 0)
>  0(5877) ##############################client_nat_test or search
> #########BYE##############################
>  0(5877)
> ###########################setbflag6#################################
>  0(5877)  ------         ------ bye - loose route -----
>   0(5877) DEBUG: t_newtran:  T on entrance=0xffffffff
>  0(5877) parse_headers: flags=ffffffffffffffff
>  0(5877) parse_headers: flags=78
>  0(5877) t_lookup_request: start searching: hash=16425, isACK=0
>  0(5877) DEBUG: RFC3261 transaction matching failed
>  0(5877) DEBUG: t_lookup_request: no transaction found
>  0(5877) DBG: trans=0xb612d7f8, callback type 1, id 0 entered
>  0(5877) DEBUG: mk_proxy: doing DNS lookup...
>  0(5877) check_via_address(PUBLIC IP of 111111, PRIVATE IP of 111111, 0)
>  0(5877) DBG:check_against_rule_list: using list dns
>  0(5877) DEBUG:tm:set_timer: relative timeout is 500000
>  0(5877) DEBUG: add_to_tail_of_timer[4]: 0xb612d944 (401700000)
>  0(5877) DEBUG:tm:set_timer: relative timeout is 20
>  0(5877) DEBUG: add_to_tail_of_timer[0]: 0xb612d960 (421)
>  0(5877) DEBUG:tm:t_relay_to: new transaction fwd'ed
>  0(5877)  -------------- cheked t reply ---
>   0(5877) DEBUG:tm:UNREF_UNSAFE: after is 0
>  0(5877) DEBUG:destroy_avp_list: destroying list (nil)
>  0(5877) receive_msg: cleaning up
>
>
> ++ From the parsing of BYE request , I found evenif I am doing loose route
> in cfg , It is doing strict route.
>
> Has anyone faced this issue before? I would appreciate if anyone can help
> me to solve this issue.
> rest seems fine to me
>
> Thanks in advance.
>
>
> --
> Regards,
> Krunal Patel



On Mon, May 26, 2008 at 12:15 PM, Krunal Patel <krunal.patel at ecosmob.com>
wrote:

> Hi,
>
> ++ I have registered 3 UACs to the same openser server which are behind
> NAT.
>      UAC 1 -- 111111
>      UAC 2 -- 222222
>      UAC 3 -- 333333
>
> ++ So in location table , I am getting :
>
>
> ------------------------------------------------+-----------------------+--------------------------
>                          Contact                                |
> Received          |
>
> ------------------------------------------------+-----------------------+--------------------------
>          111111@<private-IP>:5060                |  sip:public-IP : 5060|
>          222222@<private-IP>:5060                |  sip:public-IP : 5060|
>          333333@<private-IP>:5060                |  sip:public-IP : 5060|
>
> ++ I have set user preferences :
>
>
>
> +------+------------------+-------------------------+-------------+------+------------------------------------------------------+
> | uuid | username        | domain                       | attribute   |
> type | value                                                               |
>
> +------+------------------+-------------------------+-------------+------+------------------------------------------------------+
> |         | 222222              | domainname.com     | fwdbusy     |    0
> | fwdbusy:sip:333333 at domainname.com<fwdbusy%3Asip%3A333333 at domainname.com>
> |         | 222222              | domainname.com     | noanscfwd |    0 |
> noanscfwd:sip:333333 at domainname.com<noanscfwd%3Asip%3A333333 at domainname.com>
>
> +------+------------------+-------------------------+--------------+------+------------------------------------------------------+
>
> ++ I am using mediaproxy for audio signaling.
>
> ++ Now I am dialing 222222 using 111111 & keeps 222222 ringing until it
> stops automatically. So call is being forwarded to 333333.
>
>      111111 ---------------> 222222---------------> 333333
>
> ++ I pick up the call . So 111111 & 333333 is connected.
>
> ++ Now I hangup 333333 , so it sends BYE request to 111111.
>
> + Now the problem is 111111 do not accept the BYE request. So it stays
> connected. & the BYE request keeps looping infinitly in openser.
>
> Here is the BYE request :
>
> Message Body: BYE sip:111111@<server-IP>:5060 SIP/2.0
> Via: SIP/2.0/UDP <111111's Private IP>:5060;branch=z9hG4bK-ed33673a;rport
> From: <sip:222222 at domainname.com <sip%3A222222 at domainname.com>
> >;tag=632a4773b79ebfa8i1
> To: Anonymous <sip:111111 at domainname.com <sip%3A111111 at domainname.com>
> >;tag=26190b20d13c8197o0
> Call-ID: 4d753c94-f366deb3 at localhost
> CSeq: 101 BYE
> Max-Forwards: 70
> Route: <sip:[SERVER'sIP]:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on>,
> <sip:[SERVER's IP]:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on>
> User-Agent: Linksys/PAP2T-3.1.15(LS)
> Content-Length: 0
>
>
>  0(5877) DEBUG:maxfwd:is_maxfwd_present: value = 70
>  0(5877)
> #############################record_route###############################
>  0(5877) #######################After record_route########################3
>  0(5877)  ------         ------ bye ---call tear down ---
>   0(5877) parse_headers: flags=78
>  0(5877) ##################################Before
> loose_route##########################
>  0(5877) parse_headers: flags=200
>  0(5877) is_preloaded: No
>  0(5877) grep_sock_info - checking if host==us: 13==13 &&  [SERVER IP] ==
> [SERVER IP]
>  0(5877) grep_sock_info - checking if port 5060 matches port 5060
>  0(5877) after_strict: Next hop: 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on' is loose router
>  0(5877) parse_headers: flags=ffffffffffffffff
>  0(5877) rewrite_uri: Rewriting Request-URI with 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on'
>  0(5877) after_strict: The last route URI: 'sip:SERVER
> IP:5060;nat=yes;ftag=26190b20d13c8197o0;lr=on'
>  0(5877) ##################################into
> loose_route##########################
>  0(5877) DEBUG: has_totag: totag found
>  0(5877) DEBUG: has_totag: totag found
>  0(5877) check_via_address(PUBLIC IP of 111111, PRIVATE IP of 111111, 0)
>  0(5877) ##############################client_nat_test or search
> #########BYE##############################
>  0(5877)
> ###########################setbflag6#################################
>  0(5877)  ------         ------ bye - loose route -----
>   0(5877) DEBUG: t_newtran:  T on entrance=0xffffffff
>  0(5877) parse_headers: flags=ffffffffffffffff
>  0(5877) parse_headers: flags=78
>  0(5877) t_lookup_request: start searching: hash=16425, isACK=0
>  0(5877) DEBUG: RFC3261 transaction matching failed
>  0(5877) DEBUG: t_lookup_request: no transaction found
>  0(5877) DBG: trans=0xb612d7f8, callback type 1, id 0 entered
>  0(5877) DEBUG: mk_proxy: doing DNS lookup...
>  0(5877) check_via_address(PUBLIC IP of 111111, PRIVATE IP of 111111, 0)
>  0(5877) DBG:check_against_rule_list: using list dns
>  0(5877) DEBUG:tm:set_timer: relative timeout is 500000
>  0(5877) DEBUG: add_to_tail_of_timer[4]: 0xb612d944 (401700000)
>  0(5877) DEBUG:tm:set_timer: relative timeout is 20
>  0(5877) DEBUG: add_to_tail_of_timer[0]: 0xb612d960 (421)
>  0(5877) DEBUG:tm:t_relay_to: new transaction fwd'ed
>  0(5877)  -------------- cheked t reply ---
>   0(5877) DEBUG:tm:UNREF_UNSAFE: after is 0
>  0(5877) DEBUG:destroy_avp_list: destroying list (nil)
>  0(5877) receive_msg: cleaning up
>
>
> ++ From the parsing of BYE request , I found evenif I am doing loose route
> in cfg , It is doing strict route.
>
> Can you please help me to solve this.
>
> Thanks in advance.
>
>
> --
> Regards,
> Krunal Patel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20080526/5a70de5b/attachment.htm>


More information about the sr-users mailing list