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

Байланыстыру қатесі жергілікті мекенжайды атайды

OpenVPN жергілікті мекенжайды байланыстыра алмайтынын хабарлағанда, ол тасымалдау сокеті туралы айтады: шифрланған қосылымды теңдеске жеткізетін UDP немесе TCP соңғы нүктесі.

Айқын local директивасы демоннан сол сокетті белгілі бір жергілікті мекенжайға байланыстыруды сұрайды. Мекенжай процестің жұмыс істейтін желілік аттар кеңістігінде болуы керек және клиент іске қосылған сәтте бөлінуі мүмкін болуы керек.

Роутерде немесе бұлттың шетінде аударылған жалпыға ортақ мекенжай демон байланыстыра алатын жергілікті мекенжай емес, тіпті сервер дәл сол мекенжайды көрсе де. Бұл айырмашылық бір профильдің үйде жұмыс істеп, бұлттық инстанцияда неге сәтсіз болатынын түсіндіреді. Ол сондай-ақ жалпыға ортақ мекенжайды loopback интерфейсіне қосудың неге көмектеспейтінін түсіндіреді, өйткені тасымалдау содан кейін желі жауап қайтара алмайтын мекенжайдан шығады. Профильді өңдеуге дейін интерфейстер тізімін оқыңыз.

local мен remote шын мәнінде нені таңдайды

remote байланысатын теңдесті атайды. local сол сокеттің жақын ұшын байланыстырады. nobind операциялық жүйеге жергілікті мекенжай мен портты да таңдауға мүмкіндік береді, сондықтан үйдегі роутерлердің артындағы клиенттер әдетте екі директиваның ешқайсысынсыз жұмыс істейді.

Бұл екі директиваның ешқайсысы туннельдің ішіндегі мекенжайға қатысы жоқ.

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

ip -brief address show
ip route get 203.0.113.10

Ішкі мекенжай серверден келеді

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

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

Оқылатын интерфейстер де өзгеше. ifconfig параметрлері мен пул конфигурациясы ішкі жағын сипаттайды, ал remote, local, proto және nobind сыртқы жағын сипаттайды. Екі тізімді бөлек ұстау форумда кездесетін шатастыратын мысалдардың барлығын дерлік түсіндіреді. OpenVPN 2.6 нұсқаулығы дәл осы себептен оларды бөлек бөлімдерде сипаттайды.

Тұзақ: өз тасымалдауын ұстап алатын толық туннель

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

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

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

Шатасудың алдын алатын әдет

Профильдегі әрбір мекенжайды оқып, өңдеуге дейін оның қай қабатқа жататынын шешіңіз.

Егер ол тасымалдаудың алыс ұшын атаса немесе оның жақын ұшын байланыстырса, бұл сыртқы мекенжай және іске қосуға дейін болуы керек. Егер ол туннельдің ішінде не болатынын сипаттаса, ол серверден немесе топологиядан келеді, және ешбір жергілікті директива оның орнын баса алмайды.

Екі тізімді профильдің жанындағы орналастыру жазбаларына жазыңыз. Келесі ақаулықтарды жою сессиясы сонда болжамнан емес, қабаттан басталады.

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