Mac-VPN kobler seg selv til igjen rett etter at du trykker Koble fra
En overvåker som behandler hver frakoblet tilstand som en feil, vil kjempe mot Koble fra-knappen. Hold intensjon og observert tilstand fra hverandre, og begrens deretter forsøkene.
Å trykke Koble fra virker, og ti sekunder senere kommer tunnelen tilbake likevel. Den løkken er sjelden VPN-klienten som oppfører seg feil; det er et gjenopprettingsskript som alltid bare stilte ett spørsmål, «er den nede?», og svarte på det ved å koble til. Når du skiller spørsmålet brukeren svarte på fra spørsmålet systemet rapporterer, blir rettelsen en liten mengde tilstand i stedet for en lengre venting.
To spørsmål, ikke ett
Bør denne profilen være tilkoblet akkurat nå, og hva rapporterer systemet for øyeblikket? Det er forskjellige spørsmål med forskjellige eiere, og en gjenopprettingspolicy trenger begge før den handler. Intensjon er noe verktøyet ditt bestemmer og husker. Observert tilstand er noe plattformen forteller deg.
| Intent | What you observe | What to do |
|---|---|---|
| Wanted | Dropped unexpectedly | Allow one supported recovery attempt |
| Paused by the user | Disconnected | Do nothing until intent changes |
| Wanted | Already connecting | Wait instead of starting a rival attempt |
| Wanted | Authentication needs a person | Prompt, then stop replaying credentials |
Les radene som en policy og ikke som en liste over tilfeller. Den andre raden er den de fleste skript utelater, og det er den eneste raden som skiller en overvåker fra en maskin som insisterer på å ha rett.
Observert status er ikke en preferanse
Apples Network Extension-statusmodell rapporterer tilstandene connecting, connected, disconnecting, disconnected og recovery. Alle fem beskriver forbindelsen. Ingen av dem sier «brukeren ba om at denne profilen skulle forbli satt på pause», for det er ikke en tilkoblingstilstand i det hele tatt. Klienter som ikke er bygget på det rammeverket, eksponerer sine egne støttede kontroller og statuskall, og de trekker den samme linjen i sitt eget vokabular.
Konsekvensen er at en frakoblet status aldri kan tolkes alene. Det betyr én av minst tre ting: tunnelen falt, brukeren stoppet den, eller systemet er mellom forsøk. Bare din egen registrering av intensjon kan skille dem. Skriv ned den registreringen, behold den gjennom omstarter hvis den må overleve en omstart, og oppdater den i det øyeblikket brukeren handler i stedet for å utlede den senere fra en logglinje.
scutil --nc list
scutil --nc status "Office VPN"
Hvem ellers har lov til å starte denne profilen
En pause som hjelperen din lover, er bare så sterk som de andre eierne av samme profil. En On Demand-regel, en administrert konfigurasjon eller en annen klient kan alle be om en tilkobling, og hjelperen din vil se ødelagt ut mens den oppfører seg nøyaktig som skrevet.
Finn hver mekanisme som kan starte profilen før du lover å respektere en pause, og skriv ned hvilken som vinner. Når en administrert tjeneste bevisst holder tilbake et personlig pausevalg, er det en administratorbeslutning om policy, ikke et gap et skript skal fylle ved å kjempe mot administrasjonen.
Gjør gjentakelsene kjedelige
Begrens antall forsøk og gjør hvert enkelt lydhørt overfor noe som endret seg: nettverket kom tilbake, gatewayen svarte, legitimasjonsforespørselen ble fullført. En utilgjengelig gateway, en utløpt identitet og en avvist andre faktor trenger tre forskjellige svar, og en stram løkke gir alle tre det samme.
Se på hva et raskt nytt forsøk faktisk produserer på skjermen. Gjentatte dialoger som brukeren avviser er verre enn én tydelig feilmelding, og de trener folk til å klikke seg gjennom forespørsler uten å lese dem.
Pause og trafikkpolicy er separate løfter
En tunnel brukeren har satt på pause, lar ofte trafikken være blokkert med vilje, og det er hele poenget med en policy i kill switch-stil. Det betyr at Pause bør love nøyaktig én ting: gjenopprettingen stopper. Den bør ikke stille endre hva nettverket tillater.
Bestem trafikkatferden separat, dokumenter den ved siden av Pause-kontrollen, og hold den konsistent enten tunnelen er satt på pause, mislykket eller fraværende. Ellers lærer brukeren at det å trykke Koble fra gjør noe uforutsigbart, og neste støttebillett handler om et nettverk som «noen ganger slutter å virke» uten synlig grunn.