Linux: Dnsmasq als DHCP- und DNS-Server

Dnsmasq ist ein kleiner und leichtgewichtiger Server mit dessen Hilfe DNS und DHCP in einem kleinen Netzwerk zur Verfügung gestellt werden kann. Im Folgenden wird kurz die Installation gezeigt.

Die Anleitung bezieht sich auf Ubuntu 12.04, sollte sich jedoch leicht auch auf andere Versionen und Distributionen übertragen lassen. Im Beispiel wird davon ausgegangen, dass der Computer zwei Netzwerkschnittstellen hat. Mit der ersten Schnittstelle(eth0) hängt er am öffentlichen Netz und mit der zweiten Schnittstelle(eth1) am internen Netz. Für letzteres soll DNS und DHCP bereitgestellt werden.

Da die erste Netzwerkschnittstelle vermutlich schon richtig konfiguriert ist, wird an dieser Stelle nur die Zweite in der Datei /etc/network/interfaces konfiguriert. Dies könnte wie folgt aussehen.

auto eth1
iface eth1 inet static
    address 192.168.30.1
    netmask 255.255.255.0

Anschließend wird das Netzwerk neu gestartet.

$ sudo ifdown eth1
$ sudo ifup eth1

An dieser Stelle wird jetzt das Paket dnsmasq installiert.

$ sudo apt-get install dnsmasq

War die Installation erfolgreich kann die Konfiguration vorgenommen werden. Hierfür wird die Datei /etc/dnsmasq.conf bearbeitet und um die folgenden Zeilen erweitert.

interface=eth1
dhcp-range=192.168.30.100,192.168.30.254,1h

Diese Einstellungen geben an, dass der dnsmasq Dienst nur an der zweiten Netzwerkkarte auf DHCP Anfragen lauschen soll und IP Adressen im Bereich 192.168.30.100 bis 192.168.30.254 mit einer Gültigkeit von 1 Stunde verteilt. Der Dienst bietet noch wesentlich mehr Einstellungsmöglichkeiten. Diese alle zu beschreiben würde an dieser Stelle jedoch zu weit führen.

Zum Abschluss ist noch ein Neustart des Dienstes nötig. Dazu wird der folgende Befehl aufgerufen.

$ sudo service dnsmasq restart

War alles erfolgreich sollten jetzt IP-Adressen verteilt und der DNS-Server bereit stehen.

Verwandte Artikel