Недостајућа VPN рута у NetworkManager-у: политика профила или скрипта?
Тунел се повезује и један префикс се никада не појави. Одлучите између политике профила, података додатка и другог власника руте пре него што додате помоћну скрипту.
Повежете се, појави се интерфејс тунела, а један префикс који вам треба једноставно није у табели. Следећи корак је обично тражење скрипте која га додаје. То тражење води до одговора који у профил залепе OpenVPN помоћника, а половина тих одговора стање погорша уместо да га побољша, јер рута која недостаје има три могућа власника и само је један од њих скрипта која недостаје.
Одлучите који је власник одговоран пре него што ишта напишете.
Три власника, један префикс који недостаје
Префикс може да изостане јер га нико није доставио, јер га је профил одбио или јер је инсталиран негде где не гледате. То су различите грешке и имају различите поправке.
Прво је најлакше проверити: да ли је сервер или додатак икада понудио руту? Позадински систем који никада није примио префикс не може да га инсталира, а помоћна скрипта не може да измисли доступност коју друга страна никада није описала. Друго је политика профила, која може да потисне руте које би веза иначе преузела. Треће је табела или правило, које може да држи руту на месту које подразумевано претраживање никада не консултује.
Четврти власник сте ви, касније: скрипта која додаје руту при повезивању, али је не уклања при одспајању. То ствара префикс који надживи тунел, показује на мртав интерфејс и збуњује следећу особу која буде отклањала грешке на машини.
Прочитајте профил пре него што ишта додате
Почните са својствима сачуване везе. Читајте их без изливања тајни и употребите UUID ако је назив профила двосмислен.
nmcli -f vpn.service-type,ipv4.never-default,ipv4.ignore-auto-routes,ipv4.route-table,ipv4.routes connection show office
vpn.service-type вам каже који позадински систем поседује везу, и то је важно јер су подаци додатка специфични за позадински систем. Кључ који прихвата један додатак није подржана упутство за други, па исечак копиран из документације другог клијента није доказ ничега.
ipv4.ignore-auto-routes и ipv4.never-default одговарају на различита питања. Први може да одбије руте које би веза иначе аутоматски преузела, а други контролише може ли профил да постане подразумевана рута. Профил који занемарује аутоматске руте и не ослања се ни на шта друго повезаће се чисто и инсталирати готово ништа.
ip -4 rule show
ip -4 route show table all
Те две наредбе решавају трећу могућност. Тражите свој префикс у свакој табели, не само у main, и проверите да ли правило политике шаље релевантно претраживање негде другде. Ако је префикс присутан у другој табели и ништа га не консултује, немате руту која недостаје; имате претраживање које до ње никада не стигне.
Шта скрипта не може да поправи
Додавање помоћне скрипте даје vpn.data у NetworkManager-у програм који ће се извршавати. То је стваран механизам и погрешан је за већину ових случајева, јер скрипта добија контролу након што је политика профила већ одлучила шта прихватити.
OpenVPN-ов script-security је друга понављајућа забуна. То је OpenVPN поставка која одређује које скрипте клијент сме да извршава и шта сме да стави у њихово окружење; ниво 3 допушта прослеђивање акредитива кроз окружење, што је одлука о руковању тајнама, а не поправка усмеравања. Лепење у профил чији позадински систем није OpenVPN или подизање када ниједној скрипти то не треба додаје изложеност без додавања руте.
Затим ту је рефлекс рестартовања. Поновно покретање услуге NetworkManager руши и поново гради сваку управљану везу, укључујући ону кроз коју сте повезани ако радите даљински. То је ометајућа радња, а не безазлена дијагностика, и на серверу може бити разлика између сесије која преживи и оне која не.
Одлука, по реду
Поставите три питања узастопно. Да ли је друга страна доставила префикс, што ће показати дневник позадинског система или његов сопствени излаз статуса? Ако да, да ли је профил конфигурисан да прихвата и инсталира руте или их потискује? Ако рута негде постоји, да ли је пут претраживања исправан за саобраћај који тестирате?
Тек када је први одговор да, други да и трећи исправан, допунска скрипта постаје одбрањива, и чак и тада треба да питате да ли позадински систем подржава руту изворно. Референца за VPN поставке документује service-type и речник података специфичан за додатак, и ту треба почети пре него што претпоставите да кључ постоји.
Након одобрене исправке поново се повежите и тестирајте одредиште по адреси, а затим по називу, па се одспојите и поново повежите да потврдите да је стање поновљиво. Један власник, једна табела и рута која нестаје са тунелом исход је који вреди имати.