Czy Twój VPN przenosi IPv6, czy tylko dociera do serwera?
Osiągnięcie IPv6 to nie przenoszenie IPv6. Sprawdź obie rodziny, wybierz między przenoszeniem a blokowaniem i spraw, by kill switch pokrywał ten sam obszar.
Test wycieku tylko dla IPv4 wraca czysty, test IPv6 pokazuje domowy adres, a tunel jest nominalnie połączony. Ta kombinacja jest częsta w sieciach z podwójnym stosem, ponieważ VPN zmienił ścieżkę jednej rodziny, a drugą zostawił w spokoju. Zewnętrzny tunel i ruch w nim to dwie osobne decyzje adresowe. Testowanie jednej nic nie mówi o drugiej.
Sprawdź zarówno to, co raportuje klient, jak i to, której rodziny żądanie faktycznie użyło, ponieważ nazwa hosta może zwrócić oba rodzaje odpowiedzi.
Dwie rodziny, dwie różne ścieżki
System operacyjny prowadzi tabelę routingu dla każdej rodziny adresów. Zainstalowanie trasy domyślnej dla IPv4 nie instaluje jej dla IPv6, a punkt końcowy tunelu osiągalny przez IPv4 nic nie mówi o tym, czy ruch IPv6 do niego wchodzi. Gdy przez tunel nie istnieje trasa domyślna IPv6, host używa dowolnej dostępnej ścieżki IPv6, którą często jest łącze fizyczne. Z punktu widzenia aplikacji połączenie jest po prostu bezpośrednie.
Nazwa hosta zwracająca zarówno rekordy A, jak i AAAA utrudnia to zauważyć, ponieważ aplikacje mogą próbować rodzin w różnej kolejności. Udane żądanie nie dowodzi, którą ścieżką poszło. Użyj testu, który nazywa rodzinę, którą sprawdził.
Dotarcie do serwera to nie przenoszenie ruchu
Dostawcy używają wyrażenia obsługa IPv6 w odniesieniu do kilku różnych możliwości. Punkt końcowy może przyjmować połączenie przez IPv6, podczas gdy tunel nadal przenosi tylko IPv4. Tunel może przenosić wewnętrzne pakiety IPv6, podczas gdy transport zewnętrzny pozostaje IPv4. Albo klient może całkowicie blokować IPv6, aby nic nie wydostało się poza tunel. To trzy różne zachowania, a strona, która mówi tylko, że IPv6 jest obsługiwany, ich nie rozróżnia.
Zapytaj, której z nich potrzebuje projekt. Sieć, która musi docierać do usług dostępnych tylko przez IPv6, potrzebuje przenoszenia. Sieć, która musi zapobiegać bezpośredniemu ruchowi IPv6, potrzebuje blokowania lub pełnego przenoszenia, a nie etykiety na stronie marketingowej.
Zdecyduj między przenoszeniem a blokowaniem
Przenoszenie oznacza, że tunel ma adres IPv6, trasę domyślną w nim oraz politykę zezwalającą na ruch na obu końcach. Blokowanie oznacza, że klient celowo zatrzymuje IPv6 przed wyjściem poza tunel, co jest bezpieczne i bezużyteczne do docierania do celów IPv6. Oba są uzasadnione; żadne nie jest wartością domyślną, którą można założyć. Najpierw wybierz wymaganie, potem sprawdź, czy klient naprawdę je implementuje.
Sieć gościnna tylko z IPv4 nie może sprawdzić ścieżki IPv6, więc test wykonany tam nic nie mówi o sieci domowej, w której istnieją obie rodziny. Testuj tam, gdzie dana rodzina jest naprawdę oferowana.
Kill switch potrzebuje tego samego pokrycia
Kill switch obejmujący tylko IPv4 pozostawia drugiej rodzinie swobodę wyjścia bezpośrednio, i to jest dokładnie ten wyciek, któremu miał zapobiec. Przejrzyj jego reguły dla obu rodzin oraz dla momentów przejścia, gdy tunel się podnosi lub opada. Wyłączenie IPv6 w całym systemie nie jest zamiennikiem: może zepsuć niezwiązane usługi i ukrywa problem z polityką klienta za zmianą w całej maszynie.
Trzymaj DNS z dala od tego wszystkiego. DNS dotyczy tego, kto odpowiada na zapytanie i jak zapytanie podróżuje; połączenie aplikacji, które następuje, ma własną trasę. Jedno może być poprawne, a drugie nie, a diagnozowanie ich razem daje mylące wnioski.
Zapisz, którą rodzinę sprawdził każdy test i jaką możliwość deklaruje klient. Ta para faktów odpowiada na pytanie, na które etykieta wsparcia nigdy nie odpowie.