Hvernig á að greina virk VPN-göng út frá kóða á hvaða vettvangi sem er
Er göngin til, fer þessi áfangastaður í gegnum þau, eða svarar fjarlægi endinn? Þetta eru þrjár mismunandi athuganir og þrjú mismunandi merki.
„Er VPN-ið í gangi?” eru í raun þrjár spurningar í einni setningu. Hverrar þeirra kóðinn þinn þarf er fyrsta ákvörðunin, og það er sú sem flestar útfærslur sleppa. Er göng á þessu tæki, fer umferð til þessa áfangastaðar út um þau, eða svarar fjarlægi endinn með þeirri auðkennu sem þú býst við. Veldu eiginleikann, veldu síðan merkið sem mælir hann, og segðu að lokum í annálnum hverju þú mældir í raun.
Þrír eiginleikar, þrjú merki
Þjöppuð í eina línu hvort hafa spurningarnar þrjár þrjú mismunandi svör. Taflan hér að neðan er ákvörðunin sjálf, ekki samantekt á henni.
| Property | Signal that answers it | What it still leaves open |
|---|---|---|
| Existence | The platform's own connection state: RAS on Windows, NetworkManager on D-Bus on Linux, scutil on macOS | Tunnels of a type the platform does not manage, which includes most third-party clients |
| Path | A route lookup for the one destination, or a scoped proxy or interface key that names the tunnel | Whether the far end is the peer you trust |
| Identity | An authenticated response from the far end, or a source-address policy applied on the server | Which local interface carried the packets |
Lestu síðustu línuna hægt. Einkahýsill sem svarar sannar að eitthvað svaraði, ekki að svarið hafi komið í gegnum göngin, og það segir ekkert um hver er hinum megin. Ef eiginleikinn sem þú þarft er leiðin, mældu leiðina.
Tilvera: eigið ástand vettvangsins
Windows svarar þessu fyrir innfædd snið í gegnum Remote Access Service API. RasEnumConnections telur upp hvað er tengt, RasGetConnectStatus tilkynnir ástand einnar færslu, og RasGetLinkStatistics bætir við hraða, bætateljurum og aldri tengingarinnar. Takmarkanirnar eru kjarninn: OpenVPN, WireGuard og biðlarar framleiðenda skrá aldrei RAS-tengingu, þannig að heilbrigð göng af þeirri gerð sýna tóman lista og barnalegur kóði tilkynnir þau sem niðri.
Linux-skjáborð bjóða sama eiginleika í gegnum NetworkManager á D-Bus, þar sem PropertiesChanged á VPN-tengingarhlutnum breytir athuguninni í atburð og eiginleikinn State tilkynnir hvenær tengingin nær tengdu ástandi. Úr skel les nmcli connection show --active sömu upplýsingar, og það er það sem þú vilt við villuleit. macOS heldur þeim lista í System Configuration rammanum, með scutil sem skipanalínusýn sína. Öll þrjú lýsa tengingu sem vettvangurinn stýrir, og öll þrjú þagna um göng sem hann stýrir ekki.
Leið: hvert pakkinn fer í raun
Nafnsamsvörun er flýtileiðin sem allir grípa fyrst til: teldu upp viðmót, prófaðu strenginn gegn tun, tap, ppp eða ipsec, og taktu högg sem sönnun. Þetta er þumalputtaregla, og viðmótasafnið getur litið eins út hvort sem eitthvað hreyfist í gegnum það eða ekki. Eldri iOS-útgáfur svöruðu þannig og nýrri hættu, því sýnilegu viðmótin greindu ekki lengur á milli stöðu.
Það sem kom í staðinn þar er proxy-orðabók kerfisins. Meðan VPN er tengt skilar kallið á proxy-stillingar lyklum sem eru takmarkaðir við viðmótin sem tengjast göngunum, og þegar ekkert er tengt kemur orðabókin tóm til baka. Þetta er veikari fullyrðing en hljómar, því hún skráir trú kerfisins á að göng séu til, ekki hvaða áfangastaður notar þau.
Android hefur sína eigin útgáfu af gildrunni: vpn.connectivity útsendingin nær til móttakara sem eru tilkynntir í manifestinu í sumum útgáfum og móttakara sem eru skráðir á keyrslutíma í öðrum. Líttu á það sem besta tilraun, og hafðu beina könnun á bak við það.
Þegar áfangastaðurinn er það sem skiptir máli, spurðu leiðartöfluna í stað aðlögunarlistans. Þumalputtareglur sjálfgefins gáttar brotna á vélum með mörg net og á göngum sem setja upp sína eigin gátt.
Auðkenni: kannaðu fjarlæga endann
Lykja sem sendir ICMP bergmál til fjarlæga endans á nokkurra sekúndna fresti er ódýrasta athugun af þessari gerð, og hún mistekst í gagnlega átt. Beindu henni að vistfangi sem er aðeins til innan einkanetsins, því opinbert vistfang svarar um hvaða virku upptengingu sem er og sannar ekkert. Þar sem ICMP er síað gerir stutt TCP-tenging við þjónustugáttina sama verk.
Athugun á þjónarhlið hefur nákvæmlega eitt merki: upprunavistfang tengingarinnar. Að halda við sviðaskránni er viðhaldsvinna, og hún getur ekki aðskilið göng frá hvaða öðru neti sem er sem notar sama blokk.
Gróf stefna getur lifað með þessu. Auðkenni geta það ekki, svo staðfestu biðlarann í stað þess að treysta því hvaðan pakkarnir virðast koma.
Skráðu flokkinn, ekki dóm sinn
Haltu bilanaflokkunum aðskildum í annálnum: ekkert viðmót yfirhöfuð, viðmót til staðar en áfangastaðurinn óaðgengilegur, áfangastaður aðgengilegur en auðkenning hafnað. Þetta eru þrír mismunandi eigendur, og hver opnar aðra rannsókn.
Að steypa þeim saman í eitt „VPN niðri” sendir skýrsluna til teymis sem getur ekki lagað hana. Flokkurinn er gagnlega úttakið; dómurinn er það sem gerir hana ranga.