Pi VPN s viacerými smerovačmi: umiestnite každú trasu na zariadenie, ktoré rozhoduje
Smerovač nižšie pridáva druhú klientsku podsiete a každé zo štyroch zariadení vlastní jedno rozhodnutie. Umiestnite trasy, skontrolujte zdroj a potom testujte z reálneho klienta.
Umiestnenie Wi-Fi krabice za Pi premení jedno smerovacie rozhodnutie na štyri a plán sa rozpadne, keď sa všetky štyri urobia na jednom zariadení. Prvá otázka nie je, ktorú trasu pridať. Ale či nová krabica prepája, alebo smeruje, pretože táto odpoveď určuje, koľko podsietí existuje a ktoré zariadenia sa o nich musia dozvedieť. Najprv zvoľte model pripojenia; každá trasa z neho vyplýva.
Most alebo smerovanie: voľba, ktorá určuje počet
Most umiestni nových klientov do tej istej podsiete, ktorú Pi už obsluhuje. Jedna podsiete, jedna autorita DHCP a žiadne odovzdanie na smerovanie. Toto je jednoduchšie usporiadanie a správna voľba, keď samostatná klientska sieť nikdy nebola požiadavkou. Smerovaná linka je iný návrh: krabica si zachováva vlastnú podsiete a tento prefix sa musí prenášať všade, kam prevádzka ide.
Zvyšok plánu zachováva smerovač nižšie a chráni zdrojové adresy klientov. Cieľom je jedna súkromná sieť VPN, nie úplný výstup do internetu. Zapíšte model pred adresami, pretože zoznam nižšie je len príkladom smerovaného pripojenia.
client subnet 10.41.0.0/24
client gateway 10.41.0.1
router-to-Pi link 192.168.71.2
Pi on that link 192.168.71.1
private target 10.72.9.0/24
Kto čo rozhoduje
| Decision owner | Entry that encodes the decision | Failure when the entry is missing |
|---|---|---|
| Pi VPN host | Return route for 10.41.0.0/24 via 192.168.71.2, and a tunnel route for 10.72.9.0/24 | Replies to downstream clients die at the Pi |
| Owner of the remote network | A path for 10.41.0.0/24 over the permitted tunnel | Replies stop at the first unaware hop |
| LAN router behind the Pi | Specific route for 10.72.9.0/24 via 192.168.71.1, or a suitable default | Clients never send private traffic to the Pi |
| Client machine | Default via 10.41.0.1, or a specific entry for 10.72.9.0/24 | The private network is unreachable from the client |
Každé zariadenie urobí jedno rozhodnutie a žiadne nemôže urobiť rozhodnutie iného zaň. Pi potrebuje dva záznamy, nie jeden, a spiatočná cesta je tá, na ktorú ľudia zabúdajú. Preposielaná prevádzka správne dorazí do súkromnej siete a potom na spiatočnej ceste zomrie, pretože Pi netuší, kde žije 10.41.0.0/24. Vyzerá to ako problém brány firewall a v skutočnosti je to chýbajúca trasa.
Vzdialená strana tiež potrebuje vlastnú trasu. Ak služba na vzdialenom konci nevie, že 10.41.0.0/24 je dostupná cez váš tunel, odpovede sa zastavia na prvom skoku bez odpovede. Pridajte oba smery, skôr než začnete čítať filtre paketov.
Ďalšie skoky pochádzajú z pripojenia
Ďalší skok musí byť adresa v sieti, do ktorej sa zariadenie skutočne dostane. Verejná adresa VPN partnera nie je ďalším skokom pre súkromnú podsiete a vzdialená servisná sieť nie je ďalším skokom vôbec. Trasa k nedostupnej bráne vyzerá v zozname správne a zahodí každý paket. Overte, či brána odpovedá, skôr než obviníte cieľ.
Udržujte vonkajšieho VPN partnera Pi dostupného cez jeho vlastnú podkladovú trasu. Ten záznam je oddelený od trás užitočného zaťaženia a ich miešanie dáva tunel, ktorý sa po zmene cesty nedokáže znovu nadviazať.
Dokumentácia statických trás objasňuje rozdiel medzi cieľom a bránou, aj keď každá platforma pomenúva svoje ponuky inak. Čítajte dokumentáciu pre zariadenie pred sebou, namiesto kopírovania obrazovky iného výrobcu. Príkazy nižšie ukazujú podobu záznamov v Linuxe.
# on the Pi
ip route add 10.41.0.0/24 via 192.168.71.2
ip route add 10.72.9.0/24 dev tun0
# on the downstream router
ip route add 10.72.9.0/24 via 192.168.71.1
Čo robí preklad so zdrojom
Ak smerovač nižšie už prekladá svojich klientov na tranzitnú adresu, Pi vidí jeden preložený zdroj namiesto vlastnej adresy každého klienta. To je iný návrh než ten vyššie, ktorý zachováva zdroj. Mení politiku založenú na zdroji, zaznamenávanie a to, ktorá strana môže začať spojenia. Oba návrhy fungujú; odpovedajú na rôzne otázky.
Keď upstream služba VPN odmietne smerovať klientsky prefix späť, úzky preklad na výstupe tunela Pi môže byť legitímne dočasné riešenie. Nie je to dôkaz, že chýbajúca trasa bola zbytočná. Zaznamenajte, ktorú adresu vzdialená sieť skutočne vidí a aká spiatočná cesta z toho vyplýva.
Voľba trasy, povolenie preposielania a preklad zdroja zostávajú tri oddelené úlohy. Vyprázdnenie zdieľaného reťazca NAT alebo povolenie každému rozhraniu, pretože jeden káblový klient funguje, je spôsob, akým sa z fungujúceho testu stane otvorený preposielač.
Dokážte to z klientského stroja
Pošlite požiadavku zo stroja v nižšej LAN, potom sledujte jej zdroj von a späť. Ping vydaný Pi nikdy necvičí nižšiu spiatočnú trasu, preto úspešný ping dokazuje menej, než sa zdá. Pridajte druhý test z káblového klienta vo vlastnej LAN Pi, aby sa obe cesty dali porovnať. Zopakujte oba po reštarte ktoréhokoľvek zariadenia.
Trasy pridané ručne a preklady, ktoré sa nikdy neuložili, zmiznú spolu. Potom pár vyzerá ako nová porucha, nie ako nedokončená práca.
Uložte model pripojenia spolu s trasami, povolenou súkromnou službou a akýmkoľvek prekladom do jednej poznámky. Práve tá poznámka bráni ďalšiemu človeku považovať bezdrôtové umiestnenie za otázku smerovacej politiky.