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

Өзөк чечет, демон эмес

Өткөрүлүүчү пакет LAN интерфейсине келет жана маршруттоо коду эрежелердин тизмесин артыкчылык тартибинде баалайт. Селектору биринчи дал келген эреже таблицаны атайт, ал эми ошол таблицанын маршруттары чыгуу түзмөгүн тандайт. Эгер таблицада дал келген маршрут болбосо, издөө кийинки эрежеге өтөт, жана дал ушул деталь жарым бүткөн конфигурацияны катуу эмес, тынч ийгиликсиз кылат.

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

Ар бир нускага өз ресурстар топтомун бериңиз

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

dev tun-office
route-nopull
pull-filter ignore "redirect-gateway"

dev tun-lab
route-nopull

route-nopull сервер түрткөн маршруттарды жергиликтүү таблицадан тыш кармайт, саясат таблицалары ачык болушу керек болгондо сиз дал ушуну каалайсыз. Белгилүү сервер redirect-gateway параметрин да түртөбү жана кардарыңыздын версиясы чыпка формасын колдойбу, муну божомолдоонун ордуна колдонмодон текшерген жөн.

Матрицаны жазыңыз: булак, таблица, түзмөк

Ар бир кардар тобу үчүн булак дареги боюнча таблица тандаган эреже кошуңуз, анан көздөлгөн жолду ошол таблицага салыңыз:

ip rule add from 10.8.1.0/24 lookup 100 priority 1000
ip rule add from 10.9.1.0/24 lookup 200 priority 1000
ip route add default dev tun-office table 100
ip route add default dev tun-lab table 200

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

Туннелдин өз ташуусу кардар тобунда эмес

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

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

Жолду тандоо ага уруксат бербейт

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

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

Бир туннел кулаганда эмне болот

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

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

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