Macin VPN-tila: tarkista profiili, resurssi vai virta
Yksi totuusarvo ei voi vastata kolmeen eri kysymykseen. Valitse ensin subjekti, käytä sitten rajapintaa, joka sen todella raportoi, ja säilytä epäonnistumisen syyt.
Joku kysyy, onko VPN pystyssä, ja kolme eri ihmistä tarkoittaa sillä kolmea eri asiaa. Operaattori tarkoittaa, että Office-profiili lopetti tunnistautumisen. Ajastin tarkoittaa, että yksityinen API vastaa. Turva-arviointi tarkoittaa, että tämä nimenomainen pyyntö lähti suojattua polkua. Skripti, joka greppaa reititystaulusta liitännän nimeä, ei vastaa yhteenkään niistä luotettavasti.
Siksi tarkistuslista alkaa ennen kuin yksikään komento ajetaan: nimeä tarkistuksen subjekti. Kaikki sen jälkeen on sen rajapinnan valintaa, joka voi todella raportoida sen.
Nimeä subjekti ennen komentoa
Kirjoita kysymys predikaattina, jolla on subjekti. „Onko Office-profiili yhdistetty“ on testattavissa ja sillä on omistaja, joka osaa vastata. „Pääseekö tämä työ sisäiseen APIin“ on toinen predikaatti, jolla on erilainen epäonnistumistapa. „Käyttääkö tämä pyyntö suojattua polkua“ on kolmas, ja se on ainoa, joka puhuu yhdestä virrasta eikä koko koneesta.
Niiden sekoittaminen tuottaa automaatiota, joka valehtelee itsevarmasti. Työ, joka tarkistaa profiilin tilan ja olettaa sitten API:n olevan valmis, hälyttää jonkun väärässä kerroksessa, eikä työ, joka pingaa APIa ja kutsuu sitä tunnelin todisteeksi, erota toimivaa VPN:ää kannettavasta, joka sattuu olemaan toimiston verkossa.
Yksi profiili: kysy siltä, joka sen omistaa
Natiiville Mac-palvelulle verkkoyhteyden säätimet kohdassa scutil raportoivat juuri tämän. Ne lukevat nimetyn kokoonpanon tilan sen sijaan, että päättelevät jotain liitännästä.
scutil --nc list
scutil --nc status "Office VPN"
Profiilinimen siinä komennossa on oltava listan tulosteesta saatu oikea nimi, ei arvaus. Tämä on vain luku -polku natiiveille palveluille, eikä se takaa, että kolmannen osapuolen asiakas edes näkyy siellä; tarjoaja, joka hallitsee omaa tunneliaan, tarvitsee oman tuetun tilan rajapintansa. Tarkista lista ennen tilakutsun kirjoittamista, jotta puuttuva nimi epäonnistuu näkyvästi sen sijaan, että se täsmäisi hiljaa ei mihinkään.
Network Extension -sovelluksen sisällä lue tila hallinta- ja yhteysolioista järjestelmän sijaan. Varo laajuutta tässä: tallennettujen kokoonpanojen lataaminen palauttaa vain ne, jotka kutsuvat sovellus on luonut, joten tyhjä tulos tarkoittaa „ei yhtään minun“, ei „ei VPN:ää tässä Macissa“. Erota epäonnistunut kysely vahvistetusta irrotetusta tilasta ja käsittele siirtymätiloja omina tuloksinaan sen sijaan, että yrittäisit uudelleen yhteyttä, joka on jo nousemassa.
Yksi työ: valmius on erillinen predikaatti
Jos kysymys on, voiko työ jatkaa, testaa työn todellinen riippuvuus sen jälkeen, kun yhteyden omistaja on ilmoittanut aiotun tilan. Rajattu valmiustarkistus yksityistä resurssia vastaan on oikea muoto: se todistaa, mitä työ tarvitsee, eikä enempää.
Se ei siltikään voi todistaa, että jokainen koneen pyyntö käyttää tunnelia, eikä sitä pitäisi raportoida ikään kuin voisi. Samoin resurssi, joka vastaa tavallisen verkon kautta, ei ole todiste VPN:stä, minkä vuoksi kaksi tarkistusta pysyvät erillään, vaikka molemmat onnistuisivat.
Kun työ todella vaatii suojatun polun, se vaatimus tarvitsee käyttöönoton oman toteutussuunnittelun: reititys, jaetun tunnelin poissulut, palomuurisääntö tai sovellustason vaatimus. Päätepisteen saatavuus on tosiasia palvelimesta. Toteutus on tosiasia asiakkaan kokoonpanosta, eikä toinen todista toista.
Yksi virta: tarkastele valittua reittiä
Yksittäiselle virralle katso kohde, osoiteperhe ja lähdekonteksti reititysdiagnostiikalla, joka raportoi valitun polun juuri sille kohteelle. Tämä tuloste nimeää todella käytetyt liitännän ja lähdeosoitteen, mikä on paljon vahvempi väite kuin oletusreitin merkintä.
Laajat selaintarkistukset vastaavat täysin eri kysymykseen. Julkisen IP:n tulos kuvaa, miltä yksi pyyntö näytti yhden palvelimen näkökulmasta, eikä se kerro mitään yksityisestä DNS:stä, pois jätetyistä sovelluksista tai toisesta verkkokontekstista, jota jokin toinen prosessi käyttää.
Palauta tulos, jota kutsuja voi käyttää
Valitse palautusmuoto, joka sopii predikaattiin: nimetty profiilin tila, resurssin valmiusarvio tai eksplisiittinen tuntematon ja todisteet, jotka sen tuottivat. Pidä kokoonpanon identiteetti ja epäonnistumisen syy arvion rinnalla.
Juuri viimeinen tapa tekee eron automaation, joka auttaa, ja automaation, joka kätkee ongelmat, välillä. „Office VPN: irrotettu, viimeinen yritys epäonnistui tunnistautumisessa“ kertoo operaattorille, mistä katsoa. „VPN on alhaalla“ kutsuu uudelleenasennukseen, ja „liitäntä löytyi“ kutsuu väärään kaikki-on-kunnossa-tilaan.
Network Extension -viite tallennettujen tunnelikokoonpanojen lataamisesta on paikka, jossa vahvistat kutsuvan sovelluksen laajuuden ennen kuin rakennat sen päälle mitään.