Kerio туннелі трафикті тасымалдауы үшін үш нәрсе сәйкесуі керек: kvnet интерфейсіндегі мекенжай, клиент журналға жазған мән және сервер саясаты немесе DHCP күтетін нәрсе. Олар сәйкеспесе, туннель бәрібір аутентификациядан өтеді және бәрібір көтеріледі, дәл осы сәтсіздікті түсініксіз етеді. Интерфейс әр қосылым үшін жасалады, сондықтан қолмен қойылған мекенжай тек сол сессияға тиесілі және басқа ешнәрсеге емес. Бұл мәселенің пішіні, ал шешім конфигурация файлы емес, ілгек. Қалғаны — мәнді қайдан оқу және қайда қолдану.

Мекенжай неге үнемі қайта оралады

kvnet — клиент қосылым басталғанда жасап, аяқталғанда жоятын виртуалды адаптер. Сондықтан қолмен орындалған ip link set қолданылған сессия ғана өмір сүреді, ал келесі қосылым клиент тағайындаған мәнмен басталады. Клиент күтілетін мекенжайды қолдана алмайтын машинада әр қайта қосылу сол сәйкессіздікті қайта әкеледі, және жалдау немесе қатынау ережесі құрылғыны қайтадан қабылдамайды.

Бұл үлгі өзіндік диагностика. Бір сессияда жұмыс істеп, келесісінде құлайтын туннель тіркелгі деректерінің мәселесі емес, өйткені тіркелгі деректері қосылымдар арасында өзгермейді.

Мәнді интерфейстен емес, клиенттен оқыңыз

Linux клиенті келіссөз мәліметтерін өзінің жөндеу журналына жазады, ал ол пайдаланбақшы болған мекенжай қосылым ретінің соңғы мекенжай пішінді токені ретінде сонда көрінеді. Оны ядро шын мәнінде ұстап тұрғанмен салыстырыңыз, ол бір readlink қашықтықта: cat /sys/class/net/kvnet/address.

Егер екеуі өзгеше болса, клиент дұрыс мәнді білген және оны қолдана алмаған, ал интерфейс пайда болғаннан кейін оны қолданатын ілгек осы айырманы жабады. Егер журналда мекенжай мүлде болмаса, мәселе ертеректе және скриптке емес, клиент нұсқасына немесе сервер профиліне жатады.

Оны интерфейс пайда болғаннан кейін қолданыңыз

NetworkManager пайдаланушылары скрипті оның диспетчер қалтасына салып, тек VPN интерфейсі көтерілгенде әрекет ете алады. systemd басқаратын клиент көбірек ұқыптылықты қажет етеді: қызмет іске қосылғанда жүретін drop-in әдетте адаптер пайда болмай тұрып іске қосылады, сондықтан ілгек адаптерді болжамдаудың орнына интерфейсті күтуі керек. Сонда мекенжайды орнатыңыз, ал егер байланыс көтерілген күйде ядро бас тартса, оны түсіріңіз, мекенжайды орнатыңыз және қайта көтеріңіз. Шығарылған токенді ip link-ке бермес бұрын MAC үлгісі арқылы қайта оқыңыз, күтпеген журнал жолы аргументке айналмас үшін.

Клиент журналынан root ретінде жүретін кез келген нәрсе тар меншікті қажет етеді: root иелігіндегі файл, басқалар жаза алмайтын, және тексерілген мекенжайдан басқа ешбір shell интерполяциясы жоқ. Үлгі тексерісін скрипт ішінде ұстаңыз. Журнал мазмұны қай команданың жүретінін шешуіне жол бермеңіз.

Байланысты емес, жалдауды тексеріңіз

ip -4 -o addr show dev kvnet күтілетін аралықта мекенжайды көрсетуі керек, ip neigh show dev kvnet шлюзді көрсетуі керек, ал VPN артындағы бір қызмет жауап беруі керек. Содан кейін бір рет ажыратып, қайта қосылыңыз; егер мекенжай қайта оралса, ілгек дұрыс емес оқиғада іске қосылып тұр немесе мүлде іске қосылмайды.

Дұрыс мекенжаймен пайда болып, ешқашан жалдау алмайтын интерфейс сервер жағын көрсетеді. Бұл басқа тексеріс және әдетте басқа топ. Ілгекті қайта өңдеу алдында тіркелгіге рұқсат берілгенін және пулда әлі мекенжай бар екенін растаңыз.

Жаңартудан кейін айналым жолын қайта қараңыз

Мекенжайды дұрыс орнататын клиент құрылымы сіздің ілгегіңізді ескірген мәнді қолдануда қалдырады, бұл түзету әкелген жаңа ақау. Сондай-ақ MAC мәнін басқа машинадан немесе форум жазбасынан ешқашан көшірмеңіз; осы клиент осы тіркелгі үшін журналға жазатын мәнді пайдаланыңыз және тексерген күніңізді жазып қойыңыз.

Скриптті бір отырыста оқуға болатындай қысқа ұстаңыз. Журналдарды талдайтын айналым жолдары табиғаты бойынша уақытша. Тірі қалатындары — болашақ оқырман бастапқы тақырыпсыз түсінетін жолдар.

Қатысты мақалалар