<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hi there,</div><div><br></div><div>I am in the process of writing a custom backend with PowerDNS 4.1.5 and I have a question on the expected response for SOA records.</div><div><br></div><div>As an example, when I dig a random subdomain at <a href="http://google.com">google.com</a> I get the following result:</div><div><br></div><div><span style="font-family:monospace,monospace">root@linux:~$ dig SOA <a href="http://asd.dsa.www.www.google.com">asd.dsa.www.www.google.com</a> @<a href="http://ns1.google.com">ns1.google.com</a><br><br>; <<>> DiG 9.10.3-P4-Ubuntu <<>> SOA <a href="http://asd.dsa.www.www.google.com">asd.dsa.www.www.google.com</a><br>;; global options: +cmd<br>;; Got answer:<br>;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 9217<br>;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1<br><br>;; OPT PSEUDOSECTION:<br>; EDNS: version: 0, flags:; udp: 512<br>;; QUESTION SECTION:<br>;<a href="http://asd.dsa.www.www.google.com">asd.dsa.www.www.google.com</a>.    IN      SOA<br><br>;; AUTHORITY SECTION:<br><b><span style="color:rgb(255,0,0)"><a href="http://google.com">google.com</a>.             59      IN      SOA     <a href="http://ns1.google.com">ns1.google.com</a>. <a href="http://dns-admin.google.com">dns-admin.google.com</a>. 235282735 900 900 1800 60</span></b><br><br>;; Query time: 197 msec<br>;; SERVER: 216.239.32.10#53(216.239.32.10)<br>;; WHEN: Sat Feb 23 15:32:17 DST 2019<br>;; MSG SIZE  rcvd: 105</span><br></div><div><br></div><div>The result returns the root of the zone being <a href="http://google.com">google.com</a> and not the random subdomain that I have queried. I have written my backend to return the root of the zone similar to above, however in my dig results, the SOA record is returning the queried record in full. See below:</div><div><br></div><div>JSON request that my backend processes:</div><div><br></div><div><span style="font-family:monospace,monospace">{"method": "lookup", "parameters": {"local": "0.0.0.0", "qname": "<a href="http://sdfsdf.sdf.kjhkjh.domain.net">sdfsdf.sdf.kjhkjh.domain.net</a>.", "qtype": "SOA", "real-remote": "<a href="http://0.0.0.0/0">0.0.0.0/0</a>", "remote": "0.0.0.0", "zone-id": -1}}</span><br></div><div><br></div><div>JSON response that my backend returns:</div><div><br></div><div><span style="font-family:monospace,monospace">{"result":[{"qtype":"SOA","qname":"<a href="http://domain.net">domain.net</a>.","content":"<a href="http://dns1.domain.net">dns1.domain.net</a>. <a href="http://dnsadmin.domain.net">dnsadmin.domain.net</a>. 2019021901 10 10 10 10","ttl":10}]}</span><br></div><div><br></div><div>dig results for a zone within my custom backend:</div><div><span style="font-family:monospace,monospace"><br></span></div><div><span style="font-family:monospace,monospace">root@linux:~$ dig SOA @(ns IP address) <a href="http://sdfsdf.sdf.kjhkjh.domain.net">sdfsdf.sdf.kjhkjh.domain.net</a>.<br><br>; <<>> DiG 9.10.3-P4-Ubuntu <<>> SOA @<a href="http://ns1.domain.net">ns1.domain.net</a> <a href="http://sdfsdf.sdf.kjhkjh.cpjonestest.net">sdfsdf.sdf.kjhkjh.cpjonestest.net</a>.<br>; (1 server found)<br>;; global options: +cmd<br>;; Got answer:<br>;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 984<br>;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1<br>;; WARNING: recursion requested but not available<br><br>;; OPT PSEUDOSECTION:<br>; EDNS: version: 0, flags:; udp: 1680<br>;; QUESTION SECTION:<br>;<a href="http://sdfsdf.sdf.kjhkjh.domain.net">sdfsdf.sdf.kjhkjh.domain.net</a>. IN  SOA<br><br>;; ANSWER SECTION:<br><span style="color:rgb(255,0,0)"><b><a href="http://sdfsdf.sdf.kjhkjh.domain.net">sdfsdf.sdf.kjhkjh.domain.net</a>. 10 IN SOA    <a href="http://dns1.domain.net">dns1.domain.net</a>. <a href="http://dnsadmin.domain.net">dnsadmin.domain.net</a>. 2019021901 10 10 10 10</b></span><br><br>;; Query time: 63 msec<br>;; SERVER: (ip address)#53(ip address)<br>;; WHEN: Sat Feb 23 15:45:20 DST 2019<br>;; MSG SIZE  rcvd: 132</span><br></div><div><br></div><div>Given the JSON response only has the root of the zone name returned, I would have expected the dig result to be the root of the zone. Is this something that is expected and/or valid?</div><div><br></div><div>Regards,</div><div>Chris.<br></div></div></div></div></div></div></div>