Štyri nezávislé úlohy dostanú celú LAN routera za jeden tunel. Zariadenie tunela potrebuje vlastníka, zónu firewallu, cieľ prekladu smerom k uplinku a, ak niektorí klienti musia zostať mimo VPN, smerovanie podľa zdrojovej adresy. Tunelu, ktorý sa pripojí, ale nič cezeň neprejde, zvyčajne chýba jedna z tých štyroch vecí. Práca v poradí závislostí znamená, že zlyhanie na konci patrí kroku, ktorý ste práve zmenili. Každý krok nižšie končí niečím, čo môžete vidieť, a to bráni tomu, aby sa ďalší stal dohadom.

Rozhodnite, čo sa delí o tunel

Router, ktorý rozdáva Wi-Fi a DHCP, môže klienta spustiť sám. To dostane každé pripojené zariadenie za tunel bez nastavovania na jednotlivých zariadeniach, a presne to chce väčšina malých lokalít. Je to tiež usporiadanie s najširším dosahom pri páde tunela, pretože každé zariadenie stratí cestu naraz. Na LAN nezostane funkčná cesta von.

Druhý router za prvým, ktorý spúšťa klienta s vlastnou podsietou, obmedzí tunel na svoje zariadenia. Ľahšie sa odstraňuje a ľahšie sa vysvetľuje tomu, kto ho zdedí. Cenou je dostupnosť medzi oboma stranami bez trasy alebo presmerovania portu.

Tak či onak, podsiete LAN urobte odlišné. Rovnaké rozsahy spôsobia, že jedna strana vyzerá pripojená priamo, a výsledná čierna diera sa číta ako porucha VPN celé hodiny.

Dajte tunelu vlastníka

Vyhláste tunel za sieťové rozhranie s názvom, zariadením a bez vlastného protokolu. Sieťový systém potom zariadenie vytvorí a spravuje a všetko ďalej sa na rozhranie odvoláva názvom, nie zariadením. Práve to umožňuje zóne ho nájsť.

Nevytvárajte to isté zariadenie na dvoch miestach. Ručne vytvorený tunel vedľa deklarovaného rozhrania vytvorí zariadenie, ktoré existuje, ale nie je v žiadnej zóne, alebo také, ktoré pri opätovnom načítaní zmizne. Obe vyzerajú ako zlyhanie klienta a ani jedno nevyprodukuje chybu, ktorá by pomenovala skutočnú príčinu. Zvoľte deklaratívnu cestu a ručnú zmažte.

Držte názov rovnaký v konfigurácii siete, firewallu a VPN. Zóna vypisuje siete podľa názvu, takže preklep nechá tunel mimo každej zóny, kým samotné rozhranie vyzerá zdravo. Zdravé rozhranie bez politiky je najťažšie spozorovateľný stav.

Dajte ho do zóny a potom do nej presmerujte

Zóna firewallu je miesto, kde žije politika: vstup, výstup, presmerovanie a maskarádovanie. Tunel bez zóny sa riadi predvolenými hodnotami, ktoré ste si nevybrali, a to je pre klientský router zriedka to, čo potrebuje. Bloky nižšie deklarujú rozhranie, umiestnia ho do zóny a povolia prevádzke LAN vstup do tejto zóny.

config interface 'vpn'
    option device 'tun0'
    option proto 'none'

config zone
    option name 'vpn'
    list network 'vpn'
    option input 'REJECT'
    option output 'ACCEPT'
    option forward 'REJECT'
    option masq '1'

config forwarding
    option src 'lan'
    option dest 'vpn'

Vo verziách starších ako 21.02 sa ten istý riadok rozhrania píše ako option ifname, preto pred vložením skontrolujte, ktorý tvar nainštalovaný firmvér rozpozná. Blok presmerovania je povolenie, ktoré vôbec umožňuje prevádzke LAN používať tunel. Bez neho je zariadenie hore, klient pripojený a žiadny hostiteľ LAN sa k tunelu nedostane. Je to najčastejšie hlásenie pripojené, ale bez internetu na klientských routeroch.

