Dnsmasq
* [1]: [:Pakete installieren: Installation von Programmen] * [2]: [:Paketquellen freischalten: Bearbeiten von Paketquellen] * [3]: [:Editor: Einen Editor öffnen]
In kleinen Netzwerken ist ein DNS-Server 🇩🇪 ganz praktisch. Nur BIND ist dem Einen oder Anderen etwas sperrig. Für dem ist Dnsmasq vielleicht richtig.
Dnsmasq ist:
ein Nameserver-Forwarder
ein DHCP-Server
optimiert für Netzwerke mit Dialup-Außenverbindung
Dnsmasq leitet Anfragen nach externen Adressen an den DNS, der in /etc/resolv.conf steht. Die Namen der Clients im internen Netzwerk liest Dnsmasq aus /etc/hosts.
Installation¶
Es ist das Paket dnsmasq [1] aus der Sektion universe [2] zu installieren.
Konfiguration als DNS-Server¶
Dnsmask greift zur lokalen Namensauflösung auf /etc/hosts zurück, also wird diese erstmal bearbeitet [3].
##/etc/hosts ##Lokales Netzwerk at Home 192.168.1.1 router.ruby-team.de router #Der Router 192.168.1.2 neo.ruby-team.de neo #Workstation 192.168.1.3 felidae.ruby-team.de felidae #ein Rechner 192.168.1.5 link.ruby-team.de link #Notebook 192.168.1.11 zeus.ruby-team.de zeus #Das Serverchen 192.168.1.66 bridge.ruby-team.de bridge #WLAN-Bridge
Soll Dnsmask nur als DNS arbeiten, wars das auch schon auf Server-Seite. Bei den Clients ist in /etc/resolv.conf der Server als DNS einzutragen [3]:
##/etc/resolv.conf search ruby-team.de nameserver 192.168.1.11
Konfiguration als DHCP-Server¶
DNS reicht mir nicht, im eigenen Netzwerk ist ein DHCP recht komfortabel. Dazu wird die Datei /etc/dnsmasq entsprechend bearbeitet [2].
##/etc/dnsmasq.conf ## Aus welchen Brereich soll Dnsmasq die IP-Adressen verteilen: dhcp-range=192.168.1.41,192.168.1.50,12h ## 12h ist die Lease-Time
Das wäre die Grundkonfiguration
Wenn man möchte, daß einzelne Clients immer die gleich IP-Adresse bekommen soll, hilft dieser Eintrag:
dhcp-host=00:07:95:26:2B:C9,neo,192.168.1.2,infinite
Es geht sogar noch besser ... Ich habe ein Notebook, das im Wechsel mal mit Kabel, mal mit WLAN vernetzt ist. Es wird anhand der MAC erkannt und eine freie IP-Adresse vergeben.
dhcp-host=00:00:0E:D2:DA:BE,link,infinite dhcp-host=00:02:2d:a9:55:92,link,infinite
Man kann als DHCP-Server seinen Clients noch einige Informationen mitgeben.
Zum Beispiel, welcher Rechner die Aufgabe eines Gateway hat:
## Syntax erst die Option, dann die entsprechende Adresse dhcp-option=3,192.168.1.1
Wo könnte man die Zeit abgleichen?
dhcp-option=42,130.133.1.10 ##Timeserver time.fu-berlin.de
Welcher Rechner stellt PXE-Boot-Images per TFTP zur Verfügung? Damit ist eine Installation über das Netzwerk möglich.
dhcp-boot=/pxelinux.0,zeus,192.168.1.11
Für Tests wird der Loglevel erhöht:
log-queries
Dieser Host als Slave-DNS:
server=/localnet/IP-Adresse_des_MasterDNS
Das ist weitgehend meine Server-Konfiguration, die recht solide und schmerzfrei arbeitet.
["Kategorie/Netzwerk"]