dns zone – Configuring Reverse DNS for an emulated DNS server hierarchy using BIND

I’m emulating a network using Kathara (similar to Netkit) and I’m having trouble figuring out how to get reverse DNS to work across all three networks.

This is the topology

And this is the DNS hierarchy

I did manage to get recursive lookup to work. When queried for a name not in its database, ns.as1.net would query nsroot, then go down the hierarchy, finally getting a response from the authoritative server. I did this by adding a db.root file with a record for nsroot’s address and using it for zone “.”

named.conf:

(...)
zone "." {
    type hint;
    file "/etc/bind/db.root";
};
(...)

db.root:

.                   IN  NS    ROOT-SERVER.
ROOT-SERVER.        IN  A     1.1.2.2

My question is: How do I get it to work the same way for Reverse DNS?

I only managed to get it to work locally by configuring zone "3.3.in-addr.arpa" on ns.as3.net, but this way, it only works for the hosts that have ns.as3.net set as their resolver.

MTR in AS3:

                             My traceroute  (v0.93)
c2as3 (3.3.2.2)                                        2021-06-29T02:11:52+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                       Packets               Pings
 Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. r33.as3.net (3.3.2.1)             0.0%    12    0.1   0.1   0.1   0.2   0.0
 2. r32.as3.net (3.3.1.13)            0.0%    12    0.1   0.2   0.1   0.3   0.0
 3. ns.as3.net (3.3.4.2)              0.0%    11    0.2   0.2   0.2   0.2   0.0

MTR from AS2 to AS3:

                             My traceroute  (v0.93)
c1as2 (2.2.2.2)                                        2021-06-29T02:14:22+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                       Packets               Pings
 Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. 2.2.2.1 (2.2.2.1)                 0.0%     7    0.1   0.1   0.1   0.2   0.0
 2. 2.2.1.9 (2.2.1.9)                 0.0%     6    0.1   0.1   0.1   0.1   0.0
 3. 2.2.0.2 (2.2.0.2)                 0.0%     6    0.2   0.1   0.1   0.2   0.0
 4. 3.3.1.6 (3.3.1.6)                 0.0%     6    0.2   0.2   0.2   0.2   0.0
 5. 3.3.4.2 (3.3.4.2)                 0.0%     6    0.2   0.2   0.2   0.3   0.0

I did think about adding every arpa zone in all nameservers, but I don’t think it’s the proper way to do it.

I would greatly appreciate any tips or help provided.