> So if I understand correctly, the right thing to do would be
> to add the dnscache address to /etc/resolvconf/resolv.conf.d/base
> and *not* include the dnscache address under dns-nameservers in
> /etc/network/interfaces.
That will work, but only because there's a bug in /etc/resolvconf/update.d/dnscache such that it (wrongly) overlooks the contents of /etc/resolvconf/resolv.conf.d/base. So it's not actually the right thing. See my previous comment.
Normally for a local caching forwarding nameserver,
1. Something has to cause "nameserver 127.0.0.1" to be in /etc/resolv.conf so long as the nameserver is running, and
2. something has to cause the nameserver's list of forwarding addresses not to include that address, otherwise there will be a loop.
See the dnsmasq package for the best example of how to achieve these things.
> So if I understand correctly, the right thing to do would be /resolv. conf.d/ base interfaces.
> to add the dnscache address to /etc/resolvconf
> and *not* include the dnscache address under dns-nameservers in
> /etc/network/
That will work, but only because there's a bug in /etc/resolvconf /update. d/dnscache such that it (wrongly) overlooks the contents of /etc/resolvconf /resolv. conf.d/ base. So it's not actually the right thing. See my previous comment.
Normally for a local caching forwarding nameserver,
1. Something has to cause "nameserver 127.0.0.1" to be in /etc/resolv.conf so long as the nameserver is running, and
2. something has to cause the nameserver's list of forwarding addresses not to include that address, otherwise there will be a loop.
See the dnsmasq package for the best example of how to achieve these things.