SSH қосылады, шақыру пайда болады, бірақ команда үлкен нәрсе қайтарса болды, сессия өледі. Эхо біраз жұмыс істейді, содан соң байланыс мерзімі бітеді, ал клиент туннельді әлі де қосулы деп көрсетеді. Деректер келгенге дейін сау сессия әдетте SSH ақауына емес, өлшем шегіне соғылады. Төмендегі тексерулер ең арзан түсініктемені бірінші жоюға құрылған.

Профильге тиюден бұрын ақау пішінін оқыңыз

Кішкентай пакеттер өтеді, толық пакеттер өтпейді. Шақыру, баннер немесе бір перне басу оңай сыяды; қалта тізімі, жүктеу немесе қойылған блок сыймайды. Мінез-құлық өзгеретін өлшем — белгі, ал SSH-тың қатысты бағдарлама болуы емес.

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

Шекті екі жақтан өлшеңіз

Екеуінің бірін өзгертуден бұрын туннельдің MTU-ын физикалық буынмен салыстырыңыз. Физикалық мәнді көшірген туннель сәйкессіздік қайда екенін әлдеқашан айтты.

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

ip link show tun0
ping -M do -s 1380 10.9.0.1

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

mssfix пен fragment әртүрлі жұмыс істейді

mssfix туннель ішіндегі TCP байланыстары қол алысу кезінде хабарлайтын сегмент өлшемін шектейді. Бұл SSH, HTTPS және файл көшіру үшін дұрыс тұтқа, сондықтан ол орнатылған бойда іліну жиі жоғалады. Ол UDP жүктемелеріне мүлдем тимейді.

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

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

Интерфейс MTU-ын төмендету — дөрекі нұсқа

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

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

Ілінген тасымалмен қайта сынаңыз

Параметрлер жүктелуі үшін қайта қосылыңыз, жаңа байланыс ашып, қатып қалған команданы қайталаңыз. Сегмент өлшемі қол алысу кезінде келісіледі, сондықтан қайта қосылудан аман өткен сессия әлі ескі мәнді тасиды. Мұнда ping әлсіз сынақ, өйткені бүкіл ақау — кішкентай пакеттердің өтуі. Құлаған тізімді, жүктеуді немесе қоюды пайдаланыңыз.

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

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