Тунел се подиже, клијент показује зелену тачку, а ssh 192.168.1.20 и даље виси док не истекне време. Управо то сам доживео пошто сам изнајмио мали cloud пример и ставио WireGuard на њега: руковање у реду, DNS у реду, а NAS на мом столу исто тако недоступан као да је на Месецу. Са тунелом није било ништа лоше. Endpoint је стајао у мрежи која нема руту до моје куће. Локација endpoint-а одлучује које су мреже суседне, зато је изаберите према ресурсу који прво морате да дохватите, а хостинг поредите друго.

Тунел стиже само до мрежа које endpoint може да рутира

VPN даје вашем клијенту адресу унутар сопственог домена рутирања endpoint-а. Када клијент пошаље пакет на 192.168.1.20, endpoint мора да зна где он иде. Табела cloud VM-а познаје подсети VPC провајдера; о вашем LAN-у никада није чула. Повезано и доступно су две различите чињенице, а већина забуне између куће и облака долази од узимања првог као доказа другог.

Једна команда то решава. На endpoint-у ip route get 192.168.1.20 или именује LAN интерфејс или показује на подразумевану руту. На кућној машини одговор је страна LAN-а. На cloud примеру пакет излази ка интернету и умире. Укључивање 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-а и ниједно прослеђивање порта никада неће радити. Праве опције су релеј, cloud веза која зове из куће напоље, или премештање endpoint-а.

Шта хостинг код куће даје и колико кошта

Кућа је једино постављање које је подразумевано унутар LAN-а, и то је цео разлог да тамо ставите сервер. Уређаји који одговарају само на локалном сегменту, као штампачи и административне странице NAS-а које одбијају нелокалне подмреже, раде без додатног рутирања. Такође сами управљате машином, рутером и везом.

Трошкови су физички. Отпремање из куће је плафон за све клијенте одједном, па се видео позив и резервна копија такмиче за исту цев. Струја, хабање диска, закрпе, динамичка адреса којој треба DDNS, рутер који мора да проследи UDP унутра, и могући двоструки NAT — све то пада на вас. Оно што људи прескачу је опоравак: ако кутија умре док вас нема, ваш једини пут до куће умире са њом. Држите други уређај са истим кључевима, или барем план за физички приступ.

Ако желите приступ LAN-у без кутије код куће, изградите везу уместо да се претварате. Cloud endpoint постаје рутер: тунел са кућне стране са AllowedIPs = 192.168.1.0/24 на cloud peer-у, плус прослеђивање и NAT на cloud кутији. Водич за прослеђивање strongSwan-а пролази кроз повратну половину те поставке, и ту већина ових покушаја не успева. Кућни peer сада мора да буде горе да би ишта радило, па сте заменили једну зависност другом и требало би то да запишете.

Чему cloud endpoint заиста служи

Cloud endpoint мења ваш јавни излаз. Саобраћај излази из опсега адреса провајдера, и сајтови виде ту адресу уместо кућне. У томе је вредност, и зато вам cloud VPN не даје NAS: преместили сте излаз, не LAN.

И даље управљате гостујућим системом, VPN услугом и њеним акредитивима док провајдер управља хипервизором и физичком мрежом, и та подела је важна када се нешто поквари у 2 сата ујутру. Јавни endpoint се непрекидно скенира, зато држите порт за управљање затворен, дозволите само VPN порт и крпите по распореду. Сигурносне групе и провајдерови заштитни зидови морају да дозволе тај порт, а неки облаци одбацују прослеђени саобраћај ако не подесите проверу извора и одредишта на примеру.

Мали пример покрива шаку клијената, али шифровање је CPU посао, а burstable пример коме понестане кредита понаша се неравномерно под трајним оптерећењем. Гледајте пут којим стварно идете, а не спецификацију.

Одлука коју можете да запишете

Задатак одређује постављање, не етикета на кутији. Ако вам треба уређај на кућном LAN-у, најјефтинији исправан одговор је endpoint код куће; cloud кутија ради само после тога што изградите повратну везу. Ако вам треба другачији јавни излаз, одговор је облак и питање 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 саобраћај у тунелу само када та рута стварно постоји.

Повезани чланци