[Users] SRV Lookups

Mikael Magnusson mikaelmagnusson at glocalnet.net
Thu Nov 24 12:02:36 CET 2005


Klaus Darilion wrote:
> Douglas Garstang wrote:
> 
>> All,
>>
>> I'm trying to get SRV lookups to work with OpenSER 1.0.0. I've
>> exhausted every avenue of documentation including newsgroups, various
>> forums etc.
>>
>> Using t_relay, OpenSER seems to be performing the correct DNS SRV
>> queries and obtaining a list of hosts to try. Below are the relevant
>> sections of my DNS zone file. We're  talking UDP, and based on the
>> priority and weights below, OpenSER should be basically doing a
>> round-robin approach, and it seems to be.
>>
>> The problem occurs when one of the hosts is not contactable. OpenSER
>> simply stops and does not try the next host in it's list. I would
>> have thought that for OpenSER to fully support SRV lookups, it should
>> try each until it is successful. After all, that's a large part of
>> the whole point of SRV records.
> 
> 
> (open)ser does not support SRV failover. It just looks for 
> _sip._protocol and uses the first found record. No failover if there is 
> a problem with the destination.
> 
>> Does the t_relay() function have logic within itself to keep trying
>> hosts until it gets a connection? What would be the definition a
> 
> 
> no
> 
>> failure that would make it move onto the next host be anyway? Network
>> failure certainly, but would a 'Not found' be considered a failure
>> that would cause it to move on? Would anything other than an ACK be a
>> failure?
> 
> 
> If you receive a SIP response, than there is no transport failure -> no 
> failover to other SRV hosts.
> 

The next SRV record should be tried if a 503 "Service Unavailable" SIP 
response message is received, according to RFC3263 section 4.3.

/Mikael




More information about the Users mailing list