VPN-Nameserver bleibt nach der Trennung in resolv.conf

VPN-Nameserver bleibt nach der Trennung in resolv.conf

Ich verwende Network Manager (1.18.0-1) auf dem Arch Linux-System, wo resolvconfauch vorhanden ist (von openresolvdem 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:

  1. Nach der Verbindung schließt der NetworkManager-Prozess den VPN-Nameserver in dieresolv.conf
  2. in Bezug auf /etc/ppp/ip-up.d/00-dns.sh(unten) und gültig ist USEPEERDNS=1die resolvconfaufgerufen wird; es wird eine Sicherungskopie der resolv.confund ersetzen mit eigenen Nameserver-Eintrag
  3. nach der VPN-Trennung /etc/ppp/ip-down.d/00-dns.shruft resolvconfzum Löschen des Nameserver-Eintrags und zur Wiederherstellung des resolv.conf( resolv.conf.bakzu 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 netctlund 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

verwandte Informationen