[Users] Route-header DNS lookup?
staffan.kerker at saabgroup.com
Thu Jul 6 14:37:01 CEST 2006
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: ERROR: mk_proxy: could not resolve hostname: "iptel1.ipatl.se"
/usr/local/sbin/openser: 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: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
Contact: <sip:2652 at 172.28.248.52:2051;line=cp4a7ljd>
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 , 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
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:
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?
Saab Communications, Växjö
p. +46 470 42185
c. +46 705 391365
m. staffan.kerker at saabgroup.com
More information about the Users