Туннель көтеріледі, клиент жасыл нүкте көрсетеді, бірақ ssh 192.168.1.20 әлі де таймаутқа дейін ілініп тұрады. Кішкентай бұлт инстанциясын жалға алып, оған WireGuard орнатқаннан кейін дәл осыны бастан өткердім: қол алысу ретімен, DNS ретімен, ал үстелімдегі NAS Айдағыдай қолжетімсіз. Туннельде ешқандай ақау жоқ еді. Endpoint менің үйіме маршруты жоқ желіде тұрды. Endpoint орны қандай желілердің көрші екенін анықтайды, сондықтан оны бірінші тию керек ресурс бойынша таңдап, хостингті екінші кезекте салыстырыңыз.

Туннель тек endpoint маршруттай алатын желілерге жетеді

VPN клиентіңізге endpoint-тің өз маршруттау домені ішінде мекенжай береді. Клиент 192.168.1.20-ға пакет жібергенде, endpoint оның қайда кететінін білуі керек. Бұлт VM кестесі провайдердің VPC ішкі желілерін біледі; ол сіздің LAN туралы ешқашан естімеген. Қосылған және қолжетімді екі бөлек факт, ал үй мен бұлт арасындағы шатасудың көбі біріншісін екіншісінің дәлелі деп қабылдаудан туады.

Бір команда шешеді. Endpoint-те ip route get 192.168.1.20 не LAN интерфейсін атайды, не әдепкі маршрутты көрсетеді. Үй машинасында жауап — LAN жағы. Бұлт инстанциясында пакет интернетке қарай шығып өледі. net.ipv4.ip_forward=1 қосу және MASQUERADE ережесін қосу мұны өзгертпейді, өйткені үй жағында бірдеңе бұлтқа байланысты аяқтамайынша, жіберіп беруге ештеңе жоқ.

Үй жағдайының екінші жартысы бар: қайту жолы. Туннель қорабы арқылы LAN-нан шығатын пакеттер NAT-талады, немесе LAN-ға туннель ішкі желісіне қарай статикалық маршрут керек. Тек бір бағыт жұмыс істегенде, мынаны тексеріңіз: sysctl net.ipv4.conf.all.rp_filter. Қатаң кері маршрут сүзгісі маршрут болжайтыннан өзге интерфейске келетін жауаптарды тастайды, ал симптом дәл өрт қабырғасы ережесіне ұқсайды.

Конфигурацияға тиер алдында симптомды оқыңыз

Туннель құрылмайды: кілттер, endpoint мекенжайы немесе бұғатталған UDP порты. Туннель көтерілді, бірақ LAN хосттары өлі: орналасу және маршруттау. Туннель көтерілді, бірақ шолу өлі: қайта бағыттау, NAT немесе DNS. Бұлар үш қабат және үш түрлі тексеру, ал қазірдің өзінде дұрыс конфигурацияны қайта жазу кешті ысырап етеді.

SymptomFirst suspectCheck
Handshake fails, no transferKeys, endpoint port, UDP blockedwg show, then the port from outside
Peer pings, LAN host times outNo route to the LANip route get on the endpoint
Tunnel up, name resolution failsDNS options in the peer configResolve a name from the client
Large transfers reset the connectionMTULower the tunnel MTU and retry

Үйге кіретін қолжетімділік жеке тексеруге лайық, өйткені ол үйде хостингтің мүлде мүмкін екенін шешеді. Роутеріңіз хабарлаған WAN мекенжайын сыртқы хост көретін мекенжаймен салыстырыңыз. Егер ол 100.64.0.0/10 ішіне түссе немесе екеуі сәйкес келмесе, сіз carrier-grade NAT артындасыз және ешбір портты қайта бағыттау ешқашан жұмыс істемейді. Нақты нұсқалар — реле, үйден сыртқа қоңырау шалатын бұлт байланысы, немесе endpoint-ті жылжыту.

Үйдегі хостинг не береді және қанша тұрады

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

