Odinštalovať klienta VPN, reštartovať a potom zistiť, že prehliadač nič nenačíta, je na Ubuntu bežná postupnosť. Tunel je preč, ale pravidlo, ktoré naň smerovalo prevádzku, nie, a na Ubuntu tieto zvyšky zvyčajne žijú v NetworkManageri, nie v balíku. Profil pripojenia a fiktívne rozhranie vytvorené za behu nepatria žiadnemu balíku, takže odstránenie balíka ich neodstráni.

Tunel je preč, pravidlo nie

Kill switch funguje tak, že bez tunela urobí sieť nepoužiteľnou. Keď je klient odstránený, kým je tento stav aktívny, nezostane nič, čo by ho vypnulo. Výsledok vyzerá presne ako pokazený sieťový adaptér a zvyčajne ide o profil, ktorý drží trasu.

Preto preinštalovanie niekedy obnoví pripojenie: znovu vytvorí proces, ktorý vie zrušiť vlastné pravidlo. Klient odstránený za aktívneho prepínača zanechal stav, ktorý už nikto neuklidí.

Prečítajte objekty, ktoré balík nikdy nevlastnil

Prečítajte stav skôr, než ho zmeníte. Vypíšte zariadenia, aktívne pripojenia a obe smerovacie tabuľky, potom hľadajte fiktívne zariadenie, ktoré hlási pripojenie, alebo predvolenú trasu, ktorá naň ukazuje. IPv4 a IPv6 zlyhávajú oddelene, takže fungujúci ping na adresu s pokazeným prekladom názvov ukazuje na iný objekt ako mŕtva trasa. Fiktívne zariadenie s predvolenou trasou vysvetlí celý výpadok samo.

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

Zapíšte, čo nájdete, pretože oprava je vymazať jeden konkrétny objekt a nie resetovať všetko. Čokoľvek širšie riskuje druhý výpadok. To je rozdiel medzi opravou a hádaním.

Prázdna smerovacia tabuľka s pripojeným zariadením je iná porucha a ukazuje na DHCP, nie na zvyškový profil. Pred akoukoľvek úpravou si prečítajte prenájom.

Vymažte profil, nie súbor s kľúčom

Vymažte profil cez NetworkManager, namiesto odstraňovania súboru s kľúčom. Vymazanie súboru nechá profil v pamäti aktívny do ďalšieho reštartu, čo robí správnu opravu nespoľahlivou. Potom reštartujte službu a znova prečítajte zoznam zariadení. Práve reštart robí vymazanie skutočným.

sudo nmcli connection delete pvpn-killswitch
sudo systemctl restart NetworkManager

Ak fiktívne spojenie prežije, odstráňte aj to spojenie, potom otestujte adresu a názov oddelene. Čisté smerovanie s nefunkčným názvom ukazuje na DNS, kým nefunkčná adresa ukazuje na trasu alebo firewall.

Skontrolujte háčik pri štarte, kým sa to nezopakuje

Niektoré zvyšky sa pri každom štarte samy preinštalujú. Ručne napísaná jednotka alebo skript if-up, ktorý pridáva pravidlá firewallu, to robí ďalej aj po zmiznutí balíka, takže výpadok sa vracia a predchádzajúca oprava vyzerá ako šťastie. Pred ďalším reštartom prehľadajte súbory jednotiek a sieťové háčiky. Názov jednotky to zvyčajne prezradí.

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

Odstráňte alebo zamaskujte konkrétny súbor, potom raz reštartujte a potvrďte, že stav bez tunela je to, čo chcete. Ten posledný reštart je test, pretože oprava, ktorá vydrží len do ďalšieho štartu, nie je oprava. Potom majte poznámku pri stroji. Referenčná príručka nmcli pokrýva príkazy pre zariadenia a pripojenia použité vyššie.

Súvisiace články