NetworkManager: DHCP-DNS überschreiben

Unter Linux wird für jede Verbindung (LAN und DMZ) die Übernahme der vom DHCP-Server gelieferten DNS-Server deaktiviert und stattdessen werden manuell feste DNS-Server gesetzt, damit /etc/resolv.conf ausschließlich die gewünschten internen Nameserver enthält und nicht durch externe DHCP-Daten überschrieben wird.

nmcli connection show
LAN	abcd1234-ab12-cd34-ef56-abcdef123456	ethernet	enp87s0
DMZ	1234abcd-12ab-34cd-56ef-fedcba654321	ethernet	enx00e04ce57690
lo	deadbeef-dead-beef-dead-beefdeadbeef	loopback	lo           

Verbindung „LAN“

nmcli con modify LAN ipv4.ignore-auto-dns yes
nmcli con modify LAN ipv4.dns "192.168.0.254 192.168.0.4"

Verbindung „DMZ“

nmcli con modify DMZ ipv4.ignore-auto-dns yes
nmcli con modify DMZ ipv4.dns "192.168.0.254 192.168.0.4"

Suchdomäne

nmcli connection modify LAN ipv4.dns-search "it.lan"
nmcli connection modify DMZ ipv4.dns-search "it.lan"

Neu starten

nmcli connection down LAN && nmcli connection up LAN
nmcli connection down DMZ && nmcli connection up DMZ

Ergebnis

Die Datei /etc/resolv.conf sieht anschließend so aus:

# Generated by NetworkManager
search it.lan
nameserver 192.168.0.254
nameserver 192.168.0.4

Verbindung anzeigen

nmcli con sho LAN | grep ipv4