Kaappaus sisältää kuusi Echo-pyyntöä ja kolme vastausta, ja joku kirjoittaa tikettiin 50 prosentin pakettihäviön. Luku voi pitää paikkansa kaappauksesta ja olla väärä tunnelista. Kuusi pyyntöä voi kuulua kahdelle eri keskustelulle, joilla on kaksi eri toimitusopimusta. Ryhmittele ne ennen jakamista, ja suhde lakkaa olemasta raportin kiinnostava osa.

Vaihe 1: erottele virrat lähteen ja kohteen mukaan

Echo-pyyntö kantaa lähteen ja kohteen, ja nämä kaksi kenttää määrittävät, mihin keskusteluun se kuuluu. Yhdyskäytävän luoma anturi käyttää yhdyskäytävän tunneliosoitetta, kun taas LAN-isännän puolesta välitetty anturi säilyttää kyseisen isännän osoitteen. Vastapuolella voi olla paluureitti toiselle mutta ei toiselle, mikä saa kaksi ryhmää käyttäytymään eri tavoin syistä, joilla ei ole mitään tekemistä tunnelin kanssa.

Jaa kaappaus näiden kenttien mukaan ennen kuin lasket mitään, ja pidä kohde osana avainta. Kahden eri vertaisen virrat eivät ole vertailukelpoisia, vaikka ne jakaisivat lähteen.

Kirjoita ryhmät ja niiden määrät muistiin, koska seuraava vaihe päättää, mitkä vastaukset kuuluvat mihinkin ryhmään. Ryhmä, jossa on kolme pyyntöä eikä yhtään vastaavaa vastausta, on löydös. Ryhmä, jossa on kolme pyyntöä ja kolme vastausta, on perustaso.

Vaihe 2: täsmäytä tunnisteen ja järjestyksen perusteella

RFC 792:n Echo-muoto kantaa tunnisteen ja järjestysnumeron, ja se kohtelee niitä kenttinä, jotka pariuttavat vastauksen pyyntöönsä. Molempia tarvitaan tähän työhön. Pelkkä järjestysnumero ei ole yksikäsitteinen, koska eri lähettäjät tai prosessit voivat käyttää samaa arvoa uudelleen yhden kaappausikkunan sisällä. Tunniste rajaa lähettäjää ja järjestys sijaintia, ja pari yhdessä tekee täsmäytyksestä puolustettavan.

Vastaus kääntää pyyntönsä osoitesuunnan, joten täsmäytys on pyyntö-vastaus-pari eikä kaksi identtistä monikkoa. Vertaa pyynnön lähdettä vastauksen kohteeseen ja pyynnön kohdetta vastauksen lähteeseen ja vahvista sitten, että tunniste ja järjestys täsmäävät.

Säilytä myös havaintoikkuna, koska pitkä kaappaus voi sisältää molempien kenttien laillista uudelleenkäyttöä. Ikkunan rajaaminen yhteen purskeeseen poistaa suurimman osan tästä epäselvyydestä. Se tekee laskennoista myös toistettavia jokaiselle, joka lukee tikettiä.

tshark -r capture.pcap -Y 'icmp.type == 8' -T fields -e frame.time -e ip.src -e ip.dst -e icmp.ident -e icmp.seq
tshark -r capture.pcap -Y 'icmp.type == 0' -T fields -e frame.time -e ip.src -e ip.dst -e icmp.ident -e icmp.seq

Vaihe 3: vertaa monikkoja samalla rajalla

Jos verkko-osoitteiden käännös on kaappauspisteen ja vertaisen välissä, pyynnön ja vastauksen osoitteet eroavat suunnittelun mukaan. Vertaa monikkoja yhdellä rajalla, tai kuljeta kartoitus eksplisiittisesti, jotta ero otetaan huomioon. Käännöstä edeltävien pyyntöjen sekoittaminen käännöksen jälkeisiin vastauksiin keksii epäsopimuksia, joita ei koskaan ollut johdossa.

Päätä raja ennen kuin aloitat laskemisen, ja ilmoita se raportissa, jotta seuraava henkilö voi toistaa ryhmittelyn. Yksi kaappaus asiakkaan puolella ja toinen palvelimen puolella ovat kaksi eri rajaa. Kumpikin vastaa eri kysymykseen siitä, mihin vastaus katosi.

Käännettyjen anturien ryhmä perii myös käännöslaitteen oman tilan, joka voi olla todellinen syy siihen, ettei vastausta koskaan saavu. Tarkista se tila ennen kuin syytät polkua sen takana.

tcpdump -ni any icmp and host 10.90.0.1 -c 20
tshark -r capture.pcap -Y 'icmp' -T fields -e ip.src -e ip.dst -e ip.ttl | head -20

Vaihe 4: kerro, mitä kaappaus voi ja mitä ei voi todistaa

Havaittu aukko ei todista, että kaukainen isäntä pysyi hiljaa. Kaappauspiste voi nähdä vain yhden suunnan, suodatin voi pudottaa vastauksen tai puskuri on voinut ylivuotaa ikkunan aikana. Jokainen niistä tuottaa saman puuttumisen ja erilaisen johtopäätöksen.

Kirjaa kaappauspaikka, suodatinlauseke ja pudotuslaskurit laskentojen viereen, koska suhdetta ei voi auditoida ilman niitä. Juuri ne kolme riviä tekevät luvusta myöhemmin puolustettavan.

Erottele sitten, mitä havainto vahvistaa, siitä, mitä se ehdottaa, kahdessa lauseessa yhden sijaan. Ensimmäinen lause ilmoittaa laskennat ja rajan. Toinen ilmoittaa hypoteesin ja sen, mikä sen vahvistaisi.

Kun kysymys on, pudottaako tietty polku paketteja, eksplisiittisellä lähdeosoitteella varustettu kontrolloitu anturi on vahvempi todiste kuin sekatilanteen passiivinen laskenta. Lähetä se samasta koneesta, samaan aikaan, samalle vertaiselle. Muuta yhtä muuttujaa, ja vertailu pätee.

Raportoi ryhmät ja seuraava raja

Raportissa on kolme riviä: ryhmän määritelmä, täsmäytetyt laskennat kunkin ryhmän sisällä ja raja, jolla vertailu tehtiin. Silloin lukija näkee, että yksi ryhmä vastasi täysin ja toinen ei, mikä viittaa reittiin tai lupaan eikä satunnaiseen häviöön.

Liitä kaappaustiedosto ja suodatinlausekkeet, jotta ryhmittely voidaan toistaa. Yhteenveto ilman tiedostoa on väite, ei tulos.

ping -c 5 -I 10.80.0.6 10.90.0.1
ping -c 5 -I 10.30.0.25 10.90.0.1
tshark -r capture.pcap -Y 'icmp.type == 8 || icmp.type == 0' -T fields -e ip.src -e ip.dst -e icmp.ident -e icmp.seq | sort | uniq -c | head

Kun yksi ryhmä näyttää viisi vastausta ja toinen ei yhtään, löydös on, että yhdellä lähteellä on toimiva paluureitti ja toisella ei. Se on paljon parempi tiketti kuin sekoitettu prosentti, ja se ohjaa seuraavan tarkistuksen paluureitille eikä asiaankuulumattomaan VPN-instanssiin.

Aiheeseen liittyvät artikkelit