VPN серверіндегі пул өрісінен бастаңыз, электрондық кестеден емес. Сол жерге енгізгеніңіз кейін қосылатын әрбір клиенттің ішкі мекенжай кеңістігіне айналады және ол сол клиенттер жететін LAN-мен, оның артындағы маршрутталған сайттармен және клиенттің үйде бұрыннан бар мекенжайымен қатар өмір сүруі керек. Пул сақталғаннан кейін бір клиентті дереу қосыңыз, өйткені сол бірінші қосылым мәннің іс жүзінде жұмыс істейтінін айтады. Одан әрі шолу сыртқа қарай жылжиды: клиент алған мекенжай, жауап жүретін жол және сіз қалдыратын жазба.

Пул өрісінен бастаңыз, ешбір клиент қосылмай тұрып

Әр өнім мұны әртүрлі көрсетеді, сондықтан мекенжайларды шынымен беретін нысанды табыңыз. OpenVPN-де келесі бос мекенжайды беретін сервер жағындағы пул нұсқаулығы бар, IKEv2 шлюзінде серіктес конфигурациясына байланған пул бөлімі бар, ал WireGuard-та екеуі де жоқ, өйткені әрбір серіктес өз мекенжайын өз конфигурация файлында алып жүреді. Пул нұсқаулығы мен әр серіктестің мекенжайы өзара алмастырылмайды, ал қатесін өңдеу шолудың қалғанын босқа жұмсайды.

Өрісті алған соң бұрыннан бар ауқымдарды тізіңіз: кеңсе LAN-ы, әрбір маршрутталған сайт, бұлттық VPC және әлі қызметтегі кез келген басқа пул. Қабаттасу префикс арифметикасымен шешіледі, хост нөмірлері таныс көрінуімен емес, сондықтан агрегатты сол ауқымдардың әрқайсысымен салыстырыңыз. Екеуі де 10.x сияқты көрінетін екі ауқым агрегаттары қиылыспаса зиянсыз, ал қиылысса қолдау оқиғасы болады.

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

Клиенттің іс жүзінде алған мекенжайын оқыңыз

Бір клиентті қосыңыз да, пул уәде еткенін емес, туннель хабарлағанын оқыңыз. Клиент ішкі мекенжайын қосылым күйінде көрсетеді, ал Linux-та интерфейс оны тікелей алып жүреді.

Ол мекенжайды сақтаған ауқымыңызбен салыстырыңыз. Егер ол ауқымнан тыс болса, сіз өңдегеннен басқа тағайындау жолын көріп тұрсыз. Префикс ұзындығын да тексеріңіз, өйткені /32 ұстаған клиенттің буында серіктесі жоқ және әрбір межелі орынды әдепкі маршруты арқылы жібереді.

ip -4 addr show tun0
ip route get 192.168.50.20

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

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

Қызметтен жауапты кері қарай бақылаңыз

Пул жауаптар оған қайта жете алғанда ғана жұмыс істейді. LAN-дағы қызмет ішкі мекенжайға жауап береді, сондықтан оның шлюзіне пул үшін маршрут немесе қызметтің алдында түрлендіру қажет. Сұраныс туннель арқылы келіп, жауап басқа жолмен шыққанда, күй сақтайтын firewall немесе кері жол тексерісі оны тастайды, ал клиент қосылып, содан кейін ілініп қалатын қызметті көреді. Пулды әр хостқа маршрут қосудың орнына маршруттау жобасына бір жинақталатын блок ретінде қойыңыз.

Түрлендіру жүйенің қалғаны көретін нәрсені өзгертеді. Дереккөз қайта жазылғанда, хост firewall-ындағы және қолданба журналындағы мекенжай түрленген болады, сондықтан пул мекенжайына қарсы жазылған ереже ешнәрсеге сәйкес келмейді және журнал жолын клиентке дейін іздеу мүмкін емес. strongSwan-ның қайта жіберу құжаттамасы IKEv2 шлюзі үшін сол жолдың сервер жағындағы жартысын қамтиды. DNS те сол шектеуді алып жүреді, өйткені клиент жете алмайтын мекенжайға шешілетін атау кейінірек және басқа жерде сәтсіз болады.

Екі клиент, содан кейін бір кері қайтару

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

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

Бас тартылуы тиіс межелі орынмен аяқтаңыз. Барлығына жететін клиент қосылған, бірақ сыналмаған.

Төрт мәнді келесі өзгеріс табатын жерге жазыңыз

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

Онымен бірге иелік жазбасын ұстаңыз: туннель ауқымы VPN серверіне тиесілі, ал LAN-ның DHCP аясында жасалған резервтеу туннель ішіндегі клиент үшін ешнәрсе резервтемейді. Осы бір жол кең тараған қайта жұмысты болдырмайды, онда біреу резервтеу қосып, туннель мекенжайы оған еретін болады деп күтеді.

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