Журналът показва същата IKE заявка два пъти, някой сочи мобилния ъплинк и тикетът се затваря с догадка. Тази догадка е митът: повтореният пакет е наблюдение за един обмен, а не диагноза на връзка. Повторното предаване е нормално поведение със свои правила и се появява по здрави пътища, когато отговорът е бавен. Проследете отговора, преди да обвините интерфейс.

Митът: повторена заявка доказва загуба по една връзка

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

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

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

В IKEv2 повторното предаване работи така: заявителят повтаря заявка, когато не е пристигнал отговор, а ответникът може да изпрати отново кеширания си отговор, вместо да изчисли нов. Идентификаторите на съобщенията принадлежат на този обмен и именно това прави повторената заявка със същия идентификатор разпознаваема като работа на протокола, а не като нов опит. Първоначалният опит често изисква повече от адрес на източника или SPI на инициатора за съпоставяне, затова собственият запис за обмена на платформата е по-добър от списък с пакети. IKEv1 следва различни правила с различни идентификатори и предупреждението на доставчика за дублиран първи пакет не означава едно и също в различните версии.

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

Практическото следствие е да запишете обмена, преди да правите извод. Отбележете локалния адрес за приемане, пътя на отговора, избран от политиката, двойката на партньора и идентификаторите на обмена на едно място, защото всяко от тях отговаря на различен въпрос, когато записът се чете по-късно.

Четири точки за наблюдение като една верига

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

ПозицияДоказателство, което може да дадеКакво оставя открито
Инициаторът изпращаЗаявка е напуснала този хостДали е достигнала партньора
Ответникът получаваЗаявката е пристигналаДали е създаден отговор
Ответникът изпращаОтговор е напуснал шлюзаДали е следвал предвидения път
Инициаторът получаваОбменът е завършенДали политиката е приела резултата

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

Открийте първия липсващ преход

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

Дръжте партньора и протокола фиксирани, докато сравнявате, и помнете, че закъснението, загубата, политиката и състоянието дават различна времева линия. Мобилната мрежа не е автоматично причината, а фиксираната линия не е автоматично достатъчно надеждна за всяко изискване. Прихванете двете посоки, докато обменът е активен:

tcpdump -ni any -vv 'udp port 500 or udp port 4500'

Когато достъпът спира преди далечния край, записът все още помага, ако казва къде спира. Прихващане само на инициатора може да покаже заявка, която излиза, и липса на пристигащ отговор, което стеснява неизправността до всичко след тази кука, без да се преструва, че знае кой хоп я е изпуснал. Отбележете далечните звена като неизвестни и оставете следващия човек с достъп да ги попълни. Записано по този начин, записът остава честен и все още кратък.

Сравнете, преди да промените нещо. Повтарянето на същата заявка към същия партньор със същия протокол запазва променливите изброими, докато нулиране, смяна на ключ или редакция на политика между прихващанията унищожава сравнението. Ако промяната е неизбежна, прихванете отново веднага след нея, за да описват преди и след един и същ обмен.

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

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

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

Митът е, че един дубликат доказва вина на оператора. Реалността е, че един дубликат доказва, че таймер е изтекъл, а отговорът живее по пътя на отговора.

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