Seznamy portů pro VPN služby se mezi srovnávacími stránkami kopírují bez detailu, který rozhoduje, zda na nich záleží: kdo spojení zahajuje. Pravidlo, které povoluje odchozí TCP 443, nic neříká o tom, zda se jiný host dostane k naslouchajícímu procesu na vašem počítači. Napište tři oddělené požadavky, než porovnáte jediný plán, a označte, které váš úkol skutečně potřebuje. Většina srovnání se scvrkne na jednu krátkou otázku, jakmile takový list existuje.

Rozdělte požadavek, než si přečtete jakýkoli seznam portů

Tři řádky pokrývají téměř každý případ: dosažení cíle za tunelem, zveřejnění něčeho, aby se ostatní mohli připojit, a přenos samotného tunelu. Každý řádek selhává z jiného důvodu a politika poskytovatele, která splní jeden, může nechat zbývající dva nedotčené. Zařazení úkolu do správného řádku trvá pět minut a ušetří pozdější hádku.

LineWho starts itWhat can block itQuestion for the provider
Outbound destinationYour applicationEgress filter on the exit nodeIs this protocol and port allowed to that destination?
Inbound publishingA remote peerNo mapping, no public address, short lifetimeWhich protocol, which external port, and how long does the mapping last?
Tunnel transportYour client to the gatewayThe access network drops that protocolDoes the client offer a fallback the local network permits?

Marketingová tvrzení tři řádky záměrně rozmazávají. Povolení P2P popisuje politiku cíle, vyhrazená adresa popisuje adresu a tvrzení o žádných omezeních portů obvykle znamená, že je plán nevyjmenovává. Žádná z těch frází neodpovídá na ostatní.

Vyberte jeden konkrétní tok a napište ho jako větu: iniciátor, transport, port, rodina adres, směr. Noční klient pro zálohování, který nahrává na vzdálený host, je pouze odchozí. Herní server na vašem stole, ke kterému se připojují přátelé, je příchozí. Provoz obou přes jeden tunel znamená, že list potřebuje oba řádky, ne kompromis mezi nimi.

Odchozí přístup selhává na politice cíle, ne na tunelu

Odchozí provoz přes překládající bránu vytváří stav. První paket z vnitřní adresy a portu vytvoří překladovou položku a odpovědi se s ní shodují, což je chování mapování popsané v RFC 3022. Právě tento mechanismus vysvětluje, proč karta prohlížeče obvykle funguje bez jakéhokoli požadavku na port.

Dvě věci to stále kazí. Výstupní uzel může filtrovat cíle nebo čísla portů, která považuje za zneužitelná, a aplikace může naslouchat na portu, který výstupní politika vůbec nečekala. Ptejte se na dvojici cílů, ne na příchozí pravidla, a čekejte různé odpovědi pro TCP a UDP.

Měřte, než začnete argumentovat. Spusťte tohle na stroji, který bude stát za tunelem, jednou s vypnutým tunelem a jednou se zapnutým:

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

Stejné příkazy, stejný cíl, dva stavy tunelu dávají operátorovi srovnání před a po, podle kterého může jednat. Nahraďte dokumentační adresu hostem, který skutečně potřebujete; důležité je, aby se srovnání opakovalo, ne aby nějaké číslo vypadalo působivě.

Příchozí zveřejnění potřebuje mapování, adresu a dobu života

Nic zvenčí nemůže zahájit spojení s vaším naslouchajícím procesem, pokud něco na veřejné straně neví, kam ho doručit. Statická rezervace portu, kterou drží operátor, mapování vyžádané klientem přes UPnP, NAT-PMP nebo PCP, a routovaná veřejná adresa jsou tři různé produkty se třemi různými limity.

Položte pět otázek ke kterémukoli z nich: který protokol, který vnější port, zda se vnější port může lišit od místního, kterou rodinu adres pokrývá a jak dlouho mapování přežije opětovné připojení. Rezervace vázaná na aktivní relaci zmizí, když ta relace skončí, ať stránka plánu říká cokoli.

Nejprve potvrďte místní polovinu, protože mrtvý naslouchající proces a zablokovaná příchozí cesta vypadají zvenčí stejně:

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

Když místní požadavek vrátí 200 a požadavek ze sítě, kterou neovládáte, stále vyprší, mezera je na veřejné straně. To je okamžik, kdy operátorovi řeknete protokol a vnější port, místo abyste aplikaci popisovali jménem.

Vlastní transport tunelu je samostatná otázka

Porty nosiče jsou nejmenší částí problému a nejsnáze dohledatelné. Výchozí hodnoty se liší podle protokolu a to, o čem může klient vyjednávat, je důležitější než jakýkoli popis plánu.

ClientOuter transportDefault portWhen it helps
OpenVPNUDP1194Default mode; needs outbound UDP to pass
OpenVPNTCP443UDP is dropped and TCP 443 is not
WireGuardUDP51820Short handshake; there is no TCP mode
IKEv2/IPsecUDP500 and 4500Mobile clients; 4500 carries NAT traversal

Síť, která zahazuje odchozí UDP, přijme tunel TCP 443 a odmítne UDP, takže záložní režim patří na list požadavků. Změna nosiče nepřesune port aplikace uvnitř tunelu a nerozšíří politiku cíle; ty zůstávají na svých řádcích.

Fragmentace si zaslouží jednu zkoušku, dokud jste tam, protože tunel, který se připojí a pak se zasekne na velkých přenosech, má obvykle špatnou MTU, ne zavřený port:

ping -M do -s 1400 203.0.113.10
ping -M do -s 1372 203.0.113.10

Ve Windows je stejná zkouška ping -f -l 1400 203.0.113.10. Nastavte MTU tunelu pod největší velikost, která projde, a pak znovu otestujte přenos, který selhal.

Ověřte tři řádky, než zaplatíte za plán

Dejte tři řádky na jednu stránku a vyplňte každou buňku naměřeným výsledkem místo slibu. Tyto příkazy vytvoří místní polovinu takové stránky asi za minutu:

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

Čtěte výstup jako kontrolní seznam. Odchozí funguje, když cíl odpoví se zapnutým tunelem. Příchozí funguje jen tehdy, když se host mimo vaši síť dostane k naslouchajícímu procesu na vnějším portu. Nosič funguje, když se handshake dokončí na protokolu, který vaše přístupová síť povoluje.

Dva návyky drží list poctivý. Zapište datum a verzi klienta vedle každého výsledku, protože politiky poskytovatele i výchozí nastavení klienta se mění. Pak žádejte nejužší mapování, které toku slouží, protože žádost otevřít všechno obvykle získá odmítnutí nebo nabídku dražšího plánu, ne technickou odpověď.

Související články