TCP kartotiniai perdavimai prieš IPsec pakartojimų atmetimus: skaitykite kiekvieną sluoksnį
Pakartotinio perdavimo žyma, pasikartojantis ACK ir ESP pakartojimų atmetimų skaitiklis matuoja skirtingus įvykius skirtinguose sluoksniuose. Skaitykite kiekvieną skaitiklį ten, kur jis sukuriamas.
Trys skirtingi įrankiai praneša apie tris skirtingus dublikatus, ir tik vienas iš jų yra tinklo įvykis, dėl kurio galite imtis veiksmų. TCP kartotinis perdavimas yra siuntėjas, kuris vėl siunčia diapazoną, pasikartojantis ACK yra gavėjas, kuris kartoja patvirtinimą, o ESP pakartojimų atmetimas yra saugos asociacija, kuri atmeta jau priimtą sekos numerį. Nė vienas iš trijų neimplikuoja kitų. Skaitykite kiekvieną skaitiklį tame sluoksnyje, kuris jį sukuria, prieš sujungdami juos į vieną istoriją.
Trys skaitikliai, kurie niekada nematuoja to paties įvykio
TCP kartotinio perdavimo anotacija reiškia, kad siuntėjas vėl įdėjo sekos diapazoną į laidą. Nuostoliai yra viena to priežasčių, o jūsų turimas įrašas gali tiesiog neturėti pradinio paketo ar patvirtinimo, kuris paaiškintų laiką. Pasikartojantis ACK yra gavėjas, kuris pagal TCP atkūrimo taisykles kartoja kaupiamąjį patvirtinimą, o tai nėra nei pasikartojantis programos įrašymas, nei antroji duomenų kopija.
ESP dirba savo sekos erdvėje. Kiekviena saugos asociacija numeruoja siunčiamus paketus, o gavėjas laiko jau priimtų numerių langą, todėl du kartus atėjęs ESP paketas atmetamas vien tik šių taisyklių pagrindu. Todėl pakartotinai siunčiamas TCP segmentas keliauja naujame ESP pakete su nauju sekos numeriu, o tai yra teisingas elgesys abiejuose sluoksniuose. Tie patys baitai viename skaitiklyje gali atrodyti nauji, kitame – seni, ir nė vienas sluoksnis nemeluoja.
Ką analizatorius gali ir ko negali matyti
Pradėkite nuo analizatoriaus žodyno, nes filtrų pavadinimai aprašo stebėjimus, o ne galinių taškų vidų. Skaičiavimas tais pačiais pavadinimais, kuriuos naudoja įrankis, išlaiko jus sąžiningus dėl to, kas iš tikrųjų buvo išmatuota. Skaičius iš nepilno įrašo yra išlikusio, o ne tame laide įvykusio skaičius.
tshark -r trace.pcap -Y "tcp.analysis.retransmission" | wc -l
tshark -r trace.pcap -Y "tcp.analysis.duplicate_ack" | wc -l
Skaitykite eksperto informaciją šalia tų skaičių, nes kontrolinės sumos ir tvarkos įspėjimai keičia, kiek svorio jie nusipelno. Dviejų jutiklių sujungtas pėdsakas gali parodyti vieną kadrą du kartus, o abiejų kopijų skaičiavimas išgalvoja atkūrimo įvykį, kuris niekada neįvyko.
ESP skaitikliai gyvena branduolio būsenoje
ESP sekos numeriai priklauso saugos asociacijai, o ne TCP srautui, todėl šliuzas yra vieta, kur klausti. Būsenos sąrašas pateikia kiekvienos asociacijos paketų ir klaidų skaitiklius, kurių joks įrašas negali atkurti.
ip -s xfrm state
tshark -r trace.pcap -Y "esp" -T fields -e esp.seq | head
RFC 4303 apibrėžia sekos numerį ir jį sunaudojantį apsaugos nuo pakartojimų langą, todėl skaitiklis didėja net kai nieko blogo. Monotoniški išoriniai sekos numeriai be atitinkamos TCP anomalijos rodo kitą siuntėją arba dubliuotą kelią, o ne kartotinių perdavimų audrą. Užšifruoto tunelio išorinis įrašas paprastai slepia vidinius TCP sekos numerius, todėl negali įrodyti, ką padarė vidinė dėžė. Įrašykite tunelio viduje tik ten, kur politika leidžia, ir niekada neišjunkite apsaugos nuo pakartojimų, kad nutildytumėte nesusijusį įspėjimą.
Kur stebėjimo taškas pakeičia atsakymą
Prieš eskaluodami užsirašykite, kaip buvo paimtas įrašas: sąsaja, ar įrašymo procesas pranešė apie nuostolius ir ar laiko žymos yra palyginamos tarp jutiklių. Vienas stebėjimo taškas negali matyti abiejų kelio galų, todėl bet koks teiginys apie gavėjo elgesį yra išvada, o ne matavimas. Šliuze paimtas pėdsakas ir pagrindiniame kompiuteryje paimtas pėdsakas nesutars dėl tvarkos esant apkrovai, ir tas nesutarimas paprastai priklauso įrašui, o ne tuneliui. Dviejų vaizdų koreliavimas yra tai, kas skaičių paverčia įrodymu.
Naudokite vieną leidžiamą programos srautą ir užrašykite galinių taškų skaitiklius šalia įrašo skaičių tuo pačiu metu. Jei skaičiai nesutampa, pasitikėkite sluoksniu, kuriam priklauso įvykis, o kitą laikykite stebėjimo artefaktu, kol neįrodyta priešingai. Ši taisyklė išsprendžia daugumą tokių atvejų neliečiant tunelio konfigūracijos.
Skaičių skaitymas tinkama tvarka
Pradėkite nuo sluoksnio, kuriame buvo užduotas klausimas: į TCP įspėjimą atsakoma iš TCP įrašo, o į ESP atmetimą atsakoma iš saugos asociacijos skaitiklių šliuze. Tik tada klauskite, ar du vaizdai aprašo tą patį paketą. Išvada, kuriai reikia abiejų sluoksnių, turėtų įvardyti abu, nes teiginys apie tunelį, paremtas vien TCP anotacija, yra spėjimas.
Užrašykite sluoksnį, skaitiklį ir stebėjimo tašką kiekvienam radiniui, ir kitas skaitytojas nesulies tris įvykius į vieną išgalvotą gedimą. Eskaluokite su tais trimis laukais, ir pataisa paprastai išplaukia iš pirmojo.