[asterisk-bugs] [JIRA] (ASTERISK-25010) DNS Tests: Failover order
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Fri Apr 24 11:36:33 CDT 2015
Matt Jordan created ASTERISK-25010:
--------------------------------------
Summary: DNS Tests: Failover order
Key: ASTERISK-25010
URL: https://issues.asterisk.org/jira/browse/ASTERISK-25010
Project: Asterisk
Issue Type: Improvement
Security Level: None
Reporter: Matt Jordan
h2. Failover order
*Goal:* To ensure that when returned SRV results fail, that the expected order for failing over is respected.
h3. Procedure:
# Set up the following DNS records
{noformat}
fast.test.internal IN A 127.0.0.1
slow.test.internal IN A 127.0.0.1
;; Priority Weight Port Target
_sip._udp.test.internal IN SRV 0 3 5061 fast.test.internal.
IN SRV 0 1 5062 slow.test.internal.
IN SRV 1 100 5063 backup.test.internal.
{noformat}
# Set up two SIPp scenarios
** fast.xml runs at 127.0.0.1, port 5060. It expects an incoming INVITE and responds to the INVITE with a 503 response
** slow.xml runs at 127.0.0.1, port 5061. It expects an incoming INVITE and does not respond to it
# In Asterisk, disable NAPTR lookups. Enable only UDP as a transport.
# Place an outbound call to sip:test.internal.
# Ensure that an SRV lookup of _sip._udp.test.internal is performed.
# Ensure that this results in an A lookup of either fast.test.internal or slow.test.internal. Since SRV weighting has a random factor to it, it is impossible to guarantee which of the two will be chosen first.
# Ensure a SIP INVITE is sent to the chosen target
# Ensure that upon failure of the call to the chosen target, that the remaining of fast or slow is chosen as the next target.
# Ensure a SIP INVITE is sent to the new target. Ensure that the Via header (particularly the branch) is different from the previous outbound INVITE.
# Ensure that upon failure of the second call, that backup is chosen as the next target.
# When the A lookup of backup.test.internal returns NXDOMAIN, the test should conclude and not attempt any further lookups.
h3. Notes
RFC 3263 section 4.2 states:
{quote}
"If no SRV records were found, the client performs an A or AAAA record lookup of the domain name."
{quote}
My interpretation of this is that since we did find SRV records, we should not fail over to A/AAAA record lookups of test.internal. However, this may be an overly strict interpretation.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list