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

Опция нені қайта жазады

mssfix туннельден өтетін TCP қол алысуларында жарияланған сегменттің ең үлкен өлшемін өңдейді, осылайша жіберуші тарап инкапсуляцияланған бюджетке сыятын сегменттерді таңдайды. Ол қол алысуға әсер етеді, яғни өзгеріске дейін ашылған қосылым келісілген мәнді сақтайды.

Ол UDP датаграммаларын кішірейтпейді және туннельдің MTU-ын орнатпайды. Екі түрлі мәселе бірдей белгі береді: жол шегін елемейтін TCP жіберуші және кез келген өлшемдегі үлкен пакеттерді үнсіз тастайтын жол. mssfix біріншісін шешеді, екіншісі үшін ештеңе жасамайды.

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

Ауқым — туннель ішіндегі TCP

Тек TCP трафигі қайта жазылады. QUIC сессиясы, ойын немесе үлкен UDP датаграммаларын жіберетін қолданба өз пакет өлшемдерін сақтайды, және егер дәл сол тасымалдаулар тоқтаса, түзету туннель немесе жол MTU-ына жатады. TCP опциясына көшпес бұрын сәтсіз тасымалдау қай протоколды қолданатынын оқыңыз, өйткені дұрыс емес қабаттың өз түзетуі бар.

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

Сан мен кілт сөз тасымалданбайды

OpenVPN 2.6 қауымдастық нұсқасы мәннен кейін қосымша кілт сөзді қабылдайды. mtu арқылы сан IP және UDP тақырыптарын қоса алғандағы сыртқы пакет өлшемін сипаттайды; онсыз аргумент басқа есеп конвенциясын ұстанады. Сондықтан нұсқалар арасында көшірілген жол бірдей пакет бюджетін сипаттамайды. Басқа шығарылымға арналған оқулықтың орнына нақты іске қосып отырған құрылымыңызбен бірге келетін нұсқаулық бетін қараңыз.

Синтаксис былай көрінеді:

mssfix 1400 mtu

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

Алдымен бір клиентте растаңыз

Бірдеңені өзгертуден бұрын істен шыққан машинадан жолды өлшеңіз. Жол фрагментациясыз тасымалдай алатын пайдалы жүктеме — іздеп жүрген саныңыз:

ping -M do -s 1472 10.8.0.1
ping -M do -s 1400 10.8.0.1

Бірінші сынақ 28 байт тақырып қосылғанда 1500 байттық пакетке сыяды. Егер ол фрагментация қатесімен сәтсіз болса, ал кішісі сәтті болса, пайдалы өлшем олардың арасында бір жерде, ал туннельдің қосымша шығыны жоғарыдан шегеріледі.

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

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