Два домашни рутери, без пренасочени порти и VPN што понякога сепак се поврзува. UDP го дозволува тоа, бидејќи огнениот ѕид ќе прими пакет што може да го совпадне со тек што машината веќе го започнала. Ова е условен трик, а не функција, и условите лесно се набројуваат откако ќе знаете што споредува огнениот ѕид. Тие се и причината зошто истите профили се однесуваат различно на различни мрежи.

Споредбата што ја прави огнениот ѕид

Секој излезен датаграм создава краткотраен запис: изворна адреса, изворна порта, одредишна адреса, одредишна порта. Сѐ што ќе пристигне и се совпаѓа со записот се третира како одговор и се пропушта. Правилата за влезен сообраќај воопшто не играат улога.

Значи прашањето не е дали огнениот ѕид го пушта партнерот внатре. Прашањето е дали пакетот на партнерот изгледа како одговорот што го чека записот. Сменете едно поле од таа четвороделна торка и пакетот станува странец. Затоа работна поставка може да се расипе кога се менува само бројот на портата, и затоа истата порта може да работи на еден рутер, а да не успее на следниот.

Фиксирајте ја локалната изворна порта и истиот број ќе се појави на двете страни од размената. Тоа е целиот механизам, и објаснува зошто трикот е кревок, а не мистериозен.

Фиксирање на една порта на секој крај

Стандардната UDP порта на OpenVPN е 1194, а lport ја поставува изворната порта од која што испраќа. Фиксирајте ги двата партнера и излезната торка на секој ќе покажува кон порта на која слуша другиот:

# peer A
lport 1194
remote 198.51.100.20 1194
# peer B
lport 1194
remote 203.0.113.10 1194

Ова функционира само додека ниту еден рутер меѓу нив сѐ уште не ја препишува изворната порта. Кога пакетите се појавуваат во снимка, но тунел не се крева, препишувањето е првиот осомничен.

Каде торката престанува да се совпаѓа

NAT што мапира по одредиште на секој партнер му дава различна надворешна порта. Адресата што му е кажана на вашиот партнер да ја користи не е адресата што стигнува до него, па влезниот пакет не се совпаѓа со ништо и се отфрла тивко.

Преводот на ниво на оператор, наредениот NAT и рандомизацијата на порти завршуваат исто. Исто и секоја средна кутија што препишува порти, а адресите ги остава на мир.

Тековните транспорти се полошо. TCP-ракувањето се следи чекор по чекор, па VPN заснован на TCP воопшто не може да се пробие на овој начин и му треба слушател некаде на патот.

Обично едната страна прва попушта

Во пракса двете мрежи ретко се однесуваат исто. Еден рутер може да дава предвидливо мапирање, а другиот порти по одредиште, и резултатот е конфигурација што работи меѓу две куќи, а не успева од мобилна мрежа. Извештаите што си противречат обично опишуваат два различни пара рутери. Ниту еден автор не греши, и ниту еден резултат не се генерализира.

Пред да ги допрете профилите, откријте која страна го отфрлила пакетот. Снимките на двата краја го решаваат тоа со еден обид: датаграмите што излегуваат од A и никогаш не стигнуваат до B значат дека текот бил препишан на патот, а датаграмите што стигнуваат до B без одговор да се врати значат дека огнениот ѕид не ги прифатил како поврзани.

Два партнера со јавни IPv6 адреси целосно го заобиколуваат проблемот. Без превод нема што да се совпадне, па доволно е правило на огнениот ѕид што ги именува партнерите и дизајнот престанува да зависи од однесувањето на рутерот.

Кога да престанете да обидувате

Домаќин со јавна адреса е сигурниот одговор. Тој може да го заврши тунелот за двата партнери, или едноставно да им помогне да ја откријат тековната надворешна адреса на другиот, и двете поставки работат што и да прават NAT-овите. Управуван слој обезбедува исто координирање ако политиката го дозволува.

Ниту едно од овие не бара исклучен огнен ѕид. Исклучувањето на заштитата за да се добие директната врска ја отфрла причината поради која директниот обид беше привлечен, и ја остава машината отворена за целото времетраење на тестот.

Прво пробајте ја директната поставка, па запишете што видовте. Однесувањето на NAT и снимката што го покажа вредат повеќе од парот порти што на крајот го користевте, бидејќи следната мрежа ќе биде поинаква. прирачникот за OpenVPN 2.6 документира lport и remote опциите од кои зависи ова.

Поврзани статии