[asterisk-users] SIP response 482 "Loop Detected"

--[ UxBoD ]-- uxbod at splatnix.net
Tue Jul 6 13:08:58 CDT 2010


----- Original Message -----
> ----- Original Message -----
> > On Mon, Jul 5, 2010 at 4:20 AM, --[ UxBoD ]-- <uxbod at splatnix.net>
> > wrote:
> > >
> > > ----- Original Message -----
> > >> Hi,
> > >>
> > >> We have tried upgrading from 1.6.1.14 to 1.6.2.9 and have found
> > >> that
> > >> we are unable to URI dial our clients. We run a multi-tenant
> > >> server
> > >> and have set sip.conf to forward calls to a public context based
> > >> on
> > >> incoming domain name. This was all working before but not it is
> > >> complaining of a loop back as the source and target server are
> > >> the
> > >> same.
> > >>
> > >> Any ideas on how to overcome this problem as we dial our clients
> > >> based
> > >> on their email address.
> > >
> > > Grabbing a SIP debug I see:
> > >
> > > <--- Transmitting (no NAT) to 10.172.120.5:5060 --->
> > > SIP/2.0 100 Trying
> > > Via: SIP/2.0/UDP
> > > 10.172.120.5:5060;branch=z9hG4bK-dadp6piblhin;received=10.172.120.5;rport=5060
> > > From: "User A" <sip:usera at 172.30.14.8>;tag=c3zqlidz1u
> > > To: <sip:userb at seconddomain.com>
> > > Call-ID: 66b3314cc6d1-jxu0nhluv4zt
> > > CSeq: 2 INVITE
> > > Server: secret
> > > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE,
> > > NOTIFY,
> > > INFO
> > > Supported: replaces, timer
> > > Require: timer
> > > Session-Expires: 1800;refresher=uas
> > > Contact: <sip:userb at 172.30.14.8>
> > > Content-Length: 0
> > >
> > > And am guessing that as the source from IP matches the Contact:
> > > address Asterisk sees that as a loop ?
> >
> > I don't know these things, but you should probably post more of a
> > SIP
> > trace. Maybe turn on full sip debug to a file for long enough to see
> > what the SIP conversation looks like that asterisk 1.6.2.9 is having
> > with itself.
> >
> 
> From what I have read "hairpin" calls are not supported by asterisk;
> so am guessing something has been fixed in the 1.6.2.X branch that
> should have not worked in 1.6.1.X anyway :) While I continue the
> research have implemented using a workaround via the AstDB and the
> following changes to the uri-dial plan:
> 
> exten =>
> _[a-zA-Z0-9].,n,GotoIf(${DB_EXISTS(URI/${EXTEN}@${SIPDOMAIN})}?inturi:exturi)
> exten =>
> _[a-zA-Z0-9].,n(inturi),Goto(${DB(URI/${EXTEN}@${SIPDOMAIN})})
> exten => _[a-zA-Z0-9].,n(exturi),Macro(uridial,${EXTEN}@${SIPDOMAIN})
> 
> This is a bit of pain as we have to make sure we update the DB when a
> new inbound URI is added; though it works and means we can stick with
> the 1.6.2.X branch.
> 
> Would be interested to hear from a dev though as to whether they think
> it should work as we originally had it configured ?

Do you think this should be raised as a issue in bugtraq or at least brought up on the asterisk-dev mailing list ?
-- 
Thanks, Phil



More information about the asterisk-users mailing list