Podemos redirecionar solicitações de DNS (tcp/udp) para proxy Squid em modo não transparente (3128) usando iptables? (O proxy squid entenderia isso e o processaria?)
regra de exemplo para redirecionar o tcp 53 (poderia ser outro semelhante):
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -i eth1 -p tcp --dport 53 -j REDIRECT --to-port 3128
regra de exemplo para redirecionar udp 53 (pode ser outro semelhante):
Nota: Squid "escuta" porta udp alta. exemplo: 36352, Comando: netstat -tlunp | lula grep
referência: http://linuxplayer.org/2012/02/why-squid-listen-on-high-udp-port-number
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -i eth1 -p udp --dport 53 -j REDIRECT --to-port 36352
PD: Estes são apenas exemplos de diretivas squid relacionadas ao DNS. Não estou afirmando que eles servem aos meus propósitos:
positive_dns_ttl
negative_dns_ttl
dns_nameservers 8.8.8.8 8.8.4.4
udp_incoming_address
Se isso não puder ser feito, aceito alternativas
O Squid não é um proxy DNS e não aceita requisições DNS.
Observando a documentação das diretivas que você destaca, fica bem claro que elas são para configurações internas e não têm nada a ver com acesso de cliente externo:
positive_dns_ttl
negative_dns_ttl
dns_nameservers
udp_incoming_address
Em resposta explícita à sua última frase/pergunta, não há maneiras alternativas de direcionar o tráfego DNS para um proxy Squid, porque o Squid não faz proxy do tráfego DNS.
Leitura adicional
Estive pensando um pouco mais sobre isso e tentando adivinhar o problema que você realmente quer resolver. Você percebe que embora o Squid não faça proxy de solicitações de DNS, todos os servidores DNS padrão fazem isso? Exemplos que posso citar incluem Dnsmasq e Bind.