Konsole, które nie mogą uruchomić klienta VPN, czasem mogą pożyczyć tunel komputera z Windows, a taki układ częściej zawodzi, niż się udaje, z powodów niezwiązanych z VPN. Komputer musi stać się bramą: osobnym interfejsem podrzędnym, adresacją dla konsoli, tłumaczeniem i klientem gotowym przekazywać pakiety innego urządzenia. Tunel działający dla własnych aplikacji komputera nie dowodzi niczego z tego.

Porównanie, które warto przeprowadzić, dotyczy tego układu i routera, który posiada tunel dla całej sieci. Różnią się utrzymaniem, zachowaniem przy awarii i tym, ile polityki można zobaczyć naraz.

Co musi robić brama na PC

Brama potrzebuje interfejsu zwróconego w stronę konsoli, zakresu adresów dla tego segmentu i reguły tłumaczenia, która przepisuje ruch konsoli na tunel. Potrzebuje też, aby klient przekazywał pakiety, których sam nie utworzył, a to inne ustawienie niż przyjmowanie własnego ruchu. Rozwiązywanie nazw musi iść tą samą drogą, inaczej konsola rozwiązuje usługę gry jedną trasą, a potem łączy się inną. Każdy z tych elementów to osobny krok konfiguracji z własnym sposobem zawodzenia.

console -> dedicated ethernet -> windows sharing / nat
        -> selected tunnel interface -> internet

Udostępnianie połączenia internetowego w Windows daje dokładnie taki kształt, z jednym połączeniem wskazanym jako publiczne, a drugim jako prywatne. To wskazanie ma większe znaczenie, niż ludzie oczekują, ponieważ interfejs docierający do domowego routera nie jest automatycznie tym, który niesie tunel.

Porównania, które rozstrzygają

Trzy różnice oddzielają bramę na PC od bramy na routerze, i to one ujawniają się po miesiącach. Tabela stawia je obok siebie.

AspectWindows PC gatewayRouter gateway
Tied to a user sessionYes; sleep or sign-out ends itNo
Policy visibilitySplit across client and sharing layerOne ruleset
Address servicePrivate side of the sharing featureRouter scope
Recovery after rebootManual, per sessionAutomatic

Powiązanie z sesją użytkownika to pierwsza różnica i ta, która zaskakuje. Komputer, który zasypia, wylogowuje się lub instaluje aktualizację, przestaje być bramą, a konsola traci swoją drogę, choć żadne ustawienie się nie zmienia. Widoczność polityki to druga, ponieważ reguły klienta i warstwa udostępniania żyją w dwóch miejscach i żadna nie opisuje drugiej. Usługa adresów to trzecia, i wyjaśnia konsolę, która ma adres, a mimo to nic nie osiąga.

Nic z tego nie czyni układu z komputerem błędnym. Czyni go projektem tymczasowym, co jest dopuszczalne, gdy wymaganie jest tymczasowe.

Ruch przekazywany to inna kategoria

Klient na komputerze stacjonarnym może traktować pakiety przekazywane dla innego urządzenia inaczej niż własne. Lista dołączania według aplikacji obejmuje procesy na komputerze i nic nie mówi o ruchu konsoli, a wyłącznik bezpieczeństwa chroniący aplikacje lokalne może w ogóle nie chronić ścieżki przekazywanej. Potwierdź udokumentowane zachowanie klienta dla ruchu przekazywanego, zamiast wnioskować o nim z udanego wczytania strony na komputerze. Tam, gdzie to zachowanie jest niejasne, cały układ opiera się na założeniu.

Adresacja konsoli powinna pochodzić z układu udostępniania, nigdy z kopiowania na nią adresu tunelu komputera. Kopiowanie daje zduplikowany adres, niewłaściwą bramę i resolver wskazujący na coś, do czego konsola nie dotrze. Pozwól usłudze podrzędnej rozdać konfigurację, a następnie sprawdź, co konsola faktycznie otrzymała.

Sprawdź ruch konsoli, nie komputera

Jedyny sensowny test obserwuje ścieżkę konsoli. Na komputerze poniższe polecenia pokazują układ interfejsów, tablicę sąsiadów na łączu podrzędnym i to, czy konsola odpowiada na porcie usługi. Uruchom je, gdy sesja gry jest naprawdę połączona.

Get-NetIPConfiguration | Select-Object InterfaceAlias, IPv4Address
Get-NetAdapter | Select-Object Name, Status, LinkSpeed
arp -a | findstr 192.168.137.
Test-NetConnection 192.168.137.10 -Port 3074

Interfejs bez adresu po stronie podrzędnej oznacza, że udostępnianie nigdy się nie rozpoczęło, co jest innym problemem niż konsola, która nie może się połączyć. Wpis konsoli w tablicy sąsiadów dowodzi, że łącze i adresacja żyją. Nieudany test portu wskazuje potem na przekazywanie albo na podejście klienta do ruchu przekazywanego, a nie na kabel. Porównaj adres wyjściowy konsoli z adresem komputera, zanim uznasz, że tunel jest używaną ścieżką.

Prowadź dokumentację układu z nazwami interfejsów i zakresami adresów. Gdy po następnej aktualizacji się zepsuje, ta strona oszczędzi godzinę ponownego odkrywania.

Powiązane artykuły