Sim.
Você precisará do DNAT porque precisará dos pacotes provenientes das VMs para ir até 127.0.0.1 em vez de 10.10.10.1. Obviamente, você não pode configurar as VMs para acessar o host local como DNS, pelo menos isso complicaria ainda mais as coisas.
Em segundo lugar, você pode precisar de SNAT, porque, em geral, você pode ter problemas com endereços não locais que não pertencem à rede.
Estou assumindo que bind está apenas ouvindo em lo: Também parece que você esqueceu sobre o caminho de retorno dos pacotes DNS do BIND para as VMs em seu exemplo de configuração. O BIND só pode colocar pacotes em lo. Portanto, você precisará colocá-los fora e dentro da rede de VMs. Aqui, talvez você não precise de SNAT, dependendo de como é exigente o cliente DNS em sua VM. Se você usou o SNAT acima, você precisará do DNAT agora.
Finalmente, estou um pouco curioso por que valeria a pena o esforço ... parece que seria muito mais fácil implementar as regras de firewall para isolar o BIND de qualquer coisa que você quisesse isolá-lo, mesmo para dar sua própria outra rede virtual, então use lo. Talvez se você descrever por que o BIND deve estar disponível, talvez seja possível encontrar uma maneira melhor de resolver o problema.
Para o caminho para o DNS:
iptables -F -t nat
echo 1 >| /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p udp -d 10.10.10.1 --dport 53 \
-j DNAT --to 127.0.0.1:53
Para o caminho de volta para as VMs:
iptables -A FORWARD -i lo -o vmbr0 -m state \
--state ESTABLISHED,RELATED -j ACCEPT
Se isso não funcionar, você pode precisar de:
iptables -t nat -A POSTROUTING -o lo -j MASQUERADE
É tudo um pouco 90% lá porque eu não tenho essa configuração para tentar. Esteja ciente de que geralmente não é uma boa decisão de segurança encaminhar qualquer coisa para você. lo significa ser exclusivamente localhost.