Една рута до домаќин, една адреса и ping веднаш паѓа со General failure наместо барањето да истече. Токму таа разлика е целата дијагноза. Истекувањето значи дека пакетот излегол и нешто го игнорирало. General failure значи дека Windows воопшто не можел да го предаде пакетот на ниту еден интерфејс.

Затоа, кога табелата со рути изгледа совршено, а грешката сѐ уште е General failure, блокирањето се случува под одлуката за рутирање, а клиентот на провајдерот е тоа што работи таму.

Прочитајте ја грешката пред табелата со рути

Windows ја враќа таа грешка кога не може да најде интерфејс за испраќање и не кажува ништо за тоа што дестинацијата би го направила со пакетот. Достапноста, огнените ѕидови од другата страна и достапноста на услугата се сите подоцнежни прашања до кои сѐ уште не сте стигнале.

Класичната конфигурација за овој случај е рута до домаќин што една LAN адреса ја насочува кон физичкиот портал за да го заобиколи тунелот. route add ја прифаќа, route print ја прикажува, а ping сѐ уште паѓа, бидејќи драјверот за филтрирање веќе одлучил дека на пакетот не му е дозволено да излезе.

Пред да го прифатите тоа објаснување, потврдете дека рутата навистина се избира: проверете го индексот на интерфејсот и метриката и уверете се дека записот не е застарен по повторно поврзување. Рута што покажува на интерфејс што повеќе не постои дава слична грешка од многу помалку интересна причина.

Три слоја, три различни сопственици

Победува оној слој што работи последен, а овие три не се по редоследот што повеќето луѓе го претпоставуваат.

LayerWhat it decides
Routing tableWhich interface and next hop should carry the packet
Client filter driverWhether this packet is permitted to leave outside the tunnel at all
Client featureWhether a named feature, such as LAN blocking, is active right now

Средниот слој е причината зошто една рута може истовремено да биде исправна и бескорисна. Клиентите на провајдерите инсталираат филтер и правила за огнен ѕид за да се отфрли сообраќајот надвор од тунелот, а тоа е истиот механизам што го спроведува нивниот kill switch. Ништо во табелата со рути не учествува во таа одлука.

Третиот слој објаснува чуден извештај што пристигнува редовно: локалната подмрежа е недостапна дури и откако клиентот е исклучен. Услугата сѐ уште работи и филтерот сѐ уште е инсталиран, па небиденоста поврзан не е исто што и не филтрирање. Излезете од клиентот наместо само да го исклучите пред да заклучите нешто.

Што да пробате, по ред

Започнете со отстранување на функциите што се евтини за отстранување и лесни за враќање. Откривањето на LAN, понекогаш наречено невидливост на LAN, го блокира сообраќајот кон приватните опсези на адреси за машината да остане скриена од соседите. Печатачите, локалните датотечни сервери и самиот рутер исчезнуваат зад тој прекинувач. Функциите за заштита од закани што филтрираат DNS инсталираат свои куки и се известува дека ја кршат локалната достапност на сличен начин.

Исклучете ги двете, излезете целосно од клиентот, потоа тестирајте ја адресата. Таа низа одделува функција што блокира сообраќај од тунел што го рутира погрешно и трае две минути наместо попладне со статични рути.

ping 192.168.1.50
tracert -d 192.168.1.50
route print -4

Ако адресата одговори откако функциите се исклучени, имате одлука за политика, а не дефект: изберете меѓу оставање на функцијата исклучена, додавање исклучок или прифаќање дека машината останува невидлива на локалната мрежа.

Користете ја патеката за исклучок на клиентот, тесно

Кога функцијата мора да остане вклучена, сопственото поделено тунелирање на клиентот е поддржаниот излез. Држете го исклучокот толку мал колку што барањето дозволува, што обично значи една адреса на домаќин за еден сервер или еден префикс за еден сегмент. Правило што покрива цел приватен опсег е трајна дупка што никој нема да се сети дека ја додал и никој нема да се осмели да ја отстрани.

Потоа проверете прво по адреса, а потоа по име. Ако адресата одговори со прв скок на физичкиот портал, исклучокот работи. Ако името сѐ уште паѓа, сте преминале на DNS, бидејќи резолверот на тунелот не ја знае локалната зона и ниту една промена на рутирањето нема да го научи тоа.

Задржете ја рутата или исклучокот, не двете, плус забелешка за тоа кое ја врши работата. Два механизми што се преклопуваат се кријат еден со друг, а следниот човек што ќе ја дебагира оваа машина ќе отстрани еден од нив и нема да види никаква промена.

Кога клиентот е пречката

Некои сборки го филтрираат сообраќајот на начин што ниту статична рута ниту исклучок на клиентот не можат да го победат. Кога тоа е наодот, чесните опции се да се чека функцијата за заобиколување или да се поврзете со обичен OpenVPN клиент користејќи го сопствениот профил на провајдерот, што го препорача и одговорот на поддршката на производителот во оригиналниот извештај.

Разберете ја замената пред да ја направите таа замена. Обичниот профил се однесува како секој обичен тунел: ги инсталира своите рути и не го преструктурира остатокот од стекот, па тесната рута до домаќин сѐ уште се однесува како што очекувате. Она што го губите е сѐ што брендираниот клиент го имплементирал околу тунелот, вклучително kill switch и DNS филтрирање, и тоа мора намерно да се репродуцира или да се прифати како отсутно.

Што и да изберете, запишете кој слој го поседувал блокирањето. Пакет што никогаш не ја напуштил машината е резултат на филтер и ниту една промена на рутирањето не може да поправи филтер.

Поврзани статии