Dnsmasq / DNS- & DHCP-Server einstellen

Crys

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.651
Ich möchte meinen Xubuntu LTS 14 Server als DNS- und DHCP- Server für mein Heimnetzwerk einrichten.

Der Server (192.168.178.9) ist per LAN am Netzwerk eingebunden, andere Geräte sind Win-PCs und ein Speedport-Router.

Ich möchte erreichen, dass die Geräte im Netzwerk alle Internet über den Router bekommen (192.168.178.1), eine feste IP zugeteilt bekommen (anhand ihrer MAC) und das die Geräte auch anhand von Netzwerknamen erreichbar sind.

Ich habe Dnsmasq auf den Server installiert und Dateien wie folgt konfiguriert:

/etc/network/interfaces:
Code:
auto eth0

iface eth0 inet static
        address 192.168.178.9
        netmask 255.255.255.0
        network 192.168.178.1
        broadcast 192.168.178.255
        gateway 192.168.178.1

/etc/hosts:
Code:
127.0.0.1 localhost

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

/etc/resolv.conf:
Code:
nameserver 127.0.0.1
nameserver 192.168.178.1

/etc/dnsmasq.conf:
Code:
listen-address=127.0.0.1
listen-address=192.168.178.9

Es ist kein NetzwerkManager installiert. Jetzt starte ich Dnsmasq neu service dnsmasq restart und schaue, ob es funktioniert hat netstat -tulpen | grep dnsmasq. Nur dann bekomme ich als Ausgabe:

Code:
root@Crys:~# service dnsmasq restart
 * Restarting DNS forwarder and DHCP server dnsmasq                                                         [ OK ]
root@Crys:~# netstat -tulpen | grep dnsmasq
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      0          65985       5807/dnsmas 
tcp6       0      0 :::53                   :::*                    LISTEN      0          65987       5807/dnsmas 
udp        0      0 0.0.0.0:53              0.0.0.0:*                           0          65984       5807/dnsmas 
udp6       0      0 :::53                   :::*                                0          65986       5807/dnsmas
Nun sind auch die beiden Zeilen der /etc/resolv.conf vertauscht.

Was bedeutet das?
Was mache ich falsch?
 
Zuletzt bearbeitet: (Das Forum hat einen Bug mit den Code-Boxen)
In die resolv.conf nur den Router eintragen, localhost nicht.

Aber was ist genau dein Problem?

PS: DHCP im Router natürlich ausmachen, auf der Debian Box an (via dnsmasq natürlich).

PPS: was macht dnsmasq was die Fritzbox nicht macht?
 
HominiLupus schrieb:
In die resolv.conf nur den Router eintragen, localhost nicht.
Steht in der Anleitung aber so: http://wiki.ubuntuusers.de/Dnsmasq#Verwendung-des-Cache
Dann passiert aber auch nichts anders, es wird immer noch nach service dnsmasq restart die 192.168.178.1 an die erste Stelle der Datei angetragen.

HominiLupus schrieb:
Aber was ist genau dein Problem?
Es funktioniert nicht. Bei letzten Befehl sollen die lokalen IPs ausgegeben werden, nicht 0:0:0:0 [Dnsmasq als DNS-Server]

HominiLupus schrieb:
PS: DHCP im Router natürlich ausmachen, auf der Debian Box an (via dnsmasq natürlich).
Debian Box?
Am Router ist immer wieder testweise der DHCP aus. Dann geht aber gar nichts mehr ... es werden an die PCs keine IPs mehr vergeben und kein PC weiß wo das Internet ist ... mit nachvorlgenenden Zeilen in der dnsmasq.conf:
Code:
interface=eth0
dhcp-range=192.168.178.90,192.168.178.100,1h
dhcp-option=3,192.168.178.1

HominiLupus schrieb:
PPS: was macht dnsmasq was die Fritzbox nicht macht?
Speedport, keine Fritzbox. Das ist das Telekom Teufelsding ...
Dnsmasq macht alles im ersten Post beschriebene:
  • jeden Gerät eine feste IP zuteilen
  • jedes Gerät per Namen ansprechbar machen
  • Adressumleitungen
 
Zuletzt bearbeitet:
/etc/network/interfaces ist ein Debianism. Kann natürlich auch bei von Debian abgeleiteten Distros vorkommen.
Die 127.0.0.1 Zeile in resolv.conf ist relativ redundant. Aber wenn du willst. Und 192.168.178.1 deutet STARK auf eine Fritbox hin. Könnte ein Speedport sein welches in Wahrheit eine AVM Fritzbox ist. W900V aka 7170 oder so was.

