Ich und eine kleine Gruppe von Entwicklern sind gerade in ein neues Büro umgezogen, und ich möchte dnsmasq auf unserem Entwicklungsserver einrichten. Wenn wir also dort Web-Apps bereitstellen, müssen wir unsere eigenen Hosts-Dateien nicht bearbeiten. Wir haben einen Router unter 192.168.3.1, auf den wir keinen Zugriff haben. Ich dachte, ich würde einen DNS-Server auf der Entwicklungs-Box installieren, und wir alle zeichnen dessen IP als sekundären DNS-Server auf. Leider habe ich Mühe, diese Arbeit zu machen.
Der Name des Entwicklerservers lautet devbox, die IP-Adresse lautet 192.168.3.99 und es wird der neueste Ubuntu-Server (Karmic) ausgeführt.
Auf meinem Computer läuft Ubuntu Desktop (Karmic)
Was ich gerne erreichen würde
Angenommen, ich habe drei Websites, website1, website2, website3, die auf der Entwicklungsbox ausgeführt werden. Ich möchte über die folgenden URLs darauf zugreifen:
http://website1.devbox
http://website2.devbox
http://website3.devbox
Also habe ich Apache auf der Devel-Box konfiguriert, dnsmasq installiert und die folgenden Zeilen in die Hosts-Datei geschrieben:
192.168.3.99 website1.devbox
192.168.3.99 website2.devbox
192.168.3.99 website3.devbox
und bearbeitete meine eigene resolv.conf-Datei, um die Entwicklungsbox als Nameserver einzuschließen:
nameserver 192.168.3.99
Es funktioniert gut, ich kann auf die Websites zugreifen. Das Problem ist, dass es nicht gut skaliert. Ich möchte, dass alle Domains, die mit .devbox enden, an die Entwicklungsbox weitergeleitet werden, und damit habe ich zu kämpfen.
Ich habe versucht zu setzen
192.168.3.99 devbox
in die hosts-Datei einfügen und die Zeile in der Datei dnsmasq.conf bearbeiten:
# Add local-only domains here, queries in these domains are answered
# from /etc/hosts or DHCP only.
local=/devbox/
Aber ich kann es nicht zum Laufen bringen. Wenn ich eine URL versuche, die nicht explizit in der Hosts-Datei der Entwicklungsbox vorhanden ist, schlägt die DNS-Suche fehl.
Ist die lokale Direktive für etwas anderes? Schaue ich am falschen Ort?
address=/.devbox/192.168.3.99
die Syntax für Ihre Zwecke möglicherweise besser geeignet ist.