Hier geht es um die Bereitstellung einesgesamtLösung für ein lokales Heimnetzwerk -
- Ich habe gefundenein guter hierzur
dnsmasq
Konfiguration. - Ich habe es geschafft, dieobiger Artikelum
dnsmasq
einen Server für das lokale Heimnetzwerk einzurichten, und ich verwende denselben Server auch als DHCP-Server. Innerhalb des Servers selbst funktioniert es gut. - Die anderen Laptops im selben lokalen Heimnetzwerk können jedoch keine DNS-Abfragen für lokale Computer durchführen.
dnsmasq
Das heißt, die auf diesen Ubuntu-Laptops installierten Dateien können irgendwie keine LAN-DNS-Abfragen von meinem DNS-Server durchführen, obwohl ich den DNS-Dienst in meinem Router deaktiviert habe. Das heißt, alle DNS-Dienste sollten von meinem DNS-Server bereitgestellt werden. Alle diese Ubuntu-Laptops haben nameserver 127.0.1.1
die /etc/resolv.conf
Datei, die wiederum die DNS-Auflösung von meinem DNS-Server zwischenspeichern sollte, richtig?
UPDATE2:
Es stellt sich heraus, dass es der NetworkManager (der Ubuntu-Laptops) ist, der die seltsamen Nameserver-Einstellungen verursacht 127.0.1.1
. Hier ist das Protokoll für dhclient zur DHCP-Erneuerung:
Oct 5 21:07:27 mylptp NetworkManager[854]: <info> [1507252047.0729] manager: NetworkManager state is now DISCONNECTED
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9239] device (eth0): Activation: starting connection 'Wired connection 1' (daa2...b460)
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9241] audit: op="connection-activate" uuid="daa2...b460" name="Wired connection 1" pid=4822 uid=0 result="success"
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9243] device (eth0): state change: disconnected -> prepare (reason 'none') [30 40 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9245] manager: NetworkManager state is now CONNECTING
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9253] device (eth0): state change: prepare -> config (reason 'none') [40 50 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9266] device (eth0): state change: config -> ip-config (reason 'none') [50 70 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9270] dhcp4 (eth0): activation: beginning transaction (timeout in 45 seconds)
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9299] dhcp4 (eth0): dhclient started with pid 4826
Oct 5 21:07:42 mylptp dhclient[4826]: DHCPREQUEST of 192.168.2.126 on eth0 to 255.255.255.255 port 67 (xid=0x71e88c46)
Oct 5 21:07:42 mylptp dhclient[4826]: DHCPACK of 192.168.2.126 from 192.168.2.102
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9619] dhcp4 (eth0): address 192.168.2.126
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): plen 24 (255.255.255.0)
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): gateway 192.168.2.1
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): server identifier 192.168.2.102
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): lease time 4294967295
Oct 5 21:07:42 mylptp avahi-daemon[799]: Joining mDNS multicast group on interface eth0.IPv4 with address 192.168.2.126.
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): hostname 'mylptp'
Oct 5 21:07:42 mylptp avahi-daemon[799]: New relevant interface eth0.IPv4 for mDNS.
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): nameserver '192.168.2.102'
Oct 5 21:07:42 mylptp avahi-daemon[799]: Registering new address record for 192.168.2.126 on eth0.IPv4.
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9620] dhcp4 (eth0): domain name 'my.domain.name'
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9621] dhcp4 (eth0): state changed unknown -> bound
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9630] device (eth0): state change: ip-config -> ip-check (reason 'none') [70 80 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9635] device (eth0): state change: ip-check -> secondaries (reason 'none') [80 90 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9637] device (eth0): state change: secondaries -> activated (reason 'none') [90 100 0]
Oct 5 21:07:42 mylptp NetworkManager[854]: <info> [1507252062.9638] manager: NetworkManager state is now CONNECTED_LOCAL
Oct 5 21:07:43 mylptp NetworkManager[854]: <info> [1507252063.0394] manager: NetworkManager state is now CONNECTED_GLOBAL
Oct 5 21:07:43 mylptp NetworkManager[854]: <info> [1507252063.0395] policy: set 'Wired connection 1' (eth0) as default for IPv4 routing and DNS
Oct 5 21:07:43 mylptp NetworkManager[854]: <info> [1507252063.0403] device (eth0): Activation: successful, device activated.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Switching to DNS server 192.168.2.102 for interface eth0.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (TCP) for DNS server 127.0.1.1.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (UDP) for DNS server 127.0.1.1.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (TCP) for DNS server 127.0.1.1.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (UDP) for DNS server 127.0.1.1.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (TCP) for DNS server 127.0.1.1.
Oct 5 21:10:43 mylptp systemd-resolved[1009]: Using degraded feature set (UDP) for DNS server 127.0.1.1.
Ich habe das lange Protokoll der Übersichtlichkeit halber in Gruppen unterteilt. Aus dem Protokoll können wir deutlich erkennen, dass die dnsmasq
korrekte IP-Adresse des DNS-Servers in der DHCP-Antwort übertragen wurde (Gruppe 3, letzte Zeile). Es ist jedoch der NetworkManager (oder systemd-resolved
), der Probleme macht (Gruppe 6, erste Zeile).
Warum verwendet NetworkManager/systemd-resolved nicht den richtigen DNS-Server, den es verwenden soll? Mein Laptop hat kein Problem damit, meinen lokalen DNS-Server zu verwenden/abzufragen:
me@mylptp$ dig @192.168.2.102 coral
...
;; ANSWER SECTION:
coral. 0 IN A 192.168.2.102
;; Query time: 0 msec
;; SERVER: 192.168.2.102#53(192.168.2.102)
;; WHEN: Thu Oct 05 21:16:22 EDT 2017
;; MSG SIZE rcvd: 50
Alle meine Maschinen sind von:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 17.04
Release: 17.04
Codename: zesty
$ ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 35 2017-10-05 21:07 /etc/resolv.conf -> /var/run/NetworkManager/resolv.conf
Bitte helfen Sie.
UPDATE1:
Was mir fehlt, ist, dass ich "sollte die richtige IP-Adresse des DNS/DHCP-Servers in der DHCP-Antwort angeben", danke an dirkt für die Anleitung. Aber wie kann ich das mit machen dnsmasq
? Ich habe die folgenden URLs aufgerufen, aber keine hat mir die Antwort gegeben:
- https://blogging.dragon.org.uk/howto-setup-dnsmasq-as-dns-dhcp/
- http://xmodulo.com/wie-man-einen-dhcp-server-mit-dnsmasq-einrichtet.html
- https://wiki.debian.org/HowTo/dnsmasq
- https://wiki.archlinux.org/index.php/dnsmasq
Danke.