0.0.0.0 ist OK, das heißt eben "lauscht an allen Interfaces" und das ist auch gut so. Andererseits sehe ich da nix von DHCP. Kannst du mal die komplette dnsmasq.conf posten?
 
HominiLupus schrieb:
Und 192.168.178.1 deutet STARK auf eine Fritbox hin. Könnte ein Speedport sein welches in Wahrheit eine AVM Fritzbox ist. W900V aka 7170 oder so was.
Das ist korrekt, mein letzter Router war eine Fritzbox. Da ich aber auf fast allen Geräten eine manuelle IP im Adressbereich 192.168.178.255 eingegeben hatte, habe ich den Bereich beim Speedport einfach geändert.

die aktuelle dnsmasq.conf:
Code:
listen-address=127.0.0.1
listen-address=192.168.178.9

interface=eth0
dhcp-range=192.168.178.90,192.168.178.100,1h  ## xh ist die Lease-Time
dhcp-option=3,192.168.178.1     ## Gateway
dhcp-host=8C:89:53:7C:53:79,MeinPC,192.168.178.200,infinite

Ich habe weiter probiert und wenn ich am WinPC den Adapter Zeit lasse und neu starte, dann erkennt er den Server. Der PC MeinPC bekommt die angegebene IP Adresse, es wird als DNS und DHCP 192.168.178.9 erkannt und als Std.-Gateway wird 192.168.178.1 eingetragen.
Ich kann an den PC dann z.B. den Google-Server per IP (173.194.112.175) anpingen, aber nicht per Namen (google.de).
Sprich der DNS wird nicht an den Router weiter gereicht?
Keine Namensauflösung. Wieso das?
Ergänzung ()

.
Der Server kann alle Domain-Namen auflösen, nur alle PCs, die den Server als DNS eingetragen haben, können keine Namen mehr auflösen. Über die IP geht aber Internet auf den PCs, also liegt das nur an den DNS.

Was habe ich da falsch eingestellt?
Ergänzung ()

Noch ein Beweis, dass es daran liegt, der PC ohne DHCP:
Code:
C:\>dig computerbase.de

; <<>> DiG 9.10.2-P3 <<>> computerbase.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42049
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;computerbase.de.               IN      A

;; ANSWER SECTION:
computerbase.de.        3600    IN      A       87.230.75.2

;; Query time: 32 msec
;; SERVER: 192.168.178.1#53(192.168.178.1)
;; WHEN: Sat Aug 01 16:28:23 Mitteleuropõische Sommerzeit 2015
;; MSG SIZE  rcvd: 49
Mit DHCP Server:
Code:
C:\>dig computerbase.de

; <<>> DiG 9.10.2-P3 <<>> computerbase.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 5825
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;computerbase.de.               IN      A

;; Query time: 1 msec
;; SERVER: 192.168.178.9#53(192.168.178.9)
;; WHEN: Sat Aug 01 16:33:06 Mitteleuropõische Sommerzeit 2015
;; MSG SIZE  rcvd: 33
Die Übermittlung wird verweigert (Zeile 6: refused).

Wo und was ist an meinen Einstellungen falsch?
Ergänzung ()

.
So ein Käse, das habe ich schon vor über einen Jahr mit einem anderen Paket probiert und dann aufgegeben: https://www.computerbase.de/forum/threads/xubuntu-dhcp-server.1351822/#post-15744569

Ergänzung: Auf einen anderen PC komme ich mit der Config auch nicht ins Internet.
Interne Weiterleiterleitungen wie server=/example.com/192.168.178.9 oder address=/example.com/192.168.178.9 gehen auch nicht.
 
Zuletzt bearbeitet:
Es liegt irgendwie an dem SpeedPort Router. Wenn der aus ist, dann funktionieren alle internen DNS-Weiterleitungen. Wenn der (Ohne DHCP aktiv) an ist, gehen die meisten nicht mehr ... wieso auch immer
 
Jetzt funktioniert alles!
Ich vermute, es lag an den Windows-PCs, dass diese noch die alten Adressen gecached hatten und einfach eine Zeit gebraucht haben. Die Lease zu erneuern und/oder den PC neu zu starten hat auch nichts gebracht ... mit der Zeit ging es einfach.
 
Zurück
Oben