Klient VPN s adresou LAN není v LAN
Přidělení adresy LAN klientovi VPN ho na tento segment nepřináší. Místní hostitelé se ptají na souseda, takže brána musí odpovědět, jinak odpověď nikdy nedorazí.
Klient se připojí, dostane 10.50.0.200 a nemůže dosáhnout serveru na 10.50.0.20, i když obě čísla leží ve stejné /24. Za touto konfigurací stojí přesvědčení, že adresa z prefixu LAN dělá klienta součástí LAN. Nedělá. Klient je na spoji typu bod-bod, server považuje cíl za místní a chybějící díl je odpověď souseda, kterou nikdo neposílá.
Mýtus: stejný prefix znamená stejný segment
Prefix adresy říká hostiteli, které cíle může dosáhnout přímo a které potřebují router. Neříká hostiteli, jak je cíl fyzicky připojen, a rozhodně nezaručuje, že cíl dokáže odpovědět na požadavek na linkové vrstvě. To jsou různé otázky, na které odpovídají různé tabulky na hostiteli. Maska odpovídá na první a tabulka sousedů na druhou, a jen první je z vaší strany VPN pod vaší kontrolou.
Když server posílá na 10.50.0.200, porovná cíl se svou maskou, rozhodne, že adresa je on-link, a zeptá se místního segmentu na hardwarovou adresu, která k ní patří. Tento požadavek vychází přes rozhraní Ethernet a klient VPN tam není, aby ho slyšel.
Nic v konfiguraci klienta to z jeho strany neopraví. Cesta odpovědi závisí na tom, že za klienta odpoví zařízení v LAN, nebo že klient má adresu, kterou server nepovažuje za místní.
Co místní hostitel s adresou skutečně dělá
Chování se dá snadno pozorovat a stojí za to ho vidět, než cokoli změníte. Podívejte se na hostiteli v LAN do tabulky sousedů poté, co se pokusil dosáhnout klienta: neúplná nebo neúspěšná položka je celá diagnóza na jednom řádku. Ten řádek vám také říká, že závada je místní v segmentu, a ne někde v tunelu.
ip neigh show 10.50.0.200 ip route get 10.50.0.200 arping -I eth0 -c 3 10.50.0.200
Vyhledání trasy ohlásí cíl jako on-link přes rozhraní Ethernet, a to je právě problém. Zůstane-li položka souseda neúplná, dokud je relace VPN aktivní, potvrdili jste, že chybějícím dílem je rozlišení na linkové vrstvě, a ne směrování nebo politika firewallu.
Proveďte stejnou kontrolu z hostitele v jiné podsíti a porovnejte. Hostitel, který se ke klientovi dostane přes router, položku souseda vůbec nepotřebuje, a tento rozdíl je rozhodnutí návrhu v miniatuře.
Jak Proxy ARP dodává další skok
Proxy ARP nutí bránu odpovědět na požadavek linkové vrstvy jménem cíle, kterého může dosáhnout přes jiné rozhraní. Hostitel v LAN obdrží hardwarovou adresu, pošle rámec bráně a brána přepošle paket do relace VPN. Z pohledu hostitele klient prostě vypadá, že je za bránou. Na konfiguraci klienta se nic nemění.
Dokumentace RouterOS k ARP od MikroTiku popisuje toto použití pro dial-in klienty, kteří si půjčují adresní prostor připojené LAN. Mechanismus je oprava rozlišení sousedů a funguje proto, že brána skutečně leží na obou cestách.
To není totéž jako přemostit klienta do LAN. Brána stále musí přeposlat paket správné aktivní relaci a její směrování a politika firewallu stále musí službu povolit. Proxy ARP mění, kdo odpovídá na požadavek souseda, ne kdo smí mluvit.
Čtěte názvy režimů platformy pozorně. RouterOS odděluje proxy-arp od local-proxy-arp a druhý zpracovává provoz, který vstupuje a vystupuje stejným rozhraním. Nejsou to zaměnitelné pravopisy a zapnutí obou bez rozmyslu není zkratka.
Co vám Proxy ARP nedá
Neposkytuje objevování přes broadcast ani multicast. Klient, který musí službu najít přes broadcast, stále selže, protože brána přeposílá unicast do relace a nedělá z klienta člena broadcastové domény LAN. Protokoly objevování závislé na broadcastu jsou častým zdrojem hlášení, že to funguje na jednu věc a na druhou ne, u návrhů s půjčenými adresami.
Adresu nerezervuje. Pokud půjčené číslo leží také v poolu DHCP nebo ve statickém přiřazení, mohou dvě zařízení skončit se stejnou adresou a výsledné chování závisí na časování. Úspěšné přihlášení není rezervace.
A neodstraňuje potřebu koordinace s vlastníkem LAN. Záznam Proxy ARP, který překvapí vlastníka adresního plánu, je incident podpory čekající na klidný týden.
Srovnání se samostatně směrovaným poolem
Alternativou je dát klientům VPN vlastní prefix a nechat hostitele LAN směrovat do něj. Server pak posílá off-link odpovědi své bráně, brána směruje prefix ke koncovému bodu VPN a na segmentu LAN není potřeba žádné rozlišení sousedů. To je méně pohyblivých částí než půjčená adresa plus odpověď proxy.
Takový návrh se snáz promýšlí a snáz audituje, protože rozsah klientů je viditelně oddělen od rozsahu LAN. Stojí trasu, zpáteční cestu a přístupové pravidlo, tedy tytéž věci, které návrh s proxy ARP potřebuje na méně zřejmém místě.
Vybírejte mezi modely vědomě, ne náhodou. Proxy ARP opravuje jeden konkrétní vztah; směrovaný pool potřebu této opravy odstraňuje. Zapište, který jste zvolili a proč, a příští člověk to nebude muset znovu objevovat z neúspěšné položky souseda.