Izolacja klientów Wi-Fi a lokalny dostęp przez VPN: co cię blokuje
Dwa urządzenia w tej samej sieci SSID wciąż mogą się nie widzieć. Porównaj, co blokuje izolacja klientów Wi-Fi, a co kieruje tunel VPN.
Umieść dwa telefony w tej samej sieci gościnnej SSID i żaden nie widzi drugiego, ale oba docierają do internetu. Dodaj klienta VPN na jednym z nich, a drukarka trzy metry dalej pozostaje niewidoczna, podczas gdy serwer na innym kontynencie odpowiada na ping. W tunelu nic nie jest zepsute; w grę wchodzą dwie osobne decyzje dostępowe i tylko jedna dotyczy routingu. Punkt dostępowy decyduje, czy klienci bezprzewodowi mogą rozmawiać ze sobą, a klient VPN decyduje, które cele wychodzą przez tunel. Mylenie tych dwóch rzeczy daje godziny bezsensownych zmian konfiguracji.
Obie bramy są niezależne
Izolacja klientów to decyzja przełączania. Punkt dostępowy przyjmuje ramkę od jednej stacji stowarzyszonej, patrzy na cel, zauważa, że cel jest inną stacją w tej samej sieci mostowej, i ją odrzuca. Adres IP stacji nie ma znaczenia dla tej decyzji, a VPN też nie.
Routing to inna decyzja, podejmowana na kliencie. Tablica routingu VPN decyduje, czy pakiet do 192.168.1.50 wejdzie do tunelu, czy wyjdzie przez interfejs Wi-Fi. Jeśli pakiet wyjdzie przez Wi-Fi, a punkt dostępowy izoluje klientów, ginie na punkcie dostępowym. Jeśli pakiet wejdzie do tunelu, punkt dostępowy nigdy nie widzi pierwotnego celu i nie może niczego odizolować.
Co blokuje izolacja na typowym punkcie dostępowym
Producenci dostarczają to pod kilkoma nazwami: izolacja klientów, izolacja AP, izolacja stacji lub sieć gościnna, która to zakłada. W OpenWrt opcją dla interfejsu jest isolate w konfiguracji bezprzewodowej, jak opisano w dokumentacji sieci bezprzewodowej, a gościnny SSID zwykle dostaje własny most i strefę zapory. Skutek jest taki, że ramki unicast między klientami nie są mostkowane, więc ping, połączenie SMB lub zadanie drukowania do sąsiada kończy się niepowodzeniem, mimo że oba urządzenia pokazują pełny sygnał.
Protokoły wykrywania cierpią pierwsze i najbardziej widocznie. mDNS dla drukarek i urządzeń multimedialnych idzie przez multicast do 224.0.0.251, SSDP używa 239.255.255.250, a to, czy te ramki przekraczają most, zależy od producenta i od tego, czy włączona jest konwersja multicast na unicast. Brak urządzenia na liście jest słabszym dowodem niż nieudane bezpośrednie połączenie ze znanym adresem.
Co VPN zmienia, a czego nie może zmienić
Pełny tunel przejmuje trasę domyślną, więc lokalne podsieci są osiągalne tylko wtedy, gdy klient zachowa dla nich bardziej szczegółową trasę. Tunele dzielone robią odwrotnie i z założenia zachowują dostęp lokalny. Żadne z ustawień nie może zmusić izolującego punktu dostępowego do przesłania ramki między dwoma jego klientami, dlatego zezwalanie na ruch lokalny w kliencie VPN jest konieczne, ale niewystarczające.
Odwrotny przypadek jest równie częsty. Punkt dostępowy zezwala na ruch między klientami, klient VPN wyłącza lokalną podsieć z tunelu, a drukarka nadal nie odpowiada, bo zapora hosta traktuje sieć Wi-Fi jako publiczną. Trzy warstwy, trzy różne wartości domyślne, i tylko trasa jest widoczna w większości dzienników VPN.
Ustal, która brama jest zamknięta
Zacznij od testu, który usuwa VPN z obrazu: podłącz dwa zwykłe urządzenia do tej samej sieci SSID i spróbuj dotrzeć z jednego do drugiego po adresie. Jeśli to się nie uda, punkt dostępowy izoluje i żadne ustawienie VPN tego nie naprawi. Jeśli się uda, przejdź do klienta i uruchom ip route get 192.168.1.50 w Linuksie lub Find-NetRoute -RemoteIPAddress 192.168.1.50 w Windows; wynik wskazuje interfejs, którego użyje pakiet.
Gdy trasa wskazuje interfejs Wi-Fi, pakiet wychodzi niezaszyfrowany i pytanie brzmi, czy punkt dostępowy i zapora hosta na to pozwalają. Gdy trasa wskazuje tunel, cel jest wysyłany do serwera VPN, co jest błędne dla urządzenia w tej samej sieci lokalnej i zwykle oznacza, że lista dozwolonych w tunelu jest zbyt szeroka.
Bezpośrednie połączenie z portem drukarki to lepszy test niż lista wykrywania. nc -vz 192.168.1.50 9100 w Linuksie lub Test-NetConnection 192.168.1.50 -Port 9100 w PowerShellu mówi, czy adres jest w ogóle osiągalny, zanim do dyskusji wejdzie jakiekolwiek parowanie na poziomie aplikacji.
Wybierz poprawkę dla sieci, w której jesteś
W sieci hotelowej lub gościnnej izolacja jest celowa i nie należy próbować jej obejść. Traktuj urządzenie lokalne jako nieosiągalne, używaj VPN, aby dotrzeć do hosta, który może drukować lub udostępniać, i przestań traktować SSID jako sieć lokalną.
W domu wyłączenie izolacji w głównej sieci SSID jest rozsądne, gdy urządzenia są twoje, a gościnny SSID pozostaje izolowany. Ustawienie mieszka w konfiguracji bezprzewodowej punktu dostępowego i tam należy, a nie w wyjątkach zapory na każdym kliencie.
W biurze zakładaj, że punkt dostępowy, VLAN i zapora hosta są celowe. Eskaluj z wynikami testów, zamiast prosić o wyłączenie izolacji, ponieważ sieć, która rozdziela klientów, zwykle czegoś chroni.
Zweryfikuj aplikację, nie tylko ping
Udany ping dowodzi ścieżki, nie usługi. Drukarki często przyjmują surowy 9100 lub IPP na 631, ale odrzucają wykrywanie, a udostępnianie plików wymaga 445 oraz działającego rozwiązywania nazw. Potwierdź port używany przez aplikację, a następnie ponów rzeczywiste zadanie na urządzeniu.
Trzymaj obie warstwy osobno w notatkach: co dopuszcza sieć Wi-Fi i co kieruje VPN. Następnym razem, gdy urządzenie zniknie z listy, ten podział podpowie, gdzie patrzeć najpierw.