Байланышты ал көтөрүлгөн учурдан баштап көзөмөлдөңүз: клиент аутентификациядан өтөт, 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 клиенти эми жазуучулардын бири эмес. Эгер байланыш көтөрүлгөндөн бир нече секунддан кийин маани артка жылса, башка нерсе али конфигурацияны колдонуп жатат, жана кийинки кадам дагы бир желекче кошуу эмес, ошол компонентти аныктоо. Каалаган акыркы абал окуясыз: бир ээ, бир документтелген саясат жана туннель пайда болгонго чейинкидей так чечкен ажыратылган хост.

Тектеш макалалар