Revisiting Samba RODC + Bind
Ok, so here’s another step in the evolution of my Samba4-RODC-based
DNS setup. First steps were setting up a Samba4 Read-Only DC in
my remote locations, so that DNS would be replicated to that location so
that DNS doesn’t fail in case the VPN connection dies. Then we
discovered that the SAMBA_INTERNAL DNS backend does not
support caching, which unsurprisingly lead to performance problems, so
we switched to Samba AD DC with
Bind as DNS backend. This setup is quite a bit more complex though,
and it seems a bit unstable in the sense that Samba lost its ability to
update records in Bind for some reason and we have to “fix” that
manually by re-joining the RODC to the domain. Rumor has it that the
SAMBA_INTERNAL backend is a lot more stable. So, here’s
step three in our evolution: Let’s allow Samba to use
SAMBA_INTERNAL, but only run on 127.0.0.1,
while communication with the outside world is handled by a
bind instance that handles caching and forwards queries for
the company domain records to Samba.