Maskarádovanie v zóne VPN zbalí každú adresu LAN do adresy tunela routera predtým, ako paket odíde. To odstráni potrebu návratovej trasy do vašej podsiete na opačnej strane.

Ak opačná strana už smeruje vašu LAN, vypnutie maskarádovania ponechá zdrojové adresy viditeľné a urobí protokoly pre jednotlivých klientov zmysluplnými. Vyberte jednu a zapíšte ktorú, pretože obe voľby neskôr prinášajú odlišné otázky podpory. Odstránenie predvoleného presmerovania z LAN do WAN je samostatné rozhodnutie s vlastným dôsledkom. Zoberte ho a vlastný prístup routera na internet ide s ním.

Pomenujte skutočný uplink v NAT

Vo firmvéri, kde je pravidlo prekladu napísané ručne, je odchádzajúce rozhranie to pole, ktoré sa pokazí. Pravidlo, ktoré menuje vlan2 nerobí nič, keď sa relácia ukončí na ppp0. Pravidlo úplne bez rozhrania môže prekladať prevádzku, ktorá mala zostať súkromná. Ani jedna z chýb sa neohlási, pretože tunel funguje ďalej.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Nahraďte ppp0 v tomto pravidle rozhraním z ip route alebo zo zoznamu aktívnych rozhraní, potom sledujte počítadlo, kým hostiteľ LAN načíta stránku. Na routeri s jedným poskytovateľom zvyčajne stačí jedno pravidlo maskarádovania pre uplink. Druhé pravidlo pre rozhranie tunela nie je náhradou za prvé.

Potom pridajte klientske možnosti, ktoré rozhodujú, čo vstúpi do tunela. Smernica redirect-gateway posiela internetovú prevádzku klienta cez VPN a bez nej tunel nesie len trasy, ktoré pretláča server. Pred úpravou DNS skontrolujte výslednú tabuľku trás.

Rozdeľte Wi-Fi druhou tabuľkou

Jedna smerovacia tabuľka nemôže držať dve predvolené trasy. Druhá SSID, ktorá musí obísť tunel, preto potrebuje vlastnú podsieť a vlastnú tabuľku. Priraďte tunelovej SSID vlastný rozsah a potom smerujte iba ten rozsah do tunela pravidlom, ktoré vyberá tabuľku.

Balíky pre smerovanie podľa politiky na OpenWrt vyjadrujú presne tú kombináciu. Ide to aj ručne, so zdrojovým pravidlom a tabuľkou, ktorej predvolená trasa ukazuje na zariadenie tunela.

Skontrolujte rozdelenie z oboch sietí. Klient na tunelovej SSID má ukázať výstupnú adresu VPN a klient na bežnej SSID adresu poskytovateľa. Keď obe vyzerajú rovnako, pravidlo sa zhoduje s nesprávnym zdrojom alebo tabuľka sa vôbec nepoužíva. Otestujte aj po opätovnom pripojení, pretože pravidlo závislé od názvu rozhrania sa pokazí, keď zariadenie dostane nové číslo.

Podozrievajte hodiny a príznak zariadenia

Príznak persist-tun necháva zariadenie tunela na mieste medzi reštartmi. To vyhovuje serveru a mýli klienta, ktorého stav sa má postaviť odznova. Odstráňte ho pri riešení problému s klientskym routerom, pretože zariadenie, ktoré prežije neúspešné rokovanie, skrýva, ktorý krok sa skutočne pokazil. Vráťte ho, keď sa klient spoľahlivo pripojí, a nie skôr.

Hodiny sú druhé tiché zlyhanie. Router bez batériových hodín štartuje od epochy, čo znamená, že kontroly certifikátov zlyhávajú, kým NTP nedobehne. Porovnajte časové značky v logu so skutočným časom, než sa dotknete certifikátu, pretože klient, ktorý sa pripojí minútu po štarte, zvyčajne čaká na synchronizáciu času.

Súvisiace články