Externen DNS-Server über weiteren Router einbinden

seventh_son

Cadet 4th Year
Registriert
Sep. 2008
Beiträge
73
Hallo,

ich würde gerne folgenden Testaufbau realisieren:

Router1 (Subnetz 192.168.0.1) dient als Standard-Gateway für die Netzwerk-Clients.
Router2 (Subnetz 192.168.1.1) soll nur als DNS-Server für die Clients in Subnetz1 agieren. Standard-Gateway ist Router1.

Router1 wird also mit dem Internet verbunden. Router2 wird über den WAN-Port mit Router1 verbunden und bekommt eine statische IP-Konfiguration für die WAN-Verbindung (IP aus dem Subnetz von Router1).

Ziel ist nun, dass die Clients über die Adresse von Router 192.168.1.1 ihre DNS-Anfragen abwickeln. Meine Annahme ist, dass zwischen die beiden Router noch ein weiterer Router geschaltet werden muss, um die Subnetze zu verbinden. Ist das korrekt?

Danke schonmal im Voraus.
 
Drei Router? Ne, du brauchst für jedes Subnetz einen Router, dazwischen dann noch einen und zwischen denen noch einen. Dann hängst du nur noch einen zwischen Router x und Router y und mit drölfzig Routern hast du es dann geschafft :p

Spaß beiseite: So ganz verstehe ich dein Setup noch nicht. Was soll das ganze? Die Clients müssten dann statt "8.8.8.8" für den google-dns eben Router2 als DNS verwenden, der wiederum 8.8.8.8 verwendet. Es ist doch Jacke wie Hose ob man nu am PC 8.8.8.8 einstellt oder die Router2-IP.


Clients in Subnetz1 werden Router2 nicht über 192.168.1.1 erreichen können. Das ist die IP, die Router2 am internen Switch hat und über den WAN-Port nicht erreichbar ist.
 
Wenn Router 2 mit einem Bein im "Router-1-Netz" ist, sollte es ausreichen, wenn du im Router 1 eine statische Route ins "Router-2-Netz" über die "Router-1-Netz"-IP von Router 2 einträgst.
 
Gib bitte mal ein konkretes Szenario wie du dir das am Ende vorstellst. zum Beispiel "PC1 in Subnetz1 möchte netflix USA gucken und soll 8.8.8.8 als DNS verwenden"
 
Hallo,

ja, das "warum" ist hier sicherlich nicht so ersichtlich ;-)
Wie schon geschrieben geht es um einen Testaufbau. Im Normalfall stellt ja der Router (FritzBox o.ä.) den DNS-Server für die Clients dar, die mit ihm verbunden sind. Es soll nun ein externer (d.h. nicht im selben Subnetz befindlicher) DNS-Server simuliert werden, so wie es bei größeren Firmennetzwerken der Fall ist, also Default-Gateway und DNS-Server sind über unterschiedliche IPs in unterschiedlichen Subnetzen realisiert.

Es soll also explizit nicht so sein, dass die Clients über das gleiche Subnetz dem sie angehören auf den DNS-Server zugreifen, d.h. die für den WAN-Port konfigurierte IP soll nicht für DNS benutzt werden (was nach einem Kommentar hier ja ohnehin nicht funktioniert), sondern die IP die Router2 in seinem eigenen Subnetz hat soll erreicht werden.

Router2 bekommt dann meinetwegen die 8.8.8.8 als DNS-Route verpasst.

Ein DNS-Request würde also diesen Weg nehmen:

Client -> Router1 -> Route zu Subnetz2 -> Router2 (DNS-Server) -> WAN -> Router1 -> Internet -> DNS-Server (8.8.8.8)

Ein bisschen verwirrend ist hier sicher, dass Router2 über Router1 in's Internet gehen muss.
Man könnte es auch so realisieren, das beide Router autarke Internet-Zugänge haben. Dann würde ein DNS-Request so aussehen:

Client -> Router1 -> Route zu Subnetz2 -> Router2 (DNS-Server) -> WAN -> Internet -> DNS-Server

Somit habe ich zwei Subnetze, die ich ja irgendwie bridgen muss, deshalb die Idee mit dem dritten Router. Es geht hier also nicht um die schnellste Lösung, um DNS-Auflösung zu machen, sondern es soll eine bestimmte Infrastruktur nachgebildet werden.
 
Zuletzt bearbeitet:
Ich sehe dein Problem nicht. Ein dritter Router ist auch völlig unnötig.
Du musst lediglich in deinem default Gateway die Route ins andere Subnetz einpflegen.

Und dein zweiter Router muss natürlich anfragen an die interne IP zulassen (Firewall). Daran könnte es bei irgendwelchen Consumer Routern allerdings scheitern.
 
