Ich verwende Network Manager (1.18.0-1) auf dem Arch Linux-System, wo
resolvconf
auch vorhanden ist (von openresolv
dem eine Basispaketabhängigkeit besteht netctl
).
Wenn ich mich über NetworkManager mit dem VPN-Server verbinde, tritt nach der Trennung der VPN-Verbindung ein Problem mit dem dauerhaften DNS-Eintrag auf. Ich habe teilweise herausgefunden, warum:
- Nach der Verbindung schließt der NetworkManager-Prozess den VPN-Nameserver in die
resolv.conf
- in Bezug auf
/etc/ppp/ip-up.d/00-dns.sh
(unten) und gültig istUSEPEERDNS=1
dieresolvconf
aufgerufen wird; es wird eine Sicherungskopie derresolv.conf
und ersetzen mit eigenen Nameserver-Eintrag - nach der VPN-Trennung
/etc/ppp/ip-down.d/00-dns.sh
ruftresolvconf
zum Löschen des Nameserver-Eintrags und zur Wiederherstellung desresolv.conf
(resolv.conf.bak
zu diesem Zeitpunkt) nicht erreichbaren Nameserver-Eintrags auf
Der schmutzige Hotfix besteht darin, zu deaktivieren /etc/ppp/ip-up.d/00-dns.sh
(oder die Zeile einfach auskommentieren /usr/bin/resolvconf ...
). Ich möchte es nicht deinstallieren openresolv
, da dadurch eine Abhängigkeit zerstört wird netctl
und ich dieses Basispaket auch möchte.
Da NetworkManager kein „Standard“-Netzwerktool in Arch Linux ist, bin ich mir nicht sicher, ob dies eine Art Fehler ist oder welche Einstellungen mir fehlen. Wie kann ich das Problem richtig lösen?
/etc/ppp/ip-up.d/00-dns.sh:
#!/bin/sh
if [ "$USEPEERDNS" = "1" -a -f /etc/ppp/resolv.conf ]; then
if [ -x /usr/bin/resolvconf ]; then
/usr/bin/resolvconf -a ${IFNAME} </etc/ppp/resolv.conf
else
[ -e /etc/resolv.conf ] && mv /etc/resolv.conf /etc/resolv.conf.backup.${IFNAME}
mv /etc/ppp/resolv.conf /etc/resolv.conf
chmod 644 /etc/resolv.conf
fi
fi