Miksi Macin VPN katkeaa, kun kytket iPhonen USB:llä
USB:llä kytketty iPhone voi lisätä hotspot-reitin tai Xcoden laitelinkin. Tarkista palvelu, reitti ja asiakasohjelman virhe ennen kuin poistat mitään.
Kytket iPhonen latautumaan, ja minuutin kuluttua Macin VPN lakkaa välittämästä liikennettä. Järjestelmäasetukset näyttävät uuden palvelun nimeltä iPhone USB, ja ilmeinen siirto on poistaa se. Se siirto on usein väärä. Palvelu voi olla puhelimen Henkilökohtainen hotspot tai linkki, jota Xcode ja laitetyökalut käyttävät puhelimen kanssa puhumiseen, ja ne käyttäytyvät riittävän eri tavalla, jotta tunnistus on tehtävä ennen poistoa.
Vaihe 1: Lue palvelu, jonka puhelin todella loi
Avaa Järjestelmäasetukset ja sitten Verkko, ja vertaa palveluluetteloa puhelimen ollessa irrotettuna ja kytkettynä. Nykyisessä macOS:ssä palvelu näkyy nimellä iPhone USB. Huomaa, onko se aktiivinen, missä se on palvelujärjestyksessä ja käyttääkö Mac sitä oletusreittiin. Palvelujärjestys on tärkeä, koska macOS valitsee korkeimman aktiivisen palvelun, joka pääsee kohteeseen, ei sitä, jonka nimen tunnet.
Applen Henkilökohtaisen hotspotin ohje kuvaa mekanismin: kun Henkilökohtainen hotspot on puhelimessa käytössä, USB-kytkentä voi saada Macin käyttämään puhelimen matkapuhelinliittymää, vaikka halusit vain ladata. Se ei ole VPN-asiakasohjelman vika; reititystaulu seuraa palvelua, joka nousi ennen Wi-Fiä.
Jos palvelu on olemassa mutta pysyy passiivisena puhelimen ollessa kytkettynä, näet todennäköisesti vain latausyhteyden tai laitelinkin, et hotspotin. Säilytä tämä ero, koska kaksi seuraavaa vaihetta testaavat sitä sen sijaan, että arvaisivat kuvakkeesta.
Vaihe 2: Tarkista, mitä reittiä VPN-päätepiste käyttää
Lue reitti VPN-palvelimen ratkaistuun osoitteeseen, ei verkkosivustoon. route -n get on vain lukemista varten ja tulostaa käyttöliittymän ja yhdyskäytävän, jota ydin käyttäisi, ja molemmat rivit ovat tärkeitä.
scutil --dns | head -20
route -n get 203.0.113.10Yllä oleva osoite on dokumentaation paikkamerkki. Korvaa se päätepisteellä, jonka asiakasohjelmasi näyttää, ja käytä route -n get -inet6 IPv6-päätepisteelle. Vertaa tulostetta puhelimen ollessa irrotettuna ja kytkettynä, äläkä lisää tai poista reittejä kahden lukeman välillä. Jos käyttöliittymä vaihtuu en0:sta iPhone USB -käyttöliittymäksi, hotspot-reitti voitti haun ja VPN:n ulompi yhteys kulkee nyt matkapuhelinverkon kautta.
Reittimuutos ei selitä kaikkia vikoja. Asiakasohjelma voi yhä päästä palvelimelle ja epäonnistua myöhemmin tunnelin sisäisessä liikenteessä, koska uudella polulla on eri MTU tai operaattori estää protokollan. Lue asiakasohjelman oma virhe ennen kuin muutat mitään: ulompi kättelyn aikakatkaisu viittaa tavoitettavuuteen, kun taas muodostettu tunneli, joka lakkaa välittämästä liikennettä, viittaa MTU:hun, DNS:ään tai käytäntöön.
Vaihe 3: Erota hotspot laiteviestintälinkistä
Xcode 15 ja uudemmat puhuvat USB:llä kytketyn laitteen kanssa verkkopohjaisen kanavan kautta, joka sisältää linkki-paikallisen IPv6:n, joten kehitys-Mac voi näyttää ylimääräisen käyttöliittymän, jolla ei ole mitään tekemistä internetyhteyden kanssa. Applen tekninen muistio TN3158 dokumentoi tämän käyttäytymisen ja varoittaa, että VPN tai suodatus voi häiritä sitä. Tämä on hotspot-ongelman käänteinen puoli: VPN ei hajoa siksi, että puhelin tarjoaa internetin; laiteyhteys hajoaa siksi, että VPN kaappaa sen.
Kaksi havaintoa erottaa tapaukset ilman pakettikaappausta. Ensinnäkin, tarkista, onko käyttöliittymällä reititettävä osoite ja oletusreitti vai vain linkki-paikallinen fe80::-osoite; vain linkki-paikallinen tarkoittaa, ettei internetpolkua ole. Toiseksi, sulje VPN ja katso, pääseekö Xcode taas laitteeseen. Jos pääsee, VPN:n reitit tai sisältösuodatin kaappaavat linkki-paikallisen liikenteen, ja korjaus kuuluu jaetun tunnelin tai suodattimen kokoonpanoon, ei Verkko-paneeliin.
ifconfig | grep -A4 -E '^en[0-9]+:'
netstat -rn -f inet6 | headÄlä arvioi vain käyttöliittymän nimen perusteella. macOS luo ja tuhoaa näitä käyttöliittymiä laitteiden kytkeytyessä, ja en-numero jaetaan ajonaikaisesti, joten sama Mac voi näyttää eri numeron uudelleenkäynnistyksen tai kaapelin vaihdon jälkeen.
Vaihe 4: Toista vika yhdellä muuttujalla kerrallaan
Kun tiedät, mikä palvelu on mukana, toista ongelma kiinteässä järjestyksessä. Aloita puhelin irrotettuna ja VPN kytkettynä. Kytke puhelin Henkilökohtaisen hotspotin ollessa pois päältä, odota Verkko-luettelon tasaantumista ja aja reittikysely uudelleen. Irrota, ota Henkilökohtainen hotspot käyttöön, kytke uudelleen ja toista. Kirjoita käyttöliittymä, yhdyskäytävä ja asiakasohjelman virhe kullekin kolmelle tilalle, niin sinulla on vertailu muistin sijaan.
Jos VPN epäonnistuu vain hotspot-tilassa, pidä puhelin poissa siltä polulta: kytke Henkilökohtainen hotspot pois latauksen ajaksi tai siirrä iPhone USB -palvelu Wi-Fin alapuolelle palvelujärjestyksessä. Jos se epäonnistuu jokaisessa kytketyssä tilassa, myös hotspotin ollessa pois päältä, katso, miten asiakasohjelma käsittelee verkkosiirtymää. Jotkin asiakasohjelmat purkavat tunnelin, kun ensisijainen palvelu vaihtuu, ja tarvitsevat uudelleenyhdistämisen; se on asiakasohjelman käyttäytymistä, ei puhelimen vika.
Muuta yhtä asiaa yritystä kohden. Palvelun poistaminen, VPN-kokoonpanon nollaus ja asiakasohjelman uudelleenasennus samalla minuutilla jättävät sinut toimivan Macin kanssa ja ilman käsitystä siitä, mikä toimenpide sen korjasi.
Vaihe 5: Päätä, mitä pidät ja mitä vahvistat
Jätä laitelinkki rauhaan. Käyttöliittymän poistaminen, jota Xcode käyttää, ei korjaa VPN-reittiä, ja se rikkoo laitekäyttöönoton seuraavaan kytkentään asti. Jos hotspot-palvelu on todella ei-toivottu, kytke ensin puhelimesta Henkilökohtainen hotspot pois; se on dokumentoitu säätö, ja se kestää uudelleenkäynnistyksen.
Jos kuitenkin poistat palvelun, poista se, jonka tunnistit, ja vahvista sitten kaksi asiaa: reitti VPN-päätepisteeseen on taas odotetulla käyttöliittymällä, ja tunneli välittää liikennettä sisäiseen osoitteeseen, ei vain internetiin. Merkitse muistiin palvelujärjestys ja asiakasohjelman versio, koska macOS-päivitys voi muuttaa sitä, miltä puhelin näyttää.
Luokittele sitten vika, jonka todella näit. Kättelyn aikakatkaisu, MTU:n pysähdys tunnelin noustua ja operaattorilta tulevat DNS-vastaukset ovat kolme eri ongelmaa kolmella eri korjauksella. USB-palvelu on laukaisin kaikissa kolmessa; syy se on harvoin.