Шығындар физикалық. Үйдегі жүктеу бір уақытта барлық клиенттер үшін шек, сондықтан бейнеқоңырау мен резервтік көшірме бір құбыр үшін бәсекелеседі. Электр, дискінің тозуы, патчтар, DDNS қажет ететін динамикалық мекенжай, UDP-ны ішке қайта бағыттайтын роутер және мүмкін қос NAT — бәрі сізге түседі. Адамдар өткізіп жіберетін нәрсе — қалпына келтіру: егер қорап сіз жоқта өлсе, үйге барар жалғыз жолыңыз да онымен өледі. Бірдей кілттері бар екінші құрылғы немесе кемінде физикалық қатынау жоспарын ұстаңыз.

Үйде қорапсыз LAN қатынауын қаласаңыз, өзіңізді көрсетудің орнына байланыс құрыңыз. Бұлт endpoint-і роутерге айналады: үй жағынан AllowedIPs = 192.168.1.0/24 бар туннель бұлт peer-іне, қоса бұлт қорабында қайта бағыттау және NAT. strongSwan-ның қайта бағыттау нұсқаулығы сол конфигурацияның қайту жартысын түсіндіреді, және дәл сонда бұл әрекеттердің көбі сәтсіз аяқталады. Үй peer-і енді бірдеңе жұмыс істеуі үшін көтерілуі керек, сондықтан сіз бір тәуелділікті екіншісіне айырбастадыңыз және мұны жазып қою керек.

Бұлт endpoint-і шын мәнінде не үшін керек

Бұлт endpoint-і ашық шығысыңызды өзгертеді. Трафик провайдердің мекенжай ауқымынан шығады, ал сайттар үй мекенжайыңыздың орнына сол мекенжайды көреді. Құндылық осында, және сондықтан бұлт VPN сізге NAS бермейді: сіз шығысты жылжыттыңыз, LAN-ды емес.

Сіз әлі де қонақ жүйесін, VPN қызметін және оның тіркелгі деректерін басқарасыз, ал провайдер гипервизор мен физикалық желіні басқарады, және бұл бөлініс түнгі сағат 2-де бірдеңе бұзылғанда маңызды. Ашық endpoint үздіксіз сканерленеді, сондықтан басқару портын жабық ұстаңыз, тек VPN портына рұқсат беріңіз және кесте бойынша патчтаңыз. Қауіпсіздік топтары мен провайдердің өрт қабырғалары сол портқа рұқсат беруі керек, ал кейбір бұлттар инстанциядағы көз мен меже тексеруін реттемесеңіз, қайта бағытталған трафикті тастайды.

Кішкентай инстанция бір уыс клиентті қамтиды, бірақ шифрлау — CPU жұмысы, ал кредиттері таусылған burstable инстанция ұзақ жүктемеде біркелкі емес әрекет етеді. Техникалық сипаттама парағын емес, шын мәнінде қолданатын жолды қараңыз.

Жазып қоюға болатын шешім

Орналасуды қораптағы жапсырма емес, тапсырма шешеді. Үй LAN-ындағы құрылғы керек болса, ең арзан дұрыс жауап — үйдегі endpoint; бұлт қорабы қайту байланысын құрғаннан кейін ғана жұмыс істейді. Басқа ашық шығыс керек болса, жауап — бұлт, ал LAN сұрағы мүлде туындамайды. Екеуін де қалау заңды, бірақ бұл екі endpoint, екі кілт жиынтығы және екі құжатталған маршрут деген сөз.

What you needEndpoint locationWhat else must exist
Reach a NAS or printer on the home LANA box on that LANPort forward or relay, DDNS, recovery plan
Browse from an exit unrelated to homeCloud instanceFirewall and egress rules, patching
Both, reliablyTwo endpoints, or cloud plus a link homeSeparate keys, routes, documented failure modes

Клиенттен ретімен тексеріңіз: қол алысу, peer мекенжайы, LAN хост, содан кейін шығыс IP. curl -s https://ifconfig.me интернеттің не көретінін көрсетеді, ал ip route get 192.168.1.20 endpoint-тің не ойлайтынын көрсетеді. Шығыс тексеруі өтіп, NAS тексеруі ілініп тұрса, орналасу туралы жауабыңыз бар; клиенттегі AllowedIPs-ті өзгерту маршрут жасамайды. 10.8.0.0/24, 192.168.1.0/24 сияқты бөлінген жол LAN трафигін туннельде тек сол маршрут шын мәнінде болғанда ұстайды.

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