Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
tachtler:android_-_dns-problem [2014/01/04 10:06] – [Android - DNS-Problem] klaus | tachtler:android_-_dns-problem [2014/01/04 10:27] (aktuell) – [Problem] klaus |
---|
* **''8.8.8.8''** | * **''8.8.8.8''** |
* **''8.8.4.4''** | * **''8.8.4.4''** |
durchzuführen, und **__nicht__** gegen meinen eignen im heimischen Netzwerk befindlichen DNS-Server ([[https://www.isc.org/downloads/bind/|ISC BIND]]). | durchzuführen, und **__nicht__** gegen meinen, im heimischen Netzwerk befindlichen DNS-Server. ([[https://www.isc.org/downloads/bind/|ISC BIND]]). |
| |
Firewall Verstöße aus **''/var/log/messages''** - (**nur relevanter Ausschnitt**): | Firewall Verstöße aus **''/var/log/messages''** - (**nur relevanter Ausschnitt**): |
</code> | </code> |
| |
Obwohl ich meinem Mobiltelefon mit meinem eigenen DHCP-Server beim beziehen einer IP-Adresse auch den DNS-Server-Eintrag übermittle. (**Auszug aus meiner [[https://www.isc.org/downloads/dhcp/|ISC DHCP]]-Konfiguration**): | ===== Problem ===== |
| |
| Ich übermittle meinem Mobiltelefon mit meinem DHCP-Server im heimischen Netzwerk beim beziehen einer IP-Adresse auch den DNS-Server-Eintrag. (**Auszug aus meiner [[https://www.isc.org/downloads/dhcp/|ISC DHCP]]-Konfiguration**): |
| |
<code ini> | <code ini> |
</code> | </code> |
| |
Aufgrund dieser vielleicht gewollten oder auch ungewollten Ignoranz meines Mobiltelefons, wollte ich die Firewall Verstöße nicht länger sehen. | :!: **Dies wird jedoch von meinem Mobiltelefon __IGNORIERT__ !!!** |
| |
| Aufgrund dieser vielleicht gewollten oder auch ungewollten Ignoranz meines Mobiltelefons, wollte ich die Firewall Verstöße nicht länger sehen **und** auch mein Mobiltelefon im heimischen Netzwerk, meinen DNS-Server [[https://www.isc.org/downloads/bind/|ISC BIND]] **ausschließlich** nutzen lassen. |
| |
Ein mögliche **Lösung** für dieses **Problem** ist ein | Mögliche **Lösungen** für dieses **Problem** sind |
- **Transparenter DNS-Server**, realisiert durch **NAT auf meinem Gateway/Router** via **''iptables''**! | - **Transparenter DNS-Server**, realisiert durch **NAT auf meinem Gateway/Router** via **''iptables''**! |
- **Transparenter DNS-Server**, realisiert durch **NAT auf einen DNS-Server** via **''iptables''**! | - **Transparenter DNS-Server**, realisiert durch **NAT auf einen DNS-Server** via **''iptables''**! |
:!: **HINWEIS** - Beispiel mit DNS-Server auf dem Gateway/Router! | :!: **HINWEIS** - Beispiel mit DNS-Server auf dem Gateway/Router! |
| |
Im folgendem Beispiel sind nachfolgendem Ergänzungen im Regelsatz von **''iptables''** durchzuführen, um | Im folgendem Beispiel sind nachfolgende Ergänzungen im Regelsatz von **''iptables''** durchzuführen, um |
- Alle DNS-Anfragen **TCP/UDP** auf **Port 53** umzuleiten | - Alle DNS-Anfragen **TCP/UDP** auf **Port 53** umzuleiten |
- Dies **transparent** (unsichtbar) für das jeweilige Endgerät | - Dies **transparent** (unsichtbar) für das jeweilige Endgerät |
</code> | </code> |
| |
Ein erneute Abfrage des ''iptables''-Regelwerts, sollte dann nachfolgend dargestellte Ausgabe ergeben, was mit folgendem Befehl durchgeführt werden kann: | Eine erneute Abfrage des ''iptables''-Regelwerts, sollte dann in etwa nachfolgend dargestellte Ausgabe ergeben, was mit folgendem Befehl durchgeführt werden kann: |
<code> | <code> |
# iptables -t nat -L -nv --line-numbers | # iptables -t nat -L -nv --line-numbers |
</code> | </code> |
| |
===== iptables: NAT-Forward ===== | ===== iptables: DNS-Server ===== |
| |
:!: **HINWEIS** - Beispiel mit DNS-Server Weiterleitung! | :!: **HINWEIS** - Beispiel mit DNS-Server Weiterleitung! |
| |
Im folgendem Beispiel sind nachfolgendem Ergänzungen im Regelsatz von **''iptables''** durchzuführen, um | Im folgendem Beispiel sind nachfolgende Ergänzungen im Regelsatz von **''iptables''** durchzuführen, um |
- Alle DNS-Anfragen **TCP/UDP** auf **Port 53** umzuleiten | - Alle DNS-Anfragen **TCP/UDP** auf **Port 53** umzuleiten |
- Dies **transparent** (unsichtbar) für das jeweilige Endgerät | - Dies **transparent** (unsichtbar) für das jeweilige Endgerät |
| |
Nachfolgende Befehle, fügen folgende ''iptables''-Regeln dem ''iptables''-Regelwerk ab der **Position 1** hinzu, ohne das der Paketfilter angehalten werden muss: | Nachfolgende Befehle, fügen folgende ''iptables''-Regeln dem ''iptables''-Regelwerk ab der **Position 1** hinzu, ohne das der Paketfilter angehalten werden muss: |
* <code>-A FORWARD -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT</code> | * <code>-A PREROUTING -s 192.168.0.0/24 -i eth0 -p tcp -m tcp --dport 53 -j DNAT --to-destination 192.168.0.20:53</code> |
* <code>-A FORWARD -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p udp -m udp --dport 53- m state --state NEW -j ACCEPT</code> | * <code>-A PREROUTING -s 192.168.0.0/24 -i eth0 -p udp -m udp --dport 53 -j DNAT --to-destination 192.168.0.20:53</code> |
| * <code>-I INPUT 4 -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT</code> |
| * <code>-I INPUT 5 -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p udp -m udp --dport 53- m state --state NEW -j ACCEPT</code> |
und hier die Befehle: | und hier die Befehle: |
<code> | <code> |
# iptables -A FORWARD -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT | # iptables -A PREROUTING -s 192.168.0.0/24 -i eth0 -p tcp -m tcp --dport 53 -j DNAT --to-destination 192.168.0.20:53 |
# iptables -A FORWARD -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p udp -m udp --dport 53- m state --state NEW -j ACCEPT | # iptables -A PREROUTING -s 192.168.0.0/24 -i eth0 -p udp -m udp --dport 53 -j DNAT --to-destination 192.168.0.20:53 |
| # iptables -I INPUT 4 -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT |
| # iptables -I INPUT 5 -s 192.168.0.0/24 -d 192.168.0.20/32 -i eth0 -p udp -m udp --dport 53- m state --state NEW -j ACCEPT |
</code> | </code> |
| |
Ein erneute Abfrage des ''iptables''-Regelwerts, sollte dann nachfolgend dargestellte Ausgabe ergeben, was mit folgendem Befehl durchgeführt werden kann: | Eine erneute Abfrage des ''iptables''-Regelwerts, sollte dann in etwa nachfolgend dargestellte Ausgabe ergeben, was mit folgendem Befehl durchgeführt werden kann: |
<code> | <code> |
# iptables -t nat -L -nv --line-numbers | # iptables -t nat -L -nv --line-numbers |
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] | iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] |
</code> | </code> |
| |