[Users] loose_route() (misbehaviour?)

samuel samu60 at gmail.com
Wed Jan 25 16:58:23 CET 2006


Problem "solved".

I had added Alice as trusted for oser1 and using directly the IP of
oser2 to call Bob (no DNS yet :( ). Using the onsip config files, the
forwarding section within is_uri_host_local does not contain any line
for solving NAT of Alice's UA and this info was lost in the way to
oser2....who added oser1's IP as the contact when using
fix_nated_contact.

So,..for all those people using onsip config file be aware of this
fact if you want to forward to other proxies....

Sam.

2006/1/25, samuel <samu60 at gmail.com>:
> I think it is a configuration "problem" as usual :P
> I guess some info about nating is lost when forwarding from one ser to
> the other....I have to dig into logs....maybe I find out the problem
> soon.
>
> Don't worry about your openser instances...
>
> Samuel.
>
>
> 2006/1/25, Klaus Darilion <klaus.mailinglists at pernau.at>:
> > samuel wrote:
> > > Hi all,
> > >
> > > Might be related to the mail I just sent about the username in the
> > > record-route or to another problem but the thing is that I can not
> > > close the session from the callee side...i'll try to explain:
> > >
> > > There are two users registered to two different openser instances. In
> > > the session initiation, the record route headers contain the usernames
> > > of both users and are therefore stored in the end points.
> > > When the caller sends the BYE, the callee's openser receives the BYE
> > > and rewrites the URI with the record-route (shouldn't it consider the
> > > request for itself and check the Req-URI instead??).
> > >
> > > NExt is the diagram and some more info...
> > >
> > >       Alice   oser1   oser2    Bob
> > >        |        |       |       |
> > >        |--F1---> |--F2--->|--F3-->|
> > >        |        |       |       |
> > >        |        |       |       |
> > >        |        |       |       |
> > >        |--F4-->  |--F5-->|--F6--> |
> > >        |        |       |       |
> > >        |        |       |       |
> > >        |        |       |       |
> > >        |        |<--F8---|<--F9--|
> >
> > guess F9 should be F7
> >
> > >
> > > F1: INVITE Bob at oser2
> > >
> > > F2: INVITE Bob at oser2
> > >     Record-Route:<sip:Bob at oser1;nat=yes;lr=on>
> > >
> > > F3: INVITE Bob at bob_contact_ip
> > >     Record-Route:<sip:Bob at oser2;nat=yes;lr=on>
> > >     Record-Route:<sip:Bob at oser1;nat=yes;lr=on>
> > >
> > >
> > > OK,ACK not shown..
> > >
> > > F4: BYE Bob at nat_fixed_ip
> > >     Route:<sip:Bob at oser1;nat=yes;lr=on>,<sip:Bob at oser2;nat=yes;lr=on>
> > >
> > > F5: BYE Bob at nat_fixed_ip
> > >     Route:<sip:Bob at oser1;nat=yes;lr=on>
> >
> > This should be
> >       Route:<sip:Bob at oser2;nat=yes;lr=on>
> >
> > >
> > > F6: BYE Bob at bob_fixed_ip
> > > Everything ok, session closed.
> > >
> > > But, and here comes the problem:
> > > F7: BYE Alice at alice_fixed_ip
> > >     Route:<sip:Bob at oser2;nat=yes;lr=on>,<sip:Bob at oser1;nat=yes;lr=on>
> >
> > strange, I never had any problems. Can you dump the full messages F7 and
> > F8 and the looping requests?
> >
> > regards
> > klaus
> >
> >
> > > When this message arrives to ser1, it sees the route header and, make
> > > a strict routing process and rewrites the header in the Req-URI to
> > > Bob at ser1.
> > > oser1 resends itself the message, and when it receives it again looks
> > > for use Bob in the local bindings which obviously does not exists (Bob
> > > is in oser2).
> > > Log:
> > >
> > > Jan 25 13:17:07 localhost openser[25501]: is_preloaded: No
> > > Jan 25 13:17:07 localhost openser[25501]: grep_sock_info - checking if
> > > host==us: 13==13 &&  [ip_oser1]== [ip_oser1]
> > > Jan 25 13:17:07 localhost openser[25501]: grep_sock_info - checking if
> > > port 5060 matches port 5060
> > > Jan 25 13:17:07 localhost openser[25501]: after_strict: Next hop:
> > > 'sip:Bob at oser1_ip;nat=yes;lr=on' is loose router
> > > Jan 25 13:17:07 localhost openser[25501]: parse_headers: flags=ffffffffffffffff
> > > Jan 25 13:17:07 localhost openser[25501]: DEBUG: get_hdr_body : content_length=0
> > > Jan 25 13:17:07 localhost openser[25501]: found end of header
> > > Jan 25 13:17:07 localhost openser[25501]: rewrite_uri: Rewriting
> > > Request-URI with 'sip:Bob at oser1_ip:5060;nat=yes;lr=o
> > > n'
> > > Jan 25 13:17:07 localhost openser[25501]: after_strict: The last route
> > > URI: 'sip:Bob at oser1_ip:5060;nat=yes;lr=on'
> > > Jan 25 13:17:07 localhost openser[25501]: DEBUG: has_totag: totag found
> > > Jan 25 13:17:07 localhost openser[25501]: DEBUG: t_newtran: msg id=12
> > > , global msg id=11 , T on entrance=0xffffffff
> > > Jan 25 13:17:07 localhost openser[25501]: parse_headers: flags=ffffffffffffffff
> > > Jan 25 13:17:07 localhost openser[25501]: parse_headers: flags=78
> > > Jan 25 13:17:07 localhost openser[25501]: t_lookup_request: start
> > > searching: hash=3891, isACK=0
> > > Jan 25 13:17:07 localhost openser[25501]: DEBUG: RFC3261 transaction
> > > matching failed
> > > Jan 25 13:17:07 localhost openser[25501]: DEBUG: t_lookup_request: no
> > > transaction found
> > >
> > >
> > > Thanks a lot!!!
> > >
> > > Sam.
> > >
> > > _______________________________________________
> > > Users mailing list
> > > Users at openser.org
> > > http://openser.org/cgi-bin/mailman/listinfo/users
> > >
> > >
> >
> >
>




More information about the sr-users mailing list