Wildcard does not encapsulate lower subdomains
I've been moving to Knot in the past few days for my personal infrastructure, and I noticed an odd discrepancy.
It seems Knot does not encapsultate lower subdomains when doing a reverse record lookup that are inside a wildcard.
I have a zone that looks somewhat like this:
@ IN NS ns1.abc.tld
@ IN NS ns2.abc.tld
@ IN NS ns3.abc.tld
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR ns1.abc.tld.
* IN PTR void.abc.tld
Let's say this record belongs to zone 8.b.d.0.1.0.0.2.ip6.arpa
.
On BIND, if I do a query for the PTR (dig -x 2001:db8::
), it returns me ns1.abc.tld
. This is the same for Knot.
On Knot, the wildcard seems to only match the first subdomain, so if I do kdig -x 2001:db8:*000::
(* being any hexadecimal number), it returns the expected void.abc.tld
.
However, if I do kdig -x 2001:db8::123
(or any other address in that /32 that does not touch the first hexadecimal), I get nothing returned. Unlike BIND, where I get void.abc.tld
returned for any lookup, unless it matches a non-wildcard record.
Is there any way to have Knot behave like BIND in this case, where it returns void.abc.tld
if there is no matching PTR record found?
Right now the solution to me seems to be the following:
* IN PTR void.abc.tld.
*.* IN PTR void.abc.tld.
*.*.* IN PTR void.abc.tld.
*.*.*.* IN PTR void.abc.tld.
*.*.*.*.* IN PTR void.abc.tld.
*.*.*.*.*.* IN PTR void.abc.tld.
*.*.*.*.*.*.* IN PTR void.abc.tld.
.....
Which takes up quite a significant chunk of my zonefile size, as well as being neither elegant or (hopefully) the right way to do it.
Any suggestions would be greatly appreciated. :)