Ich verbinde mich oft gleichzeitig mit mehreren Netzwerken. Jedes dieser Netzwerke bietet eine Nameserver-Konfiguration über DHCP. ZB Netzwerk 1: (eth0):
domain company1.corp #
nameserver 192.168.0.253
nameserver 192.168.0.254
Netzwerk 2 (tun0):
domain company2.corp #
nameserver 10.102.204.51
nameserver 10.102.208.51
# Namen geändert
Bei gleichzeitiger Verbindung mit beiden Netzwerken:
# resolv.conf from NetworkManager
domain company1.corp, company2.corp
nameserver 192.168.0.253
nameserver 192.168.0.254
nameserver 10.102.204.51
# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 10.102.208.51
Das Auflösen von service.company2.corp funktioniert nicht, da der Vornamenserver nur die Namen von company1.corp kennt.
Von diesem Artikel inspiriert , habe ich openresolv (eine resolvconf-Implementierung) eingerichtet, um einen lokalen dnsmasq-Dienst auf meiner Arch Linux-Installation zu konfigurieren.
Wenn ich die Nameserver manuell mit resolvconf konfiguriere:
# resolvconf -d NetworkManager
# echo "domain company1.corp
nameserver 192.168.0.253
nameserver 192.168.0.254
" | resolvconf -a eth0
# echo "domain company2.corp
nameserver 10.102.204.51
nameserver 10.102.208.51
" | resolvconf -a tun0
Dann kann ich Namen sowohl von company1.corp als auch von company2.corp auflösen (der lokale dnsmasq-Server übernimmt dies.)
Beachten Sie, dass auflösungskonf -l nach der manuellen Konfiguration die beiden Konfigurationen separat anzeigt:
~ # resolvconf -l
# resolv.conf from tun0
domain company2.corp
nameserver 10.102.204.51
nameserver 10.102.208.51
# resolv.conf from eth0
domain company1.corp
nameserver 192.168.0.253
nameserver 192.168.0.254
Wenn Sie jedoch die Konfiguration von Network Manager durchführen lassen, sind die beiden Konfigurationen nicht getrennt, wie dies der Fall wäre, wenn Network Manager in /etc/resolve.conf schreiben würde
~ # resolvconf -l
# resolv.conf from NetworkManager
# Generated by NetworkManager
domain company1.corp, company2.corp
nameserver 192.168.0.253
nameserver 192.168.0.254
nameserver 10.102.204.51
# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 10.102.208.51
Meine Frage ist, wie ich den Netzwerkmanager dazu bringen kann, resolveconf korrekt aufzurufen, damit die Nameserver für jede Schnittstelle separat registriert werden. (Leider ist das Googeln dafür nutzlos, da Google denkt, dass "resolveconf" == "resolve.conf")
"resolvconf"
mit den Anführungszeichen. Setzen Sie bei Google immer Anführungszeichen um Eigennamen.