Повежите се са redirect-gateway у профилу, и подразумевана рута ваше машине може да нестане, подели се на две или остане тачно тамо где је била, зависно од флагова које нико не чита двапут. Опција мења само стање рутирања и ништа друго, тако да је једини поуздан доказ о томе шта је урадила табела коју је клијент инсталирао после тога. Следи табела после везе, рута која одржава жив сам тунел и саобраћај IPv6 који директива никада не тврди да покрива. Сваки корак је команда коју можете извршити на клијенту док је тунел активан.

Шта сваки флаг ради са подразумеваном рутом

Без икаквог флага опција уклања обичну подразумевану руту и ставља тунел на њено место, па стари пролаз нестаје из табеле док је веза активна. Додајте def1 и та подразумевана рута остаје на листи, а посао обављају две уже руте. Додајте bypass-dhcp и DHCP рута такође преживљава, што је важно у мрежи где клијент још мора да стигне до локалног DHCP сервера. Листа флагова на страници приручника за OpenVPN 2.6 довољно је кратка за једно читање, а сваки унос мења које руте завршавају у табели.

Гурнута опција се понаша исто када стигне, па клијентски профил може да не садржи ништа док табела изгледа потпуно преусмерено. То је нормално: сервер је послао флагове, клијент их је применио, а локална датотека никада није поменула директиву. Када се чини да гуркање не ради ништа, проверите филтер на страни клијента који прихвата или одбацује повучене опције, јер одбачена опција не изазива грешку ни на једној страни.

def1 побеђује специфичношћу не дирајући вашу подразумевану руту

Две полуподразумеване руте заједно покривају простор IPv4, 0.0.0.0/1 и 128.0.0.0/1. Свака је специфичнија од 0.0.0.0/0, па претрага преферира њих, док права подразумевана рута остаје у табели за све што тражи најмање специфично подударање.

Читајте табелу, а не профил, јер само табела показује у ком од тих случајева сте. Два реда су довољна да их разликујете:

ip route show default
ip route show | grep -E '^(0\.0\.0\.0/1|128\.0\.0\.0/1)'

Обратите пажњу на интерфејс и метрику на сваком реду, не само на одредиште. Подразумевана рута која показује на тунел и пар полуподразумеваних које показују на тунел описују исту намеру и не успевају на различите начине када тунел падне, јер у једном случају резервни пут још постоји. Запишите оба поља у белешку о промени. Преживели резервни пут понекад одржава удаљену сесију живом довољно дуго да се тунел поправи, и управо он пропушта саобраћај када је намера био пун тунел.

Одржавајте крајњу тачку тунела доступном

Клијенту је потребна рута до даљег краја тунела која сама не иде кроз тунел. OpenVPN инсталира ту хост руту пре него што промени било шта друго, а ручно уређивање рута или други VPN клијент могу је уклонити. Симптом после тога је веза која извештава да је повезана и затим ништа не пропушта.

Питајте језгро који би интерфејс користило за адресу крајње тачке док је тунел активан. Одговор мора да наведе физички интерфејс и његов пролаз, никада tun0:

ip route get 198.51.100.20

Ако та претрага врати уређај тунела, тунел носи сопствени транспорт и срушиће се чим неки пакет буде морао да изађе. Локални префикси, други адаптер и рутирање по политици и даље су важни овде, зато преусмеравање које ради на чистом преносном рачунару може да закаже на хосту са управљачким интерфејсом и две подразумеване руте. Обично се криви профил за оно што је урадио план адреса.

Саобраћај IPv6 наставља да користи своју табелу

Преусмеравање IPv4 оставља IPv6 на миру, а две фамилије мењају различити флагова. На хосту са дуплим стеком и радном подразумеваном рутом v6, саобраћај v4 може потпуно да седи унутар тунела, док свако одредиште способно за v6 излази преко физичке везе. Хост који изгледа исправно у једној табели цури у другој.

Проверите табелу v6 после повезивања, уместо да претпоставите да ју је тунел покрио. Директива носи флагове фамилије адреса управо због тога, а профил који их изостави наслеђује оно што платформа ради подразумевано:

ip -6 route show default
ip -6 route get 2001:db8::10

Докажите који интерфејс користи апликација

Повезано стање није блокирање, а промена руте није прекидач за нужду. Ако директан саобраћај мора да стане када тунел закаже, та политика живи у заштитном зиду и тражи сопствени тест.

Тестирајте путању којом апликација заиста иде, а не путању коју описује профил. Прво затражите руту, затим редом повежите захтев са сваким интерфејсом и упоредите шта извештава даља страна:

ip route get 203.0.113.10
curl -s --interface tun0 https://ifconfig.me
curl -s --interface eth0 https://ifconfig.me

Ако оба захтева врате исту адресу, апликација не користи тунел иако табела рутирања каже да би требало. Ако успе само захтев везан за тунел, физичка путања је филтрирана за то одредиште и тунел ради оно што сте тражили. Запишите флагове, инсталиране руте, претрагу крајње тачке и оба резултата излаза у запис о промени, да следећа особа наследи чињенице уместо снимка екрана.

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