Para redirecionar solicitações baseadas em UDP do DNS, se o daemon / proxy de DNS estiver escutando na porta 5353 / UDP, será necessário fazer isso:
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.1:5353
A fonte tem que ser o netblock / rede (s) interna (s) usada (s), pois não precisamos de loops (ou seja, ainda podemos precisar fazer solicitações de DNS para o exterior).
Se o roteamento de uma rede interna em uma máquina multihomed, você também pode aplicar a interface, não precisando da rede de origem.
iptables -i eth0 -t nat -A PREROUTING -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.1:5353
Você também pode fazer isso na porta 53, desde que você coloque o destino na lista negra como em:
iptables -t nat -A PREROUTING ! -d 127.0.0.1/32 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.1:53
A fila OUTPUT pode funcionar em testes locais, no entanto, para máquinas remotas e a configuração atual, é aconselhável usar a fila PREROUTING.