Usmerjevalnik poroča naslov WAN, ki se začne s 100.72, dinamično ime DNS se razreši v drug javni naslov, strežnik VPN na tem usmerjevalniku pa nikoli ne dokonča rokovanja od zunaj. Posredovanje vrat je konfigurirano, storitev deluje in preizkus iz lokalnega omrežja še vedno uspe. V dnevniku usmerjevalnika nič ne izgleda kot napaka. Ta kombinacija je NAT na ravni operaterja in nobeno pravilo požarnega zidu ne more odpreti vrat na naslovu, ki ga ima ponudnik.

Potrditev skupnega naslova traja dve minuti in prepreči teden sprememb konfiguracije.

Znaki, ki kažejo na NAT operaterja

Primerjajte naslov WAN na statusni strani usmerjevalnika z naslovom, ki ga poroča zunanje iskanje. Naslov WAN v območju 100.64.0.0/10 je običajen znak, zasebna območja 10/8, 172.16/12 in 192.168/16 pa pomenijo isto. Če traceroute kaže isti javni skok večkrat ali zgodnji skok odgovori z zasebnim naslovom, je med usmerjevalnikom in internetom še en prevajalnik. Nekateri ponudniki navedejo dodeljeni naslov le na portalu za stranke, zato to vrednost izvozite skupaj s traceroute.

Menjava protokolov ali vrat ne pomaga, ker je težava dohodna dosegljivost in ne zaprta vrata.

Zakaj posredovanje in dinamični DNS tega ne moreta popraviti

Pravilo posredovanja vrat preslika vrata na vmesniku WAN usmerjevalnika, vendar dohodni promet nikoli ne doseže tega vmesnika: ponudnik ga najprej prevede in posreduje samo tisto, kar dovoljuje njegova lastna tabela. Objava skupnega naslova v dinamičnem DNS usmeri odjemalce na prehod ponudnika, ki ga uporablja veliko naročnikov, zato se ime razreši, rokovanje pa še vedno ne uspe. Preizkusi hairpin uspejo, ker usmerjevalnik odgovori na svoje lastno pravilo od znotraj, UPnP pa ima popolnoma isto slepo pego.

Tudi ponovna konfiguracija odjemalca ne bo pomagala, ker se napaka zgodi preden se prebere katera koli nastavitev odjemalca.

Posredovanje prek VPS z izrecnimi potmi

Spredaj postavite javni naslov tako, da najamete najmanjši VPS, ki lahko prenese promet, nato pa domači usmerjevalnik prisilite, da se odhodno poveže z njim. Odhodni UDP iz domačega omrežja preide NAT operaterja, zato se tunel vzpostavi od znotraj in VPS postane dosegljiva končna točka. Domača stran postane odjemalec s fiksnim naslovom tunela, ne strežnik.

Na VPS dodajte vnos imenika, specifičen za odjemalca, da strežnik ve, kateri partner ima domače podomrežje, in dodajte ustrezno pot jedra.

# /etc/openvpn/server/ccd/home-site.conf
ifconfig-push 10.8.0.10 255.255.255.0
iroute 192.168.50.0 255.255.255.0

# server.conf
client-config-dir /etc/openvpn/server/ccd
route 192.168.50.0 255.255.255.0
push "route 10.8.0.0 255.255.255.0"

Vrstica iroute pove OpenVPN, kateri odjemalec prejema promet za domače podomrežje; vrstica route to podomrežje vstavi v tabelo jedra VPS, da paketi sploh vstopijo v tunel. Za objavljeno storitev dodajte pravilo ciljnega NAT, ki posreduje javna vrata na 10.8.0.10, in omogočite net.ipv4.ip_forward.

Preizkusite pot od zunaj

Preverite vsak skok na javni strani, ker uspešen tunel ne dokazuje, da je storitev dosegljiva. Stanje poslušanja in zajemanje paketov na VPS ločita »nič ni prišlo« od »prišlo in bilo zavrženo«.

ss -lunp | grep 1194
tcpdump -ni any udp port 1194
nft list ruleset | grep -A4 dnat

# from a phone on mobile data, not the home Wi-Fi
nc -vz -u 203.0.113.10 1194

Če zajemanje pokaže pakete s telefona, a ni odgovora, je naslednja postaja konfiguracija strežnika ali požarni zid. Če zajemanje ne pokaže ničesar, odjemalec še vedno razrešuje ali pošilja na napačen naslov.

Alternative, ki jih je vredno najprej oceniti

Namenski naslov IPv4 od ponudnika je najkrajša rešitev in običajno majhna mesečna pristojbina. Domači IPv6 odpravi prevajanje na obeh koncih, ko ga podpirajo VPN, odjemalčevo omrežje in zapisi DNS. Mesh prekrivka z usmerjevalnikom podomrežja v domačem omrežju doseže enako posredovanje brez VPS, a za ceno odvisnosti od koordinacijske storitve.

Izberite posredovanje, ko je zahteva stabilen dohodni dostop in mora vsako pravilo ostati pod vašim nadzorom. Izberite naslov ponudnika, ko proračun to dopušča in je cilj preprosto nehati razmišljati o tem.

Sorodni članki