General failure atliekant ping į LAN adresą, kai įjungtas VPN klientas
Windows praneša, kad visiškai negali pasiekti jokio adapterio, nors maršrutų lentelė atrodo taisyklingai. Nuspręskite, ar blokuoja maršrutizavimas, filtravimas, ar klientas.
Vienas maršrutas į mazgą, vienas adresas, ir ping iškart nepavyksta su General failure, o ne baigiasi užklausos laukimo laikas. Būtent šis skirtumas ir yra visa diagnostika. Laukimo pabaiga reiškia, kad paketas išėjo ir kažkas jį ignoravo. General failure reiškia, kad Windows iš viso negalėjo perduoti paketo jokiai sąsajai.
Taigi, kai maršrutų lentelė atrodo tobula, o klaida vis dar General failure, blokavimas vyksta žemiau maršrutizavimo sprendimo, ir paslaugų teikėjo klientas yra tai, kas ten veikia.
Perskaitykite klaidą prieš maršrutų lentelę
Windows grąžina šią klaidą, kai neranda sąsajos siuntimui, ir nieko nesako apie tai, ką paskirties vieta būtų padariusi su paketu. Pasiekiamumas, kitos pusės užkardos ir paslaugos prieinamumas – visi tai vėlesni klausimai, prie kurių dar nepriėjote.
Klasikinė šio atvejo konfigūracija yra maršrutas į mazgą, nukreipiantis vieną LAN adresą į fizinę tinklų sietuvą, kad jis apeitų tunelį. route add jį priima, route print jį parodo, o ping vis tiek nepavyksta, nes filtro tvarkyklė jau nusprendė, kad paketui neleidžiama išeiti.
Prieš priimdami šį paaiškinimą, patvirtinkite, kad maršrutas tikrai parenkamas: patikrinkite sąsajos indeksą ir metriką, įsitikinkite, kad įrašas nepasenęs po pakartotinio prisijungimo. Maršrutas, nukreiptas į sąsają, kurios nebėra, duoda panašią klaidą dėl daug mažiau įdomios priežasties.
Trys sluoksniai, trys skirtingi savininkai
Laimi tas sluoksnis, kuris veikia paskutinis, ir šie trys nėra tokia tvarka, kokios dauguma tikisi.
| Layer | What it decides |
|---|---|
| Routing table | Which interface and next hop should carry the packet |
| Client filter driver | Whether this packet is permitted to leave outside the tunnel at all |
| Client feature | Whether a named feature, such as LAN blocking, is active right now |
Vidurinis sluoksnis yra priežastis, kodėl maršrutas gali būti ir teisingas, ir nenaudingas vienu metu. Teikėjų klientai įdiegia filtrą ir užkardos taisykles, kad srautas už tunelio būtų išmetamas, ir tai yra tas pats mechanizmas, kuris įgyvendina jų kill switch. Niekas maršrutų lentelėje tame sprendime nedalyvauja.
Trečiasis sluoksnis paaiškina keistą ataskaitą, kuri ateina reguliariai: vietinis potinklis nepasiekiamas net atjungus klientą. Paslauga vis dar veikia, o filtras vis dar įdiegtas, todėl nebūti prisijungusiam nėra tas pats, kas nefiltruoti. Prieš darydami kokią nors išvadą, uždarykite klientą, o ne tik atjunkite jį.
Ką išbandyti, iš eilės
Pradėkite šalindami funkcijas, kurias pigu pašalinti ir lengva atkurti. LAN atradimas, kartais vadinamas nematomumu LAN tinkle, blokuoja srautą į privačių adresų diapazonus, kad įrenginys liktų paslėptas nuo kaimynų. Spausdintuvai, vietiniai failų serveriai ir pats maršrutizatorius dingsta už to jungiklio. Grėsmių apsaugos funkcijos, filtruojančios DNS, įdiegia savo kabliukus ir pranešama, kad jos panašiai sugriauna vietinį pasiekiamumą.
Išjunkite abi, visiškai uždarykite klientą, tada patikrinkite adresą. Ši seka atskiria srautą blokuojančią funkciją nuo tunelio, kuris jį maršrutizuoja neteisingai, ir užima dvi minutes, o ne popietę su statiniais maršrutais.
ping 192.168.1.50
tracert -d 192.168.1.50
route print -4
Jei adresas atsako išjungus funkcijas, turite politikos sprendimą, o ne gedimą: rinkitės palikti funkciją išjungtą, pridėti išimtį arba sutikti, kad įrenginys liks nematomas vietiniame tinkle.
Naudokite kliento išimties kelią, siaurai
Kai funkcija turi likti įjungta, palaikoma išeitis yra paties kliento skaidytas tuneliavimas. Laikykite išimtį tokią mažą, kokią leidžia reikalavimas, o tai paprastai reiškia vieną mazgo adresą vienam serveriui arba vieną prefiksą vienam segmentui. Taisyklė, apimanti visą privatų diapazoną, yra nuolatinė skylė, kurios niekas neprisimins pridėjęs ir kurios niekas nedrįs pašalinti.
Tada pirmiausia patikrinkite pagal adresą, o paskui pagal vardą. Jei adresas atsako pirmuoju šuoliu fizinėje tinklo sietuvoje, išimtis veikia. Jei vardas vis dar nepavyksta, perėjote prie DNS, nes tunelio sprendėjas nežino vietinės zonos ir jokia maršrutizavimo pakeitimas to neišmokys.
Palikite maršrutą arba išimtį, bet ne abu, ir užrašą, kuri iš jų atlieka darbą. Du persidengiantys mechanizmai slepia vienas kitą, ir kitas žmogus, derindamas šį įrenginį, pašalins vieną iš jų ir nepamatys jokio pokyčio.
Kai kliūtis yra klientas
Kai kurie rinkiniai filtruoja srautą taip, kad nei statinis maršrutas, nei kliento išimtis negali jų įveikti. Kai tai yra išvada, sąžiningos galimybės yra laukti apėjimo funkcijos arba prisijungti įprastu OpenVPN klientu su paties teikėjo profiliu, ką rekomendavo ir pardavėjo palaikymo atsakymas pradinėje ataskaitoje.
Supraskite mainus prieš atlikdami tą pakeitimą. Įprastas profilis elgiasi kaip bet kuris paprastas tunelis: įdiegia savo maršrutus ir neperstato likusio kamino, todėl siauras maršrutas į mazgą vis tiek elgiasi taip, kaip tikitės. Prarandate viską, ką prekės ženklo klientas įgyvendino aplink tunelį, įskaitant kill switch ir DNS filtravimą, ir tai reikia sąmoningai atkurti arba priimti kaip nebuvusį.
Kad ir ką pasirinktumėte, užrašykite, kuriam sluoksniui priklausė blokavimas. Paketas, kuris niekada neišėjo iš įrenginio, yra filtro rezultatas, ir joks maršrutizavimo pakeitimas negali pataisyti filtro.