Байланысты ол көтерілген сәттен бастап қадағалаңыз: клиент аутентификациядан өтеді, pppd келіссөз жүргізеді, содан кейін бірдеңе DNS параметрлерін операциялық жүйеге жазады. Егер VPN сіздің шешушіңізді өзгерткенін ғана білсеңіз, оның қай кезеңі мұны істегенін әлі білмейсіз. Олардың екеуі мұны істей алады, ал құжатталған pppd интеграциясын қолданатын клиентте олар бір қатысушы болып көрінетіндей жақын жұмыс істейді. Жазушыны атау — бірінші қадам; оның орнын басатынды таңдау — екіншісі, және бұл өзінің сәтсіздік режимдері бар бөлек шешім.

Төмендегі реттілік клиентті сыртқа қарай қадағалайды: байланыс нені өзгертті, қай ажыратқыш қай жазушыны басады, кім қамқорлыққа алуы керек және нәтиженің қайта қосылудан аман қалғанын қалай растау керек. Әр кезең түрлі із қалдырады, және дәл сол із тапсыру шынымен болды ма, жоқ па — соны айтады.

Байланыс шынымен нені өзгерткенінен бастаңыз

Әдеттегі командаңызбен бір рет қосылып, шешімді бұрын және кейін салыстырыңыз. systemd-resolved жұмыс істейтін Linux хостында resolvectl status әр байланыс үшін DNS серверлерін және іздеу домендерін шығарады, ал өз серверлерін алып жүретін жаңа tun немесе ppp байланысы клиент жағындағы жаңартудың саусақ ізі. macOS-та scutil --dns шешуші конфигурациясын қолданбалар оған жүгінетін ретпен көрсетеді.

Оны өзгерер деп күткен файлмен салыстырыңыз. Әр байланыс көрінісіндегі байланысқа байланған жазба мен қайта жазылған /etc/resolv.conf екі түрлі нәтиже, ал екіншісі мүлде басқа нәрсе басқаратын символдық сілтеме болуы мүмкін. Шешушінің мекенжайын, іздеу домендерін және интерфейс атауын бір мезетте жазып алыңыз; олардың кез келгеніндегі өзгеріс басқа жазушыны нұсқайды. Осы базалық сызықсыз әрбір кейінгі түзету үш компоненттің қайсысы жылжығаны туралы болжам ғана.

Екі ажыратқыш және әрқайсысы басатын жазушы

openfortivpn өзі басқара алатын екі жазушыны да өшіретін опция фрагментін құжаттайды, және әр ажыратқыштың нұсқаулық бірдей параметр деп санайтын толық жазылған баламасы бар.

openfortivpn gw.example.com:443 --no-dns --pppd-no-peerdns
# written out in long form
openfortivpn gw.example.com:443 --set-dns=0 --pppd-use-peerdns=0

--no-dns клиенттің шлюзден үйренген DNS серверлерін қолдануына жол бермейді, ал --pppd-no-peerdns pppd-нің серіктес DNS-ін жүйеге итеруіне жол бермейді. upstream нұсқаулығы PPP арқылы DNS жаңартулары клиенттің өз DNS жаңартуларымен жарыса алатынын ескертеді, сондықтан екеуінің бірін жеткілікті деп санаудың орнына екі ажыратқыш та фрагментте болуы керек.

Ешбір ажыратқыш орнын басатын шешушіні атамайды, және ешқайсысы желі менеджеріне, DHCP клиентіне немесе бөлек VPN интеграциясына кейін шешім жазуға кедергі жасамайды. Екі жазушыны басу өрісті иеленген емес, ашық қалдырады. Егер үшінші компонент DNS-ті әлдеқашан басқарса, фрагмент сіз бақылай алатын ештеңені өзгертпейді; егер оны ештеңе басқармаса, сіз жеке атауларды шешудің жалғыз көзін жаңа ғана жойдыңыз. Бұл ауыстырушы иесі алдымен таңдалып, жеке сыналған жағдайда ғана жарамды реттеу.

Бірдеңені өшіруден бұрын иесін таңдаңыз

Алдымен жұмыс атаулары бойынша сұрауларға кім жауап беретінін шешіңіз, өйткені бұл таңдау одан кейінгінің бәрін шектейді. Қолданыстағы шешушіні сақтау жеке аймақ клиент отырған жерден әлдеқашан қолжетімді болуы керек дегенді білдіреді, ал кеңсе ішіндегі жеке шешуші туннель көтерілгенде аман қалатын маршрутты қажет етеді. Әрбір сұрауды бір ішкі қызметке жіберу — сәтсіздік режимі өткірірек үшінші саясат: сол қызмет қолжетімсіз болғанда, жария атаулар жеке атаулармен бірге сәтсіздікке ұшырайды.

Маршрут иелігі әдейі бөлек қалады. Маршрут опциялары DNS-ті өзгерткеніңіз үшін міндетті емес, ал ауыстырғышты орнатпай маршрут орнатуды өшіру жаңа ғана таңдаған шешушіңізді қолжетімсіз ете алады. Маршруттау кестесінен шешушінің мекенжайын арнайы тексеріңіз, тек кездейсоқ сынаған қолданба ішкі желісін ғана емес.

Шешімді әр файл үшін емес, әр байланыс үшін тексеріңіз

Шектеулі немесе домендік шешімі бар хостта қолданбалар шынымен нені қолданатынының тізімі бір /etc/resolv.conf емес, сондықтан шешуші күйін платформа оны ашатын түрде оқыңыз.

resolvectl status
resolvectl query vpn.internal.example.com
resolvectl query example.com
ip route get 10.20.0.53

Байланыс көтерілген соң бір жеке атау мен бір жария атауды сұраңыз және қай байланыстың қайсысына жауап бергенін белгілеңіз. VPN байланысы домендік іздеу тізімін алып жүргенде, жеке атау дұрыс шешіле алады, ал жария атау әлі жергілікті шешушіге барады, және бұл бөліну ақау емес, жұмыс істеп тұрған жоба. Егер жеке сұрау сәтсіз болса, DNS-ке қайта тиюден бұрын шешушіге дейінгі маршрутты қараңыз; егер ол сәтті болып, қолданба әлі сәтсіз болса, қолданба өзінің кэштегі немесе бөлек конфигурацияланған шешушісін оқып жатқан болуы мүмкін.

Қайта қосылып, ажыратылған күйді растаңыз

Байланысты түсіріп, екі сұрауды да қайталаңыз. Таңдалған ие орнатқан нәрсені сол ие алып тастауы немесе қалпына келтіруі керек, сіз үнсіз қалдырған клиент оны қалдырып кетпеуі керек. Туннельден ұзақ өмір сүретін ескірген байланыс жазбасы жеке сұрауларды енді қолжетімсіз мекенжайға жіберуді жалғастырады.

Содан кейін қайта қосылып, сол үш мәнді қайта оқыңыз: шешушінің мекенжайы, іздеу домендері, интерфейс.

Егер олар жазып алған саясатыңызға сәйкес келсе, тапсыру аяқталды және VPN клиенті енді жазушылардың бірі емес. Егер байланыс көтерілгеннен кейін бірнеше секундтан соң мән кері жылжыса, басқа нәрсе әлі конфигурацияны қолданып жатыр, және келесі қадам тағы бір жалауша қосу емес, сол компонентті анықтау. Қалаған соңғы күй оқиғасыз: бір ие, бір құжатталған саясат және туннель пайда болмас бұрынғыдай дәл шешетін ажыратылған хост.

Қатысты мақалалар