WireGuard 5G филиалы: филиал хабқа өзі қоңырау шалсын
Филиал хабқа қоңырау шалғанда, хаб өзгермелі ұялы мекенжайды табудың қажеті жоқ. Баптаңыз, тексеріңіз, содан кейін бұл нені шешпейтінін қараңыз.
Филиалды хабқа бағыттау — бұл жобаның жеңіл жартысы, егер филиал өзгермелі ұялы мекенжайдың артында тұрса және хабтың тұрақты аты болса. Сонда хаб филиалды сіз жаңартып отыруға тиіс жазбадан емес, аутентификацияланған трафиктен үйренеді. Шарт қарапайым: әрқашан филиал бастайды.
Оны әдейі баптаңыз, содан кейін адамдар жұмыс істейді деп ойлайтын бөлігін тексеріңіз. Екі қадам да минуттар алады, ал мұндай жобалар көбінесе екіншісінде сәтсіз болады.
Тұрақты соңғы нүктені қай тарап ұстайды
Филиал конфигурациясы хабтың соңғы нүктесі мен ашық кілтін атайды. Хаб конфигурациясы филиалдың ашық кілтін және оның рұқсат етілген ішкі префикстерін атайды, ал мүлде соңғы нүктесі болмауы мүмкін, өйткені сәйкестік соңғы пакеттің көзі мекенжайынан емес, кілттен келеді. Осы асимметрия — бүкіл механизм, ол хаб жағынан анықтау мәселелерінің тұтас класын алып тастайды.
Филиал аутентификацияланған пакет жібергенде, хаб оның келген көзін жазып алады және жауаптар үшін сол салыстыруды пайдаланады. Сонда ұялы байланыс желісін қайта нөмірлеу келесі қол алысудан басқа ештеңеге тұрмайды, ал енді қажет емес әрбір компонент — ауысу кезінде істен шыға алмайтын компонент. Бұл қасиетті жоспарлы өзгеріс кезінде сынауға тұрарлық, оқиға кезінде емес. Мұны біреу екі шетті де бір уақытта бақылай алатын кезде жасаңыз.
Филиалға қайта нөмірлеуге төтеп беретін конфигурация беріңіз
Соңғы нүкте мен keepalive-ты филиалда ұстаңыз, ал хабтың серіктес жазбасын қатаң кодталған мекенжайдан бос ұстаңыз. keepalive аударылған салыстыруды хабтың бос тұру кезеңінен кейін сұралмаған трафик жіберуіне жеткілікті ұзақ ашық ұстайды.
[Peer]
PublicKey = HUB_PUBLIC_KEY_BASE64
Endpoint = hub.example.net:51820
AllowedIPs = 10.60.0.0/24, 10.60.10.0/24
PersistentKeepalive = 25
Жиырма бес секунд — NAT салыстыруын тірі ұстаудың жиі келтірілетін мысалы, әрбір серіктес үшін талап емес. Оны сіз шын мәнінде байқайтын салыстыру тайм-аутына қарап қойыңыз және интерфейс қосулы тұрғанда ол деректері шектелген желіде трафик тудыратынын ұмытпаңыз.
Хабта филиал серіктесінің рұқсат етілген префикстері филиал жіберетіннің бәрін қамтуы керек. Жетіспейтін префикс алыс шетте маршруттау ақауы сияқты әрекет етеді және екі жақтың ешқайсысында ескерту бермейді, сондықтан оны бірінші нақты пакетке дейін қарап шығуға тұрарлық. Бірінші қосылымға дейін хабтың рұқсат етілген префикстерін филиал интерфейсінің мекенжайларымен салыстырыңыз.
Салыстыруды және ауысуды тексеріңіз
Қол алысудың аяқталатынын, хаб филиалдың ағымдағы соңғы нүктесін тізімдейтінін және филиалдың ішкі мекенжайларына туннель арқылы қол жеткізуге болатынын растаңыз. Бұл — базалық сызық, оны біреу ұялы желіге тиіспес бұрын жазып қою керек. Екі жол шығыс жеткілікті. Оларды уақыт белгісімен бірге билетте сақтаңыз.
wg show wg0
wg show wg0 latest-handshakes
ip route show default
ping -c 3 10.60.10.1
Содан кейін жоба бар болған ақауды сынаңыз. Негізгі WAN-ды тартып алыңыз және филиалдың хабқа барар негізгі маршруты енді ұялы интерфейс арқылы шығатынын растаңыз. Туннель бұзылған физикалық жолды жөндей алмайды, сондықтан өлі жоғары буынға әлі сілтеп тұрған сыртқы маршрут қол алысу тайм-аутын тудырады, ол дәл хаб мәселесіне ұқсайды.
Егер сыртқы жол анық байланыстырылған немесе саясатпен маршрутталған болса, ауысу оны қамтуы керек. Дұрыс оқылатын жоба мен үзілістен аман қалатын жоба арасындағы осы алшақтық әдетте жалғыз жетіспейтін нәрсе.
Бұл жоба нені шешпейді
Мұнда филиалға кіріс қосылымына ешнәрсе рұқсат бермейді. Егер бас кеңседегі бірдеңе ұялы алаңға қоңырау шалуы керек болса, бұл талап үшін туннель бағыты дұрыс емес, ал динамикалық DNS тек атауды жаңартады. Провайдер аудармасы, кіріс саясаты және клиенттің соңғы нүктені жаңартуы — бәрі жолда қалады, ал өзгерген жазба операторлық деңгейдегі NAT-ты аша алмайды.
Филиал префиксін кез келген басқа алаңнан бөлек ұстаңыз және оның қақпасы не өткізетінін шектеңіз. Хабтың тұрақты соңғы нүктесі анықтауды жеңілдетеді, бірақ маршруттау жобасы, мекенжайларды жоспарлау немесе қай қолданба маршруттары ауысудан аман қалады деген сұрақ үшін ештеңе жасамайды.
Runbook-қа төрт нәрсе жазыңыз: кім бастайды, қай префикстер рұқсат етілген, keepalive қаншаға созылады және негізгі желі құлағанда не болады. Дәл осы жолдар болашақ операторға түнде сағат үште шынымен қажет.