<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoNoSpacing, li.MsoNoSpacing, div.MsoNoSpacing
        {mso-style-priority:1;
        margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Subject: DNSMASQ failing to return SRV records with loss of communication to a single DNS server<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Issue:  We have SIP SRV records for a domain which can be provided by two DNS servers in our environment.  During testing we have noticed that if one of the DNS servers is un-reachable, the request for the SRV records via dnsmasq times
 out.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNoSpacing">This only happens when the query is originated from outside the box where dnsmasq is running.  IE – if we issue the SRV query from the dnsmasq server, the SRV records are returned.  If we issue the request from a client VM which is set
 to resolve queries against our dnsmasq host – the request times out.<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">Note:  some of the information below has been changed/replaced with xxx,  such as IP addresses and domain names for security reasons.<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">Dnsmasq.conf has the following entries – indicating to forward requests for labdomain.net to 10.xx.xx.12 and 10.xx.xx.20.   <o:p></o:p></p>
<p class="MsoNoSpacing">server=/labdomain.net/10.xx.xx.12<o:p></o:p></p>
<p class="MsoNoSpacing">server=/labdomain.net/10.xx.xx.20<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">VM making SRV queries is 10.xx.xx.99<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing"><b>When we query for an SRV record with 10.xx.xx.5 being our DNSMASQ server, and have commented out the non-reachable DNS server: 10.xx.xx.12 – we receive a response to the SRV query.<o:p></o:p></b></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">#server=/labdomain.net/10.xx.xx.12<o:p></o:p></p>
<p class="MsoNoSpacing">server=/labdomain.net/10.xx.xx.20<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">[labuser@f5-test ~]$ dig srv _sip._udp.scscf.sprout.lp.labdomain.net @10.xx.xx.5<o:p></o:p></p>
<p class="MsoNoSpacing">;; Truncated, retrying in TCP mode.<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.5 <<>> srv _sip._udp.scscf.sprout.lp.labdomain.net @10.xx.xx.5<o:p></o:p></p>
<p class="MsoNoSpacing">;; global options: +cmd<o:p></o:p></p>
<p class="MsoNoSpacing">;; Got answer:<o:p></o:p></p>
<p class="MsoNoSpacing">;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14584<o:p></o:p></p>
<p class="MsoNoSpacing">;; flags: qr aa; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 5<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">;; QUESTION SECTION:<o:p></o:p></p>
<p class="MsoNoSpacing">;_sip._udp.scscf.sprout.lp.labdomain.net. IN SRV<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">;; ANSWER SECTION:<o:p></o:p></p>
<p class="MsoNoSpacing">_sip._udp.scscf.sprout.lp.labdomain.net. 15 IN SRV 10 50 5054 ovpklp-viscscf-spn-05.labdomain.net.<o:p></o:p></p>
<p class="MsoNoSpacing">_sip._udp.scscf.sprout.lp.labdomain.net. 15 IN SRV 10 50 5054 ovpklp-viscscf-spn-01.labdomain.net.<o:p></o:p></p>
<p class="MsoNoSpacing">_sip._udp.scscf.sprout.lp.labdomain.net. 15 IN SRV 10 50 5054 ovpklp-viscscf-spn-02.labdomain.net.<o:p></o:p></p>
<p class="MsoNoSpacing">_sip._udp.scscf.sprout.lp.labdomain.net. 15 IN SRV 10 50 5054 ovpklp-viscscf-spn-03.labdomain.net.<o:p></o:p></p>
<p class="MsoNoSpacing">_sip._udp.scscf.sprout.lp.labdomain.net. 15 IN SRV 10 50 5054 ovpklp-viscscf-spn-04.labdomain.net.<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">;; ADDITIONAL SECTION:<o:p></o:p></p>
<p class="MsoNoSpacing">ovpklp-viscscf-spn-05.labdomain.net. 43200 IN A 10.xx.xx.18<o:p></o:p></p>
<p class="MsoNoSpacing">ovpklp-viscscf-spn-01.labdomain.net. 43200 IN A 10.xx.xx.14<o:p></o:p></p>
<p class="MsoNoSpacing">ovpklp-viscscf-spn-02.labdomain.net. 43200 IN A 10.xx.xx.15<o:p></o:p></p>
<p class="MsoNoSpacing">ovpklp-viscscf-spn-03.labdomain.net. 43200 IN A 10.xx.xx.16<o:p></o:p></p>
<p class="MsoNoSpacing">ovpklp-viscscf-spn-04.labdomain.net. 43200 IN A 10.xx.xx.17<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">;; Query time: 2 msec<o:p></o:p></p>
<p class="MsoNoSpacing">;; SERVER: 10.xx.xx.5#53(10.xx.xx.5)<o:p></o:p></p>
<p class="MsoNoSpacing">;; WHEN: Mon Aug 13 16:34:40 2018<o:p></o:p></p>
<p class="MsoNoSpacing">;; MSG SIZE  rcvd: 528<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNoSpacing"><b>When we query for an SRV record with 10.xx.xx.5 being our DNSMASQ server, and have both the good and non-reachable DNS server in play – we receive a timeout to the SRV query.  In this case – 10.xx.xx.20 is fully capable of responding
 to the SRV query.<o:p></o:p></b></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNoSpacing">server=/labdomain.net/10.xx.xx.12        <span style="font-family:Wingdings">
ß</span> not reachable<o:p></o:p></p>
<p class="MsoNoSpacing">server=/labdomain.net/10.xx.xx.20<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">[labuser@f5-test ~]$ dig srv _sip._udp.scscf.sprout.lp.labdomain.net @10.xx.xx.5<o:p></o:p></p>
<p class="MsoNoSpacing">;; Truncated, retrying in TCP mode.<o:p></o:p></p>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing">; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.5 <<>> srv _sip._udp.scscf.sprout.lp.labdomain.net @10.xx.xx.5<o:p></o:p></p>
<p class="MsoNoSpacing">;; global options: +cmd<o:p></o:p></p>
<p class="MsoNoSpacing">;; connection timed out; no servers could be reached<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Dnsmasq logging shows:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Aug 14 16:22:14 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5161]: query[SRV] _sip._udp.scscf.sprout.lp.labdomain.net from 10.xx.xx.99<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:14 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5161]: forwarded _sip._udp.scscf.sprout.lp.labdomain.net to 10.xx.xx.12<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:14 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5161]: forwarded _sip._udp.scscf.sprout.lp.labdomain.net to 10.xx.xx.20<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:14 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5161]: nameserver 10.xx.xx.20 refused to do a recursive query<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:14 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5172]: query[SRV] _sip._udp.scscf.sprout.lp.labdomain.net from 10.xx.xx.99<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:24 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5173]: query[SRV] _sip._udp.scscf.sprout.lp.labdomain.net from 10.xx.xx.99<o:p></o:p></p>
<p class="MsoNormal">Aug 14 16:22:34 vsmslp-az2-dev-dnsmasq1-mgt dnsmasq[5174]: query[SRV] _sip._udp.scscf.sprout.lp.labdomain.net from 10.xx.xx.99<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I could use some ideas on how to further troubleshoot this issue.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-right:5.8pt"><b><span style="font-family:"Arial",sans-serif;color:black">Andy Warner</span></b><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-right:5.8pt"><span style="font-size:9.0pt;font-family:"Arial",sans-serif;color:black">Telecom Design Engineer</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-right:5.8pt"><span style="font-size:9.0pt;font-family:"Arial",sans-serif;color:black">O: 406-752-3330 / M: 913-972-7521</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-right:5.8pt"><span style="font-size:9.0pt;font-family:"Arial",sans-serif;color:black">andrew.c.warner@sprint.com</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><img width="335" height="60" id="Picture_x0020_1" src="cid:image001.png@01D433B6.EDBA9700" alt="cid:408000_086801428601138001@pvmxe13g01"><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>