Рутерът ви стои зад друг рутер, WAN адресът е частен, а VPN клиентът все пак се свързва. Тази комбинация изненадва хората, които очакват двоен NAT да счупи тунелите, но точно изходящите връзки преводът обработва най-добре. Хостингът на VPN сървър зад същите два слоя е случаят, който обикновено се проваля. Начертайте посоката на връзката, преди да промените нещо.

Първо начертайте посоката на връзката

Отворете страницата за състояние на вътрешния рутер и запишете WAN адреса му, след което го сравнете с адреса, който публична услуга ви съобщава. Ако двата се различават, между рутера ви и интернет стои поне един преводач. Ако WAN адресът попада в 100.64.0.0/10, външният преводач вероятно е на доставчика ви и вие не го контролирате. Тези два факта решават коя от следващите стъпки изобщо може да проработи.

curl -s https://ifconfig.me
ip -brief address
traceroute -n 1.1.1.1

Двоен NAT не е двоен VPN. Преводът пренаписва адреси и портове; той не добавя втори криптиран тунел и не криптира нищо. Разграничаването на двете идеи е важно, защото решенията са напълно различни и едно от тях включва разговор с доставчика ви, а не страница с настройки.

Изходящо: клиентът пита, преводачите съпоставят

Изходящият тунел започва с пакет от вашата машина, така че всеки преводач може да създаде съпоставяне и да пусне отговора обратно. Протоколът, портът и таймерите за бездействие решават дали това съпоставяне ще оцелее достатъчно дълго, за да е полезно. Повечето потребителски рутери се справят с това без никаква конфигурация.

Провалите, които наистина се появяват, обикновено са свързани с изчаквания и поддръжка на протоколи, а не с броя рутери. Тунел, който пада след няколко минути тишина, е изтичащо съпоставяне, а keepalive е стандартният отговор. IPsec има стандартни разширения за NAT-traversal, така че твърдението, че не може да премине през превод, е просто погрешно. Ако тунелът изобщо не се установява, погледнете крайната точка и идентификационните данни, преди да обвинявате топологията.

wg show
ping -c3 10.8.0.1

Спрете, ако изходящият тунел работи от една мрежа, а от друга не. Това сравнение е за мрежите, а не за броя рутери.

Входящо: пренасочването покрива само оборудване, което притежавате

Хостингът на сървър е обратната посока: нова връзка идва от интернет и трябва да стигне до вашата машина през всеки слой. Правило за пренасочване на порт на вътрешния рутер помага само ако външният преводач също доставя този трафик до вас. Повтарянето на локалното правило не дава контрол над оборудването на доставчика.

nc -vz 203.0.113.10 51820
ss -lunp 'sport = :51820'

Сравнете WAN адреса на вътрешния рутер с публичния адрес, който наблюдавахте, и отбележете откъде идва всяка стойност. Ако WAN адресът е частен или в споделения диапазон, външният слой прави превод, който не можете да конфигурирате. Попитайте доставчика каква входяща достъпност поддържа, преди да прекарате цяла вечер с правила, които не могат да влязат в сила. Премахването на рутер или широкото изключване на защитна стена не е диагноза и е лоша сделка за един отворен порт.

Спрете, ако външният слой е на доставчика и той не пренасочва. Тогава поддържаните отговори са друг метод за достъп или релей, а не още едно правило от ваша страна.

Тествайте една променлива наведнъж

Променяйте по едно нещо на тест и записвайте резултата, защото пътят с двоен NAT има повече променливи от този с един рутер. Дръжте профила и устройството фиксирани, след което сравнете друга мрежа за достъп. Отбележете дали преговорите се провалят, дали сесията пада след бездействие или дали се провалят само частните дестинации. Тези три наблюдения сочат към три различни слоя.

journalctl -u wg-quick@wg0 -n 30 --no-pager
ip route get 10.20.30.40

Припокриващите се частни подмрежи са отделен капан, който никакво количество превод не поправя. Ако домашната ви мрежа и отдалечената мрежа използват един и същ диапазон, конфликт на маршрути се появява независимо колко преводача стоят между тях. Пренареждането на номерата от една страна е единственият траен отговор.

Отдалеченият шлюз заслужава същото внимание, защото неговите правила за пренасочване и обратни маршрути може да са липсващото парче. Тунел, който се автентикира, все още може да няма използваем път за приложения и тази повреда изглежда идентична от страна на клиента. Разходката приключва, когато можете да кажете коя посока се проваля и кой слой отговаря за нея.

Подобни статии