VPN-porteasken: trije rigels om te skriuwen foar’t jo fergelykje
Bepaal hokker portfraach jo echt hawwe: útgeande bestimming, yngeand publisearjen of it eigen ferfier fan ’e tunnel. Freegje de oanbieder dan allinnich dêrnei.
Portlisten foar VPN-tsjinsten wurde tusken fergelykingssiden kopiearre sûnder it detail dat beslút oft se fan belang binne: wa’t de ferbining begjint. In regel dy’t útgeand TCP 443 tastean, seit neat oer de fraach oft in oare host in harker op jo masine berikke kin. Skriuw trije aparte easken foar’t jo ien plan fergelykje, en markearje hokker jo taak echt nedich hat. De measte fergelikingen komme del op ien koarte fraach sadree’t dat bledsje bestiet.
Skied de eask foar’t jo hokker portlist dan ek lêze
Trije rigels dekke hast elk gefal: in bestimming foarby de tunnel berikke, eat publisearje sadat oaren ynferbine kinne, en de tunnel sels drage. Elke rigel falt om in oare reden, en in belied fan in oanbieder dat ien foldocht, kin de oare twa ûnoanroerd litte. It pleatsen fan jo taak yn ’e juste rigel kostet fiif minuten en sparret letter in diskusje.
| Line | Who starts it | What can block it | Question for the provider |
|---|---|---|---|
| Outbound destination | Your application | Egress filter on the exit node | Is this protocol and port allowed to that destination? |
| Inbound publishing | A remote peer | No mapping, no public address, short lifetime | Which protocol, which external port, and how long does the mapping last? |
| Tunnel transport | Your client to the gateway | The access network drops that protocol | Does the client offer a fallback the local network permits? |
Marketingútspraken fertsjusterje de trije rigels mei opsetsin. In P2P-tastimming beskriuwt in bestimmingsbelied, in tawijde adres beskriuwt in adres, en de bepaling dat der gjin portbeheiningen binne betsjut meast dat it plan se net opneamt. Gjin fan dy útdrukkingen beantwurdet de oaren.
Kies ien konkreet stream en skriuw it as in sin: begjinner, ferfier, port, adresfamylje, rjochting. In nachtlike back-upklient dy’t nei in ôfstân host oplaadt, is allinnich útgeand. In spiltsjinstserver op jo buro dêr’t freonen by oanslute, is yngeand. Beide troch ien tunnel rinne litte betsjut dat it bledsje beide rigels nedich hat, net in kompromis tusken har.
Útgeande tagong falt op bestimmingsbelied, net op de tunnel
Útgeand ferkear troch in oersettende poarte skept steat. It earste pakket fan in ynterne adres en port bout in oersettingsynskriuwing, en antwurden passe dêrby, wat it mappgedrach is dat yn RFC 3022 beskreaun wurdt. Dat meganisme is wêrom’t in browser-tab meastentiids sûnder ien portfersyk wurket.
Twa dingen brekke it noch altyd. It útgongsknooppunt kin bestimmingen of portnûmers filterje dy’t it as misbrûkber beskôget, en de applikaasje kin harkje op in port dy’t it útgongsbelied nea ferwachte hie. Freegje oer it bestimmingspear ynstee fan oer yngeande regels, en ferwachtsje ferskillende antwurden foar TCP en UDP.
Mjit foar’t jo diskusjearje. Rin dizze op ’e masine dy’t efter de tunnel stean sil, ien kear mei de tunnel del en ien kear mei him op:
ss -lntup | sort
nc -vz -w 3 203.0.113.10 443
curl -sS -o /dev/null -w '%{http_code}\n' --max-time 5 https://example.com
Deselde opdrachten, deselde bestimming, twa tunnelsteaten jouwe in operator in foar-en-nei fergeliking dêr’t er op hanje kin. Ferfang it dokumintaasje-adres troch de host dy’t jo echt nedich hawwe; wat telt is dat de fergeliking werhelle wurdt, net dat in nûmer yndrukwekkend liket.
Yngeand publisearjen freget in mapping, in adres en in libbensdoer
Neat fan bûten kin in ferbining nei jo harker begjinne, útsein as eat oan ’e iepenbiere kant wit wêr’t it it leverje moat. In statyske portreservearring dy’t de operator hâldt, in troch de klient frege mapping fia UPnP, NAT-PMP of PCP, en in rûtearre iepenbier adres binne trije ferskillende produkten mei trije ferskillende grinzen.
Stel fiif fragen oan elk fan har: hokker protokol, hokker eksterne port, oft de eksterne port ferskille mei fan ’e lokale, hokker adresfamylje it beslacht, en hoe lang’t de mapping in werferbining oerlibbet. In reservearring bûn oan in aktive sesje ferdwynt as dy sesje einiget, wat de planside ek seit.
Befêstigje earst de lokale helte, want in deade harker en in blokkearre yngeand paad sjogge der fan bûten itselde út:
ss -lntup | grep -E ':(8080|51820)\b'
python3 -m http.server 8080 --bind 0.0.0.0
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080
As it lokale fersyk 200 weromjout en in fersyk fan in netwurk dat jo net beheare noch altyd tiid útrint, sit de kleau oan ’e iepenbiere kant. Dat is it momint om protokol en eksterne port oan ’e operator te neamen ynstee fan ’e app by namme te beskriuwen.
It eigen ferfier fan ’e tunnel is in aparte fraach
Dragerports binne it lytste part fan it probleem en it maklikst op te sykjen. Standertwearden ferskille per protokol, en wat de klient úthannelje kin, telt mear as hokker planbeskriuwing dan ek.
| Client | Outer transport | Default port | When it helps |
|---|---|---|---|
| OpenVPN | UDP | 1194 | Default mode; needs outbound UDP to pass |
| OpenVPN | TCP | 443 | UDP is dropped and TCP 443 is not |
| WireGuard | UDP | 51820 | Short handshake; there is no TCP mode |
| IKEv2/IPsec | UDP | 500 and 4500 | Mobile clients; 4500 carries NAT traversal |
In netwurk dat útgeand UDP weismyt, akseptearret in TCP 443-tunnel en wegeret in UDP-ien, dus in fallbackmodus heart op it easkebledsje. It feroarjen fan ’e drager ferpleatst gjin applikaasjeport yn ’e tunnel en ferbreedt gjin bestimmingsbelied; dy bliuwe op har eigen rigels.
Fragmintaasje fertsjinnet ien probe wylst jo der binne, want in tunnel dy’t ferbynt en dan fêstrint op grutte oerdrachten hat meast de ferkearde MTU ynstee fan in sletten port:
ping -M do -s 1400 203.0.113.10 ping -M do -s 1372 203.0.113.10
Op Windows is deselde probe ping -f -l 1400 203.0.113.10. Set de MTU fan ’e tunnel ûnder de grutste grutte dy’t trochkomt, en test dan de oerdracht dy’t mislearre opnij.
Ferifiearje de trije rigels foar’t jo foar in plan betelje
Set de trije rigels op ien side en folje elke sel mei in mjitten resultaat ynstee fan in belofte. Dizze opdrachten leverje de lokale helte fan dy side yn sawat in minút:
ss -lntup | sort
nc -vz -w 3 203.0.113.10 443
python3 -m http.server 8080 --bind 0.0.0.0
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080
ping -M do -s 1400 203.0.113.10
Lês de útfier as in kontrôlelist. Útgeand wurket as de bestimming antwurdet mei de tunnel op. Yngeand wurket allinnich as in host bûten jo netwurk de harker op ’e eksterne port berikt. De drager wurket as de hânskud foltôge wurdt op in protokol dat jo tagongsnetwurk tastiet.
Twa gewoanten hâlde it bledsje earlik. Skriuw de datum en de klientferzje njonken elk resultaat, want sawol belied fan oanbieders as standertwearden fan klanten bewege. Freegje dan om de smelste mapping dy’t it stream tsjinnet, want in fersyk om alles iepen te meitsjen smyt meast in wegering of in byferkeap op ynstee fan in technysk antwurd.