web-dev-qa-db-fra.com

iptables - redirige les requêtes DNS

J'ai déjà appliqué les règles iptables suivantes afin de masquer tout le trafic wlan1 via wlan0.

*filter
:INPUT ACCEPT [48:6144]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [47:6078]
-A INPUT -i wlan1 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i wlan1 -p tcp -m tcp --dport 67 -j ACCEPT
-A INPUT -i wlan1 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i wlan1 -p tcp -m tcp --dport 53 -j ACCEPT
-A FORWARD -d 10.42.0.0/24 -o wlan1 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 10.42.0.0/24 -i wlan1 -j ACCEPT
-A FORWARD -i wlan1 -o wlan1 -j ACCEPT
-A FORWARD -o wlan1 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i wlan1 -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on Tue Mar  3 00:54:14 2015
# Generated by iptables-save v1.4.21 on Tue Mar  3 00:54:14 2015
*nat
:PREROUTING ACCEPT [1:66]
:INPUT ACCEPT [1:66]
:OUTPUT ACCEPT [10:651]
:POSTROUTING ACCEPT [10:651]
-A POSTROUTING -s 10.42.0.0/24 ! -d 10.42.0.0/24 -j MASQUERADE
COMMIT

Ce que j'essaie de faire est de rediriger toutes les requêtes DNS de l'interface d'entrée du formulaire wlan1 vers une adresse IP spécifique.

Je suis déjà fatigué:

iptables -t nat -A PREROUTING -i wlan1 -p udp --dport 53 -j DNAT --to MYDNSIP:53

et

iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to-destination MYDNSIP:53

Mais cela ne semble pas fonctionner. J'apprécierais n'importe quelle aide

-- À votre santé

3
vonHerman

D'accord, après quelques essais, j'ai finalement atteint l'objectif. La clé du succès était deux règles ci-dessous:

-A PREROUTING ! -s 10.42.0.1/32 ! -d 10.42.0.1/32 -p tcp -m tcp --dport 53 -j DNAT --to-destination 10.42.0.1:53
-A PREROUTING ! -s 10.42.0.1/32 ! -d 10.42.0.1/32 -p udp -m udp --dport 53 -j DNAT --to-destination 10.42.0.1:53

J'espère que cela aidera quelqu'un

2
vonHerman