[Users] Route-header DNS lookup?

Simon Morvan garphy at gmail.com
Mon Jul 31 10:28:32 CEST 2006


did that

2006/7/31, Klaus Darilion <klaus.mailinglists at pernau.at>:
> Hi Simon!
>
> Please make a unified diff (cvs diff -u) and post it at the bugtracker
> on sourceforge:
> http://sourceforge.net/tracker/?group_id=139143&atid=743022
>
> This way it can't get lost under thousands of emails.
>
> regards
> klaus
>
> Simon Morvan wrote:
> > modified file : modules/rr/loose.c
> >
> > 2006/7/28, Simon Morvan <garphy at gmail.com>:
> >> after a quick check, the answer is : no
> >>
> >> this is a quick hack i've made as a workaround. feedback welcome :)
> >>
> >>  781,783c781,803
> >>  <               if (set_dst_uri(_m, uri) < 0) {
> >>  <                       LOG(L_ERR, "after_loose: Error while setting
> >> dst_uri\n");
> >>  <                       return RR_ERROR;
> >>  ---
> >>  >               if( puri.maddr.s != NULL ){
> >>  >                       str builturistr;
> >>  >                       char builturi[150];
> >>  >
> >>  >                       memcpy( builturi, "sip:", 4 );
> >>  >                       memcpy( builturi+4, puri.maddr.s+6,
> >> puri.maddr.len-6 );
> >>  >                       builturi[4+puri.maddr.len-6] ='\0';
> >>  >
> >>  >                       LOG( L_ERR, "MaddrURI is %p\n", builturi );
> >>  >
> >>  >                       builturistr.s = builturi;
> >>  >                       builturistr.len = 4+puri.maddr.len-6;
> >>  >
> >>  >                       if (set_dst_uri(_m, &builturistr) < 0) {
> >>  >                               LOG(L_ERR, "after_loose: Error while
> >> setting dst_uri\n");
> >>  >                               return RR_ERROR;
> >>  >                       }
> >>  >
> >>  >               }else{
> >>  >                       if (set_dst_uri(_m, uri) < 0) {
> >>  >                               LOG(L_ERR, "after_loose: Error while
> >> setting dst_uri\n");
> >>  >                               return RR_ERROR;
> >>  >                       }
> >>
> >>
> >> 2006/7/28, Simon Morvan <garphy at gmail.com>:
> >> > Is this issue solved in Openser 1.1.0 ?
> >> >
> >> > 2006/7/7, Simon Morvan <garphy at gmail.com>:
> >> > > As Daniel said on the ml thread :
> >> > > > it makes sense, we will analyze the implications and include it
> >> on the
> >> > > > to-do list.
> >> > > >
> >> > > > Cheers,
> >> > > > Daniel
> >> > > Has it been included in the developpement branch yet ?
> >> > >
> >> > > --
> >> > > Simon.
> >> > >
> >> > > 2006/7/7, Klaus Darilion <klaus.mailinglists at pernau.at>:
> >> > > > I'm not sure about the maddr parameter. doesn't it mean that the
> >> request
> >> > > > should be forwarded to this IP regardsless of the domain? If
> >> yes, the
> >> > > > DNS lookup can be skipped.
> >> > > >
> >> > > > regards
> >> > > > klaus
> >> > > >
> >> > > > Kerker Staffan wrote:
> >> > > > > hi
> >> > > > > i recently bounced into this problem, and i'm not sure here.
> >> > > > > i'm running the openser-devel, with the cacheless db_mode=3.
> >> (works fine btw)
> >> > > > >
> >> > > > > the record-route header received by the proxy on the other
> >> side (SNOM4S), inserts
> >> > > > > the domain name (iptel1.ipatl.se) and not the hostname
> >> (sip.iptel1.ipatl.se) in the
> >> > > > > record-route header, and uses the maddr=<ip_of_server> with
> >> the actual server IP address.
> >> > > > >
> >> > > > > now, when my client (behind the OpenSER) replies with an ACK
> >> to the incomming OK,
> >> > > > > it uses the Route-header recieved in the RR-header, and sends
> >> the ACK to OpenSER. i
> >> > > > > then get the following errors in OpenSER.
> >> > > > >
> >> > > > > ---
> >> > > > > /usr/local/sbin/openser[3583]: ERROR: mk_proxy: could not
> >> resolve hostname: "iptel1.ipatl.se"
> >> > > > > /usr/local/sbin/openser[3583]: ERROR: uri2proxy: bad host name
> >> in URI
> >> <sip:4ffec4ce755c218a72228c6643cb3b6b at iptel1.ipatl.se:5060;maddr=172.28.248.66;transport=udp;lr>
> >>
> >> > > > > ---
> >> > > > >
> >> > > > > the ACK i sent look like this:
> >> > > > >
> >> > > > > ---
> >> > > > > Request-Line: ACK sip:2307 at iptel1.ipatl.se;gruu=6fg9n6dl SIP/2.0
> >> > > > >       Via: SIP/2.0/UDP
> >> 172.28.248.52:2051;branch=z9hG4bK-d96b1fvapkyn;rport
> >> > > > >       Route: <sip:172.28.248.10;lr=on;ftag=li9buf1i4p>
> >> > > > >       Route:
> >> <sip:4ffec4ce755c218a72228c6643cb3b6b at iptel1.ipatl.se:5060;maddr=
> >> 172.28.248.66;transport=udp;lr>
> >> > > > >       From: "Snom 2652" <sip:2652 at ipatl.se>;tag=li9buf1i4p
> >> > > > >       To: <sip:2307 at ipatl.se>;tag=hvseiz7kgb
> >> > > > >       Call-ID: 3c269d83900b-xj3ild14y880 at snom360
> >> > > > >       CSeq: 1 ACK
> >> > > > >       Max-Forwards: 70
> >> > > > >       Contact: <sip:2652 at 172.28.248.52:2051;line=cp4a7ljd>
> >> > > > >       Content-Length: 0
> >> > > > > ---
> >> > > > >
> >> > > > > as far as i understand, according the rfc 3263, the
> >> route-header may contain domain name that
> >> > > > > has to be resolved using SRV.
> >> > > > >
> >> > > > > ---
> >> > > > > "6 Constructing SIP URIs
> >> > > > >
> >> > > > >    In many cases, an element needs to construct a SIP URI for
> >> inclusion
> >> > > > >    in a Contact header in a REGISTER, or in a Record-Route
> >> header in an
> >> > > > >    INVITE.  According to RFC 3261 [1], these URIs have to have
> >> the
> >> > > > >    property that they resolve to the specific element that
> >> inserted
> >> > > > >    them.  However, if they are constructed with just an IP
> >> address, for
> >> > > > >    example:
> >> > > > >
> >> > > > >    sip:1.2.3.4
> >> > > > >
> >> > > > >    then should the element fail, there is no way to route the
> >> request or
> >> > > > >    response through a backup.
> >> > > > >
> >> > > > >    SRV provides a way to fix this.  Instead of using an IP
> >> address, a
> >> > > > >    domain name that resolves to an SRV record can be used:
> >> > > > >
> >> > > > >    sip:server23.provider.com"
> >> > > > > ---
> >> > > > >
> >> > > > > now, OpenSER only asks DNS for an A record of the name
> >> recieved in the route header,
> >> > > > > and since that's a domain name, it's unresolvable, and so the
> >> ACK is never sent.
> >> > > > >
> >> > > > > any hints or clues?
> >> > > > >
> >> > > > > best regards,
> >> > > > > /Staffan Kerker
> >> > > > >
> >> > > > >
> >> > > > > --
> >> > > > > Staffan Kerker
> >> > > > > Saab Communications, Växjö
> >> > > > > p. +46 470 42185
> >> > > > > c. +46 705 391365
> >> > > > > m. staffan.kerker at saabgroup.com
> >> > > > >
> >> > > > >
> >> > > > > _______________________________________________
> >> > > > > Users mailing list
> >> > > > > Users at openser.org
> >> > > > > http://openser.org/cgi-bin/mailman/listinfo/users
> >> > > >
> >> > > >
> >> > > > _______________________________________________
> >> > > > Users mailing list
> >> > > > Users at openser.org
> >> > > > http://openser.org/cgi-bin/mailman/listinfo/users
> >> > > >
> >> > >
> >> >
> >>
>
>




More information about the Users mailing list