Тунел је подигнут, пролази одговарају једни другима, а корисници на једној локацији и даље не могу да отворе дељени директоријум на другој. Неко пингује са пролаза, добије одговор и прогласи мрежу здравом. Тај одговор је путовао између два уређаја који никада нису били проблем. Користан тест почиње на хосту коме је потребна услуга, користи протокол који користи апликација и понавља услов у коме она не успева. Све остало је зелено светло за пут којим нико не иде.

Почните од клијента коме је потребна услуга

Запишите четири ствари пре било каквог тестирања: адресу клијента, одредишну адресу, име хоста и порт апликације. Затим потврдите да услуга ради локално на својој локацији, са хоста поред ње. Без те основне линије не можете разликовати покварен тунел од покварене услуге, а половина ових тикета је друга.

Пробајте документовано име хоста и, где услуга то дозвољава, проверу директне адресе истог порта. Неуспешна претрага имена и недоступна разрешена адреса воде вас различитим путевима. Ако замените име хоста IP адресом, не искључујте проверу идентитета HTTPS да би то радило; упозорење о сертификату је информација, не препрека.

Прођите пут на свакој ивици

Прочитајте руту коју бира клијент, затим руту коју бира пролаз за то одредиште, затим бројаче или ограничено снимање на свакој ивици. Тражите две чињенице: да ли је захтев стигао на удаљену локалну мрежу и да ли се вратио одговор. Бројачи интерфејса укључују сваки други ток, зато повежите по тачном временском печату и пару адреса, а не по облику графикона. Снимак на погрешној ивици је гори од никаквог, јер изгледа као доказ.

ip route get 10.10.0.5
sudo tcpdump -ni any host 10.10.0.5 and port 445
sudo tcpdump -ni any net 10.10.0.0/24 and net 10.20.0.0/24

Ако се захтев појави на удаљеној ивици без одговора за њим, проблем је на другој страни: заштитни зид, рута за повратак која недостаје или хост који не прихвата извор. Ако се захтев никада не појави, локална рута или селектори тунела га нису пренели, и друга страна још није вредна истраге.

Користите протокол који користи апликација

ICMP је слаба провера. Може се филтрирати, ограничити брзином или обрађивати другом политиком од услуге, што и успех и неуспех чини двосмисленим. Тестирајте стварни порт и, где можете, стварно руковање протокола.

nc -vz 10.10.0.5 445
curl -sv --max-time 5 https://files.corp.internal/ -o /dev/null
openssl s_client -connect 10.10.0.5:443 -servername files.corp.internal

Завршено TCP руковање доказује доступност и политику за тај порт. Не доказује да апликација ради: аутентификација, отпремање или одређени позив API још увек могу да не успеју. Тестирајте операцију коју корисници заиста извршавају, користећи безопасан еквивалент уместо поновног подношења стварне трансакције.

Поновите услов у коме не успева

Неуспеси који се појављују само при великим преносима су проблем величине, не повезаности. Пошаљите велики пакет са постављеним don't-fragment битом и гледајте где се зауставља. Ако мали захтев успе, а велики се заглави, MTU тунела и обрада MSS на пролазима су следећи осумњичени.

ping -M do -s 1400 10.10.0.5
ping -M do -s 1472 10.10.0.5
curl -sS --max-time 30 -F file=@./sample.bin https://files.corp.internal/upload

Ако не успева само једна подмрежа, погледајте селекторе саобраћаја, објаве рута и повратни пролаз те подмреже. Ако не успева само име хоста, пратите DNS, укључујући који је резолвер клијент користио и да ли је удаљени приказ видљив са те локације. Три различита квара, три различите поправке, а тест пинга не разликује ниједан.

После поправке поновите исти тест

Покрените поново исти клијент, одредиште, порт и терет. Затим се поново повежите или испробајте резервни пут ако га дизајн има, јер поправка која ради само док је оригинална инстанца тунела жива није тестирана. Држите тест везан за стварни извор, стварно одредиште и стварну операцију, а не за један зелени индикатор на табли.

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

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