"Кеңсе трафиги VPN аркылуу өтөт" деген split-tunnel жазуусу бир чечимди документтештирип, дагы үчөөнү эске салды. Пакет деңгээлинде маршруттоо таблицасы интерфейсти багыт дареги боюнча тандайт; ат деңгээлинде чечүүчү серверди суроо боюнча тандайт, жана бул эки тандоо көз карандысыз жүргүзүлөт. Ошондуктан туура документтелген префикс дагы эле ички атты коомдук дарекке чечкен, же маршрут мыкты көрүнгөндө эч нерсени чечпеген машина чыгарышы мүмкүн.

Эки тандоо, бир туташуу аракети

Колдонмо files.corp.example дарегине туташканда, пакет пайда боло электе эки издөө аткарылат. Чечүүчү суроону кайсы сервер алаарын издөө домендери, ар бир байланыш үчүн маршруттоо домендери же профилдин ачык эрежеси аркылуу чечет. Андан кийин маршруттоо таблицасы алынган даректин кайда кетерин багыт менен эң узун префикс дал келүүсү аркылуу чечет.

Бул эки чечимди эч нерсе байланыштырбайт. Жеке аймак 10.20.4.11 дареги менен жооп бере алат, ал эми маршруттоо таблицасы 10.20.0.0/16 диапазонун туннелге жиберет, жана туташуу иштейт. Кайсынысын болсо да которуңуз, ал экинчисине окшош түрдө ишке ашпайт: туура DNS саясаты жана жок маршрут чечилген ат менен күтүү убактысын берет, ал эми туура маршрут жана коомдук чечүүчү таза түрдө туура эмес жерге багытталган дарек берет.

Бөлүнгөн горизонттун DNS муну ого бетер курчутат. Бир эле ат ички чечүүчүдөн жеке даректи жана интернетке караган чечүүчүдөн коомдук даректи кайтара алат, ошондуктан префиксти гана жазуучу жазуу кардар чындап кайсы даректи колдонорун болжолдой албайт. Чечүүчүнүн жолун жазыңыз, болбосо дарек болжол гана.

Маршрут жөнүндө гана жазуу эмнени калтырат

Маршрут жөнүндө гана жазуу split-tunnelдин эң көп кездешкен бузулушу үчүн жараксыз: аттар. Колдонуучу ички тармак жүктөлбөйт деп билдирет, туннел күйүп турат жана префикс бар. Билетти алган адамда кайсы чечүүчү жооп бериши керек болчу деген жазуу жок, туура эмес издөө уландысын блоктолгон серверден ажыратуунун жолу жок, жана салыштыруу үчүн базалык сызык жок.

Экинчи калтыруу — өзгөчөлүктөрдүн тизмеси. Split-tunnel долбоорун туннелден сыртта калган нерсе да, ага кирген нерсе да бирдей аныктайт, жана алынып салынган диапазондор адатта биринчи бузулат, анткени такыраак жергиликтүү маршрут же кардар тараптагы чыпкалоо профилди тийбей эле ниетти басып ала алат.

Үчүнчүсү — туннелдин алыскы тарабы. Кардар маршруту пакетти гана зымга салат; шлюз аны дагы эле өткөрүп жибериши жана кайтуу жолу болушу керек. strongSwanдын өткөрүп жиберүү жетекчилиги шлюздеги өткөрүп жиберүү жана брандмауэр эрежелери мүмкүнчүлүктүн бөлүгү экенин, болжолдой турган сантехниканын бөлүгү эмес экенин эскертет.

Жазууну аткарылуучу кылган талаалар

Ар бир агымга бир сап, ал эми агым — багыт кошуу ат кошуу ээси. Булар чыныгы окуя менен жолукканда туруштук бере турган талаалар:

FieldWhy it has to be written down
Destination prefix and address familyThe route is per family; an IPv4 note says nothing about a AAAA answer
Selected tunnel or direct pathNames the decision, not the symptom
Private namespace and resolverWhich domain, which server, which search suffix
Public name pathConfirms public names do not accidentally use the private resolver
Where the rule livesClient profile, server push, OS policy or management tool
Owner and review dateNamespaces change owner more often than routes change

"Кайда жашайт" сабын адамдар өткөрүп жиберет. Сервер түрткөн префикс, кардар профили кошкон маршрут жана shellге терилген маршрут аларды ким өзгөртө алары жана алар кайра туташууга туруштук берери менен айырмаланат. Бул талаа жок болсо, кийинки инженер үчөөнүн кайсынысын карап жатканын айта албайт.

Ар бир эрежеге бир тест, туннелге бир эмес

Ар бир сапка эки зыянсыз текшерүү керек: бири маршрутту, бири атты машыктырат. Маршрут үчүн туннелден өтүшү керек нерсени сурап, жеткиликтүүлүктү эмес жолду ырастаңыз, мисалы tracert -d 10.20.4.11 Windowsто же ip route get 10.20.4.11 Linuxто. Ат үчүн жеке атты сурап, кайсы сервер жооп бергенин жазыңыз, жазууда аталган чечүүчүгө каршы resolvectl query files.corp.example же dig files.corp.example колдонуп.

Терс күтүүнү да кошуңуз: туннел өчкөндө эмне болушу керек. VPN жок бөгөттөө күйүк турган Android же iOS түзмөгүндөгү алынып салынган колдонмонун такыр байланышы болбошу мүмкүн, ал эми иш такта кардары туннел кайра туташып жатканда ошол эле колдонмону иштетип тура алат. Көздөлгөн жоопту жазуу "VPN колдонмомду бузду" дегенди текшерүүгө боло турган билдирүүгө айландырат.

Жазууну конфигурация менен бирге сактаңыз

Жазууну ал сүрөттөгөн профилдин жанында сактаңыз жана аны ошол профил менен версиялаңыз. Эч ким жаңыртпаган викидеги документ — ушак; түртүлгөн маршруттар жана чечүүчү саясаты менен бир репозиторийдеги таблицаны ошол эле өзгөртүүдө караса болот.

Бир нерсе бузулса, дагы бир өзгөчөлүк кошпой туруп, колдонулган маршрутту жана таасир этүүчү чечүүчүнү жазуу менен салыштырыңыз. Үч кеңири таралган себептин экөө — эски ат мейкиндигинин эрежеси жана колдонмо саясатынан тышкаркы жардамчы процесс — дал VPN бузулушуна окшош жана жазуу префикстерди гана тизмелесе көрүнбөйт.

Жазууну бүттү деп атаардан мурун, анын төмөнкүлөргө жазуу түрүндө жооп берерин ырастаңыз: кайсы префикс, кайсы дарек үй-бүлөсү үчүн; кайсы жеке ат мейкиндиги, кайсы чечүүчү менен жооп берилген; кайсы аттар атайын коомдук бойдон калат; ар бир эреже кайда конфигурацияланган жана анын ээси ким; жана маршрутту далилдеген бир буйрук жана атты далилдеген бир буйрук. Булардын бири жетпесе, кийинки окуя нөлдөн диагностикаланат.

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