Commit 1a4994ecf6 for bind
commit 1a4994ecf69bbbf34b32dddc9fae7a9e68350a4b
Author: Petr Špaček <pspacek@isc.org>
Date: Fri Sep 11 12:53:04 2026 +0000
Test nxdomain-redirect into catz member zone
Related: #6407
Assisted-by: Claude:claude-opus-5
diff --git a/bin/tests/system/cname_recursion/ns2/named.conf.j2 b/bin/tests/system/cname_recursion/ns2/named.conf.j2
index 2593ca6e15..bbc4e4b17f 100644
--- a/bin/tests/system/cname_recursion/ns2/named.conf.j2
+++ b/bin/tests/system/cname_recursion/ns2/named.conf.j2
@@ -20,6 +20,7 @@ options {
{% include_indented "_common/options.conf.j2" %}
dnssec-validation no;
minimal-responses no;
+ nxdomain-redirect "member";
allow-query { any; };
allow-new-zones yes;
catalog-zones {
diff --git a/bin/tests/system/cname_recursion/tests_cname_recursion.py b/bin/tests/system/cname_recursion/tests_cname_recursion.py
index 48b3a2e6d9..820650e46f 100644
--- a/bin/tests/system/cname_recursion/tests_cname_recursion.py
+++ b/bin/tests/system/cname_recursion/tests_cname_recursion.py
@@ -102,3 +102,22 @@ def test_additional_from_catz_member_zone(ns2):
dns.rdatatype.A,
)
assert address is not None
+
+
+@pytest.mark.requires_zones_loaded("ns1", "ns2")
+def test_nxdomain_redirect_to_catz_member_zone(ns2):
+ with ns2.watch_log_from_start() as watcher:
+ watcher.wait_for_line("zone member/IN: transferred serial 1")
+
+ # NXDOMAIN for ns1. is redirected to ns1.member.
+ msg = isctest.query.create("ns1.", "A")
+ res = isctest.query.udp(msg, ns2.ip)
+ isctest.check.noerror(res)
+ answer = res.get_rrset(
+ res.answer,
+ dns.name.from_text("ns1."),
+ dns.rdataclass.IN,
+ dns.rdatatype.A,
+ )
+ assert answer is not None
+ assert str(answer[0]) == "10.53.0.1"