De software ondersteunt het, dus het knooppunt biedt het aan. Die gevolgtrekking is vaak genoeg onjuist om een regel te zijn: een SoftEther-implementatie kan elke deelverzameling van zijn compatibele verbindingsmethoden inschakelen, en een openbaar knooppunt is een implementatie met een eigenaar en een configuratie. Waarmee je kunt verbinden hangt af van dat knooppunt, niet van de functielijst van het project dat het uitvoert. Juist in de kloof tussen beide leven de meeste tickets „het protocol is kapot“.

Wat de projectlijst echt belooft

De protocolfuncties van het project beschrijven waartoe de server in staat is. Een bepaald knooppunt schakelt sommige van die luisteraars in en andere niet, en de operator kan die verzameling wijzigen zonder de softwareversie aan te raken. Twee knooppunten op dezelfde build gedragen zich daarom anders, en een profiel dat tegen de ene werkt, bewijst niets over het volgende doel. De eigen lijst van het knooppunt weegt zwaarder dan de projectpagina wanneer je kiest waar je verbinding maakt.

Lees de lijst als vijf velden, niet als een menu: eindpunt, poort, transport, protocolfamilie en authenticatiemethode. Een openbaar knooppunt dat SSTP adverteert, heeft je verteld over een luisteraar op een poort; het heeft je niet verteld welk certificaat het presenteert, noch of je account daar werkt. Die vijf velden met je profiel vergelijken is sneller dan welke hoeveelheid herinstallatie van de client dan ook, en het levert een schriftelijke verwachting op die je later kunt testen.

Laat het profiel passen bij het eindpunt dat het noemt

Een native SoftEther-vermelding is niet automatisch een OpenVPN-configuratie, ook niet wanneer beide op één providerpagina onder één kop verschijnen. Wanneer een knooppunt zowel een TCP- als een UDP-luisteraar voor OpenVPN publiceert, behandel ze als twee eindpunten: een profiel dat van de een naar de ander is bewerkt, wijst naar een luisteraar die niemand heeft ingeschakeld. Het transportlabel in het bestand is deel van het adres, geen cosmetische instelling.

Dat de client een geïmporteerd bestand accepteert, bewijst dat het bestand parseert. Het zegt niets over de vraag of aan de andere kant een externe luisteraar wacht, en daarom is de eerste verbindingspoging de echte test. Vergelijk de remote-regel van het profiel met de aangekondigde host en poort van het knooppunt voordat je het protocol de schuld geeft.

Onderzoek de fase die mislukt

Een host die webverkeer beantwoordt, kan nog steeds de bedoelde VPN-dienst missen, en een host die één protocol weigert, is niet noodzakelijk voor alle uit de lucht. Die twee fouten sturen mensen dezelfde middag in tegengestelde richtingen. De een jaagt op een firewall die in orde is; de ander herinstalleert een client die nooit het probleem was. Onderzoek elk pad apart, zodat het antwoord één luisteraar beschrijft en niet de hele host.

Deze vijf controles dekken de gangbare methoden van openbare knooppunten. Voer ze uit vanaf hetzelfde netwerk dat de client gebruikt, want een gefilterde poort ziet er van veraf precies zo uit als een ontbrekende luisteraar.

nc -vz node.example 1194
nc -vz node.example 443
openvpn --config client.ovpn --verb 4
nmap -sU -p 500,4500 node.example
openssl s_client -connect node.example:443 -servername node.example
ResultaatFaseWat het uitsluit
Verbinding geweigerd of time-outTransportLuisteraar ontbreekt, gefilterd of verkeerde poort
TLS-handshake- of identiteitsfoutCertificaatBeschikbaarheid van het protocol; de luisteraar antwoordde
AUTH_FAILED of accountweigeringAuthenticatieHet eindpunt; het probleem zijn de inloggegevens
UDP 500 en 4500 stilIPsec-onderhandelingESP en L2TP zijn geblokkeerd vóór authenticatie

Koppel elke waargenomen fout aan zijn rij voordat je iets verandert. Een TLS-identiteitsfout bewijst dat de luisteraar bestaat, dus het herschrijven van het profiel naar een ander protocol zou werkend bewijs weggooien. Een geweigerde verbinding bewijst alleen dat deze poort niet antwoordde, wat een veel nauwere bewering is dan „het knooppunt ondersteunt geen OpenVPN“.

Bewaar de fout voordat je iets verandert

Noteer het exacte resultaat: een time-out, een certificaat-identiteitsfout, een accountweigering en een weigering op applicatieniveau zijn vier verschillende uitkomsten. Alleen de eerste gaat over een niet-beschikbaar protocol, en alleen de laatste gaat over toestemming na een geslaagde verbinding. De client resetten of van protocol wisselen vernietigt dat onderscheid, omdat de volgende fout met een andere geschiedenis en zonder basislijn om mee te vergelijken komt.

Verzwak de verificatie niet om een incompatibel profiel te laten lijken werken. Een uitgeschakelde certificaatcontrole verandert een duidelijke identiteitsfout in een verbinding met iets dat je niet wilde bereiken, en het resulterende succes is erger dan de oorspronkelijke fout omdat het verbergt welke fase verkeerd was.

Controleer opnieuw per knooppunt, elke keer

De native opties SSL, OpenVPN, L2TP/IPsec en SSTP op een lijst van openbare knooppunten beschrijven de configuratie van dat knooppunt op dat moment. Dezelfde software kan elders een andere set bieden, en een provider kan een luisteraar intrekken tussen je bladwijzer en je volgende poging. Oude notities beschrijven oude implementaties.

Leg het geverifieerde profiel vast met zijn eindpunt en methode, en herhaal daarna het onderzoek wanneer het knooppunt verandert of de verbinding begint te falen. De SoftEther-protocolspecificatie is de referentie voor wat de software kan; de eigen lijst van het knooppunt is de referentie voor wat het doet. Houd de twee documenten gescheiden en de diagnose wordt korter.

Gerelateerde artikelen