So konfigurieren Sie eine statische Platzhalter-Unterdomäne mit dnsmasq

13

Ich habe ein Netzwerk hinter einem NAT mit ein paar Rechnern.

Die Maschinen sind:

  • router - NAT, dnsmasq, forwarding - direkt mit dem inet verbunden
  • Server - der läuft ssh, www und einige andere Sachen
  • Clients - die Dinge auf dem Server erledigen

Ich habe auch mydomain.com.
server.meinedomain.com zeigt auf die IP-Adresse meiner Verbindung (einzelne IP-Adresse), bei der es sich um den Router handelt, der die Ports an den Server weiterleitet.

Auf dem Server wird ein httpd ausgeführt, der basierend auf vhosts verschiedene Sites bedient.
Also habe ich site1.server.mydomain.com, site2 ..

Das Problem ist, dass der gesamte Datenverkehr über den Router abgewickelt wird. Wenn ich die Protokolle überprüfe, wird immer die IP-Adresse des Routers für alles angezeigt (es ist also schwer zu erkennen, wer das Skript mit while (1) ausführt).

Ich würde nur ServerAlias ​​site1.server.local verwenden, aber auf den meisten Websites ist eine Stamm-URL gespeichert, über der andere URLs erstellt werden. Daher kann ich das nicht tun.

Die Lösung für mich wäre, dnsmasq zu sagen, dass es auf * .mydomain.com mit der IP des Servers antworten soll.

Ist das irgendwie möglich

Prody
quelle

Antworten:

12

Ich mache genau dasselbe auf meinen Dev-Servern, damit ich lokal und auf dem Offsite-Server mit identischen Konfigurationen einen synchronisierten Spiegel haben kann.

Folgendes benötigen Sie in Ihrer dnsmasq.conf (stellen Sie sicher, dass Sie es neu starten), vorausgesetzt, die interne Schnittstelle Ihres Webservers ist 192.168.0.3:

address=/.server.mydomain.com/192.168.0.3

Dadurch wird ein Platzhalter-Eintrag für * .server.meinedomain.com erstellt. Solange Ihre Kunden DNSMasq für ihren DNS verwenden (und Ihr Server auf der internen Schnittstelle lauscht), sind Sie eingestellt.

Soßengesicht
quelle
THAAAAAAAAAAAAAANKS
Prody
Ausgezeichnet! Hatte das gleiche Problem und die gleiche Lösung auch für mich gut funktioniert! ;) Danke vielmals.
Mnemosyn
0

Ich bin mir nicht sicher, ob ich Ihr Problem verstehe, aber es scheint mir, dass die Hauptursache für Ihre Probleme darin besteht, eingehende Verbindungen auf Ihrem Router freizugeben. Genauer gesagt, da Sie sagten, dass alle eingehenden Verbindungen in den Protokollen mit der IP-Adresse des Routers angezeigt werden, scheinen Sie alle eingehenden Verbindungen zu maskieren.

Was Sie tun sollten, sind eingehende DNAT-Verbindungen und ausgehende SNAT-Verbindungen auf dem Router, bei denen die Quell-IP jeder Verbindung erhalten bleibt.

fim
quelle