KillerCow schrieb:
Wenn Router 2 mit einem Bein im "Router-1-Netz" ist, sollte es ausreichen, wenn du im Router 1 eine statische Route ins "Router-2-Netz" über die "Router-1-Netz"-IP von Router 2 einträgst.

Das habe ich mal ausprobiert. Router1 ist eine FritzBox. Dort habe ich folgendes eingestellt:

Unter statische Routingtabelle
- Netzwerk 192.168.1.1
- Subnetzmaske 255.255.255.0
- Gateway 192.168.0.10 (IP-Adresse von Router2 an Router1)

Funktioniert aber nicht.

Da man an der FritzBox den DNS-Server nicht ausschalten kann, kann es vielleicht sein dass er DNS-Anfragen der Clients generell nicht weiterleitet?
Ergänzung ()

lakekeman schrieb:
Ich sehe dein Problem nicht. Ein dritter Router ist auch völlig unnötig.
Du musst lediglich in deinem default Gateway die Route ins andere Subnetz einpflegen.

Und dein zweiter Router muss natürlich anfragen an die interne IP zulassen (Firewall). Daran könnte es bei irgendwelchen Consumer Routern allerdings scheitern.

Das könnte in der Tat das Problem sein. Habe hier als zweiten Router nur einen NoName aus China. Dort kann man nicht mal Routen hinzufügen. Firewall-Einstellungen gibt es auch nicht.

Da ich euch zustimme, dass es eigentlich über eine konfigurierte Route zu haben sein müsste, liegt es wohl an den beteiligten Geräten.
 
Was du versuchst, ist meiner Meinung nach mit Consumer-Geräten nicht machbar. Auch Fritzboxen sind prinzipiell nur für das 08/15-Standard-Setup konzipiert, 1x WAN, 1x LAN, 1x WLAN, obwohl sie schon ziemlich viele Optionen bieten. Du versuchst jetzt ein komplexes Netzwerk zu simulieren, in dem allerdings "richtige" Router zum Einsatz kommen. Das sind weder Fritzboxen, noch Speedports noch TP-Links noch sonst was. Das sind Cisco und Co bzw. Windows-/Linux-Server


Grundsätzlich solltest du die Sache anders angehen. Wenn du direkt DNS-Requests testest, wirst du so oder so nicht zum Ziel kommen. Erstmal musst du sicherstellen, dass du von Subnetz1 aus die Router2-IP in Subnetz2 pingen kannst. Wenn das geht, funktioniert zumindest die statische Route in der Fritzbox ordnungsgemäß und man kann sich um DNS kümmern. Ein DNS-Request eines S1-Clients an die S2-IP von Router2 würde dann zumindest von der Fritzbox korrekt an Router2 weitergeleitet werden.

Die Frage ist nun was Router2 damit macht. Prinzipiell ist ein DNS-Request eine normale IP-Verbindung. DNS nutzt dabei UDP+TCP Port 53. Ohne Portweiterleitung macht Router2 also erstmal überhaupt nichts, er verwirft die Anfrage ganz einfach. Demnach müsste man in Router2 eine Portweiterleitung einrichten, die Port 53 (UDP+TCP) an seine eigene S2-IP schickt - wenn das denn überhaupt geht.

Je nach DNS-Implementierung auf Seiten des Router2 kann es jedoch sein, dass er ausschließlich auf DNS-Anfragen von S2-IPs reagiert. Das heißt der Request kommt zwar bei Router2 an, wird auch erfolgreich in Subnetz2 an die Router2-IP weitergeleitet, aber die Quell-IP ist nach wie vor eine S1-IP, die hinterm WAN-Port liegt. Ich vermute stark, dass der DNS das aus Prinzip blockt (Stichwort: 08/15-Standard-Setup). DNS-Anfragen von außen werden mit ziemlicher Sicherheit grundsätzlich blockiert, weil das eben nicht in das Standard-Szenario eines Consumer-Routers fällt.

Bei OpenWRT oder einem anderen offenen Router-OS könnte man nun die Konfiguration des DNS anpassen, um solche Anfragen zuzulassen, oder man richtet ein NAT ein, dass die S1-IPs maskiert.


Lange Rede, kurzer Sinn: Du wirst mindestens einen OpenWRT-/DD-WRT-Router als Router2 benötigen, der dir möglichst volle Kontrolle über den DNS-Dienst sowie etwaige Firewall-Regeln bietet. Besser wäre natürlich ein Linux-Rechner, denn da hast du alle Möglichkeiten und kannst auch aus verschiedenen DNS-Implementierungen wählen.
 
Zuletzt bearbeitet:
Zurück
Oben