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 је овде слаб тест, јер је цео квар у томе што мали пакети пролазе. Користите ону листу, преузимање или налепљивање које се покварило.

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

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