Анализаторът отбелязва пакет като такъв с лоша контролна сума, а изтеглен файл изглежда грешен, затова двете наблюдения се сливат в една история за повреда във VPN. Това са различни измервания, направени в различни точки. Едното описва какво е видял механизмът за запис, преди мрежовият адаптер да завърши работата си; другото описва байтовете, които приложението е запазило. Установяването кое от двете действително се е променило е цялата диагноза.

Къде се намира записът спрямо адаптера

Записът на пакети е снимка в една точка от път, който съдържа няколко трансформации. Между стека на хоста и проводника стоят сегментирането, изчисляването на контролна сума и при приемане обединяването. Точката на запис показва състоянието в този момент, което рядко е идентично с окончателния кадър по проводника. Четенето му като че ли е самият проводник е начинът, по който едно поле-заместител се превръща в обвинение.

Затова полезният въпрос за всяко подозрително поле не е дали изглежда грешно, а къде е наблюдавано. Запишете интерфейса на записа, версията на анализатора и слоя на пакета до находката; без тези три етикетът за контролна сума не може да се тълкува изобщо.

Какво прави изнасянето при предаване със следата

Когато изнасянето на контролна сума при предаване е включено, адаптерът изчислява контролната сума и попълва полето, след като хостът е поставил пакета в опашка. Затова запис от страната на хоста отбелязва заместител и анализаторът съобщава контролна сума, която проводникът никога не е пренасял. Изнасянето на сегментиране създава подобен артефакт, защото хостът може да даде на адаптера един голям буфер, който по-късно става няколко кадъра.

Справката на Wireshark за изнасянето описва и двата ефекта и отбелязва, че разпознаването на частични контролни суми зависи от версията на анализатора и типа пакет. Затова по-стар инструмент за запис и по-нов могат да не са съгласни за един и същ запис, докато и двата го четат правилно.

Инкапсулацията добавя втори обект

VPN вмъква в картината втори пакет. Интерфейсът на тунела показва вътрешния пакет, който приложението наистина е изпратило, докато физическият интерфейс показва външната инкапсулирана връзка, която го носи. Контролна сума или дължина, взета от вътрешния пакет, не принадлежи на външния кадър и сравняването на двете, като че ли описват един и същ обект, дава безсмислица.

Когато трябва да сравнявате, сравнявайте подобно с подобно: вътрешно с вътрешно, външно с външно, в една и съща точка от пътя. Несъответстваща двойка полета доказва само че са измерени два различни обекта. Отбележете от кой интерфейс идва всеки запис, защото чист на вид запис на тунел не казва нищо за това какво е излъчил адаптерът.

Докажете целостта на файла с хешове

За самия файл изчислете хеш на съдържанието от възпроизводим източник и от запазения резултат, после сравнете дайджестите. Това отговаря на различен въпрос от всеки етикет за отделен пакет и отговаря за обекта, който потребителят наистина има предвид.

sha256sum payload.bin
sha256sum /srv/transfer/payload.bin
cmp -l payload.bin /srv/transfer/payload.bin | head

Еднаквите дайджести затварят въпроса за повреда при този пренос. Различните дайджести отварят по-тесен въпрос: намерете най-ранния етап, в който байтовете се разминават, и проверете дали нещо не е преобразувало файла нарочно. Частично запазване, прекодирано прикачено файлово съдържание и страница за грешка, запазена под очакваното име на файл, всички променят байтовете без какъвто и да е мрежов дефект.

Локализирайте път на адаптера, без да го правите постоянен

За възпроизводим проблем, който следва една докинг станция или адаптер, задръжте профила на VPN, приложението, тестовия обект и дестинацията фиксирани, после повторете преноса през поддържан алтернативен интерфейс. Резултат, който се променя с адаптера, локализира неизправността до този път; той още не определя настройка на драйвер и не доказва дефект за целия модел.

Глобалното изключване на изнасянето е изкушаващ тест и лоша настройка по подразбиране. Настройка за целия хост влияе на трафик далеч отвъд експеримента и може да носи реален разход за производителност, затова третирайте всяка такава промяна като временна, запишете я и я върнете. Използвайте поддържаната от доставчика диагностика, преди да запазите заобиколно решение, заимствано от друга машина.

Докладът трябва да посочи кой от трите резултата се е променил: тълкуването на пакет от анализатора, завършените байтове на приложението или възпроизводимостта на един път на адаптера. Те водят до три различни следващи действия и само едно от тях е за криптиране.

Подобни статии