iptables redirige solicitudes DNS codificadas

iptables redirige solicitudes DNS codificadas

Poco a poco estoy intentando aprender iptables y me gustaría redirigir todas las solicitudes de DNS (puerto 53) que no provienen de/hacia una lista de IP (de 192.168.2.1, 192.168.2.29 o 1.1.1.1). Pensé que puedo usar cadenas. Aunque no funciona. ¿Podrías darme una pista?

iptables -N dnsrewrite
iptables -A dnsrewrite -s 192.168.2.1 -j RETURN
iptables -A dnsrewrite -s 192.168.2.29 -j RETURN
iptables -A dnsrewrite -d 1.1.1.1 -j RETURN
iptables -t nat -A dnsrewrite -j DNAT --to-destination 192.168.2.29
iptables -t nat -A POSTROUTING -p tcp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -p udp --dport 53 -j MASQUERADE
iptables -A PREROUTING -p tcp --dport 53 -j dnsrewrite
iptables -A PREROUTING -p udp --dport 53 -j dnsrewrite

Respuesta1

iptables -t nat -N dnsrewrite
iptables -t nat -A dnsrewrite -j DNAT --to-destination 192.168.2.29

iptables -t nat -N whitelist
iptables -t nat -A whitelist -s 192.168.2.1 -j RETURN
iptables -t nat -A whitelist -s 192.168.2.29 -j RETURN
iptables -t nat -A whitelist -d 1.1.1.1 -j RETURN
iptables -t nat -A whitelist -j dnsrewrite

iptables -t nat -A PREROUTING -p tcp --dport 53 -j whitelist
iptables -t nat -A PREROUTING -p udp --dport 53 -j whitelist

Depende si estos se adaptan a sus necesidades.

iptables -t nat -A POSTROUTING -p tcp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -p udp --dport 53 -j MASQUERADE

información relacionada