Čo sa naozaj zmení, keď na macOS prepnete uložené konfigurácie VPN
Prepnutie uloženej VPN na Macu nie je výmena profilu. Pozrite sa, čo sa mení v trasách, DNS a prihlasovacích údajoch, a ako overiť tunel, ktorý ste skutočne dostali.
Otvoríte zoznam VPN, vyberiete inú uloženú položku a očakávate čistú výmenu: novú výstupnú adresu a všetko ostatné bez zmeny. To je predpoklad, ktorého sa treba najprv vzdať. Na macOS je uložená VPN plná sieťová služba, nie predvoľba, takže prepnutie služieb môže súčasne zmeniť smerovanie, DNS aj autentifikáciu. Riadok ponuky ukazuje, ktorá služba je aktívna; nehovorí, či tunel pod ňou zodpovedá vášmu zámeru.
Uložený zoznam nie je výber profilov
Každá položka v Systémovom nastavení > Sieť je samostatná služba s vlastnou adresou servera, účtom, metódou autentifikácie, servermi DNS a možnosťami, ako je Odosielať všetku prevádzku cez pripojenie VPN. Staršie verzie majú rovnaký zoznam v Systémových predvoľbách. Dve položky môžu ukazovať na rovnaký názov hostiteľa a napriek tomu sa správať inak, pretože protokol alebo rozšírenie klienta rozhoduje, ako sa tunel stavia.
Klienti tretích strán majú vlastné zoznamy. Tunnelblick číta konfigurácie zo svojho priečinka, WireGuard si drží vlastný zoznam tunelov a OpenVPN Connect ukladá profily vnútri aplikácie. Niektoré zaregistrujú konfiguráciu v systéme; iné držia všetko v aplikácii a v zabudovanom zozname sa nikdy neobjavia. „Prepnúť na uloženú“ preto znamená rôzne kroky podľa toho, ktorá aplikácia profil vlastní.
scutil --nc list vypíše služby VPN zaregistrované v systémovej konfigurácii, s názvami v úvodzovkách. Pri skriptovaní prepnutia používajte presne tieto názvy a nepredpokladajte, že zoznam pokrýva každý tunel tretej strany.
Čo prepnutie skutočne zmení
Pri zmene aktívnej služby sa hýbu štyri veci súčasne. Predvolená trasa ide za novým tunelom, ak táto služba posiela všetku prevádzku; zoznam resolverov sa zmení na servery DNS, ktoré služba určuje; nové pripojenia berú novú adresu tunela ako svoj zdroj; a použité prihlasovacie údaje patria novej službe. Natívna konfigurácia a profil aplikácie nie sú zameniteľné, ani keď oba končia na tej istej bráne.
| What you assume | What the system does |
|---|---|
| Same server name means same tunnel | Protocol, certificate and account are per service |
| All traffic follows the active VPN | Only when Send all traffic over VPN is on |
| DNS switches with the VPN | Only if that service defines DNS servers |
| Disconnect ends the connection | On Demand or a management profile can reconnect |
| Open sessions survive the switch | TCP sessions tied to the old address stall |
Na časti s DNS sa ľudia zvyknú zaseknúť. macOS udržiava poradie resolverov a scutil --dns ukazuje, ktoré resolvery sa používajú a na ktorom rozhraní. Služba VPN bez nastavených serverov DNS môže nechať odpovedať resolver z Wi-Fi, takže dostanete novú verejnú adresu so starým správaním DNS a usúdite, že prepnutie fungovalo na polovicu.
Prečo sa stará konfigurácia vracia
Keď sa odpojíte a tá istá služba sa o chvíľu pripojí znova, pozrite sa najprv na On Demand. Pravidlo pripojenia na požiadanie môže službu vrátiť, keď aplikácia preloží zodpovedajúcu doménu, a konfiguračný profil môže rovnaké pravidlo vynútiť. Zmazanie položky to málokedy vyrieši: konfigurácia nainštalovaná profilom sa zvyčajne vráti pri budúcej obnove profilu a ručná môže nechať heslo v Keychain, aj keď služba zmizla.
Spustenie druhej služby vždy nezastaví prvú. Podľa klienta a protokolu môžete skončiť s dvoma tunelmi a dvoma sadami trás a o tom, kto nesie prevádzku, rozhoduje poradie služieb a špecifickosť trasy, nie ikona, na ktorú ste klikli naposledy. Než budete predpokladať, že k výmene došlo, skontrolujte rozhrania.
Overte tunel, nie zaškrtnutie
Prejdite si vlastný pohľad systému, než siahnete na nastavenia.scutil --nc status "Name" hlási, čo si systém myslí;ifconfig ukazuje, či rozhranie utun má adresu;netstat -rn -f inet ukazuje, kam mieri predvolená trasa;scutil --dns ukazuje, ktorý resolver sa skutočne používa. Potom otvorte nové pripojenie a potvrďte výstupnú adresu, pretože stránka, ktorá už bola prihlásená, môže stále používať socket viazaný na starý tunel.
Ak DNS stále odpovedá z miestnej siete, porovnajte nakonfigurované servery služby so zoznamom resolverov. Ak predvolená trasa stále ukazuje na fyzické rozhranie, služba je split-tunnel alebo nie je úplne pripojená. Oboje je výsledok konfigurácie, nie dôkaz pokazeného klienta.
Poradie prepnutia bez prekvapení
- Poznamenajte si aktuálnu službu a či ju spravuje profil.
- Najprv ju odpojte, keď dva tunely nemôžu existovať vedľa seba.
- Pripojte cieľ a čakajte Pripojené, nie Pripájanie.
- Skontrolujte predvolenú trasu, zoznam resolverov a novú výstupnú adresu.
- Reštartujte aplikácie, ktoré držia dlhodobé relácie.
Ponechajte starú položku, kým nová neprejde týmito kontrolami, a každú položku pomenujte odlišne; rovnaké štítky sťažujú priradenie ďalšej poruchy. Pomocník Macu od Applu opisuje natívnu stranu na Nastavenie pripojenia VPN na Macu, čo je referencia, ktorú treba skontrolovať pred úpravou spravovanej konfigurácie.
Ak sa výber vráti, berte to najprv ako pravidlo alebo On Demand. Overte, komu konfigurácia patrí a či je nastavená na automatické pripojenie, a potom sa rozhodnite, či prepínate službu, alebo bojujete s profilom.