De VPN-client verwijderen, opnieuw opstarten en dan ontdekken dat de browser niets kan laden is een veelvoorkomende volgorde op Ubuntu. De tunnel is weg, maar het beleid dat verkeer daarheen stuurde niet, en op Ubuntu leven die resten meestal in NetworkManager en niet in het pakket. Een verbindingsprofiel en een dummy-interface die tijdens runtime zijn aangemaakt horen bij geen enkel pakket, dus het verwijderen van het pakket verwijdert ze niet.

De tunnel is weg, het beleid niet

Een kill switch werkt door het netwerk onbruikbaar te maken zonder de tunnel. Wanneer de client wordt verwijderd terwijl die toestand actief is, blijft er niets over om hem uit te schakelen. Het resultaat lijkt precies op een kapotte netwerkadapter en is meestal een profiel dat een route vasthoudt.

Daarom herstelt herinstallatie soms de verbinding: het maakt het proces opnieuw aan dat zijn eigen beleid kan terugdraaien. Een client die werd verwijderd terwijl zijn schakelaar actief was, liet een toestand achter die niemand meer opruimt.

Lees de objecten die het pakket nooit bezat

Lees de toestand voordat u die wijzigt. Lijst apparaten, actieve verbindingen en beide routetabellen op, en zoek dan naar een dummy-apparaat dat zich als verbonden meldt of een standaardroute die daarheen wijst. IPv4 en IPv6 falen afzonderlijk, dus een werkende ping naar een adres met gebroken naamresolutie wijst op een ander object dan een dode route. Een dummy-apparaat met een standaardroute verklaart de hele storing op zichzelf.

nmcli device status
nmcli connection show --active
ip -4 route
ip -6 route

Noteer wat u vindt, want de oplossing is om één specifiek object te verwijderen in plaats van alles te resetten. Alles breder riskeert een tweede storing. Dat is het verschil tussen een reparatie en een gok.

Een lege routetabel met een verbonden apparaat is een andere fout, en die wijst op DHCP en niet op een achtergebleven profiel. Lees de lease voordat u iets bewerkt.

Verwijder het profiel, niet het sleutelbestand

Verwijder het profiel via NetworkManager in plaats van het sleutelbestand te verwijderen. Het bestand verwijderen laat het profiel in het geheugen actief tot de volgende herstart, waardoor een correcte reparatie onbetrouwbaar lijkt. Herstart daarna de dienst en lees de apparatenlijst opnieuw. Het is de herstart die de verwijdering echt maakt.

sudo nmcli connection delete pvpn-killswitch
sudo systemctl restart NetworkManager

Als een dummy-link overleeft, verwijder die link dan ook en test daarna een adres en een naam afzonderlijk. Schone routing met een mislukte naam wijst op DNS, terwijl een mislukt adres op een route of een firewall wijst.

Controleer de opstart-hook voordat hij zich herhaalt

Sommige resten installeren zichzelf bij elke opstart opnieuw. Een handgeschreven unit of een if-up-script dat firewallregels toevoegt, blijft dat doen nadat het pakket weg is, dus de storing komt terug en de eerdere reparatie lijkt geluk. Doorzoek de unit-bestanden en de netwerkhooks voordat u opnieuw opstart. De unit-naam is meestal de aanwijzing.

systemctl list-unit-files | grep -i vpn
grep -rl -i vpn /etc/systemd/system /etc/network/if-up.d

Verwijder of maskeer het specifieke bestand, start dan één keer opnieuw en bevestig dat de toestand zonder tunnel is wat u wilt. Die laatste herstart is de test, want een oplossing die alleen tot de volgende opstart standhoudt is geen oplossing. Bewaar de notitie daarna bij de machine. De nmcli-referentie dekt de apparaat- en verbindingsopdrachten die hierboven zijn gebruikt.

Gerelateerde artikelen