Pachete interioare și exterioare într-o captură VPN: de ce diferă dimensiunile
O captură vede text clar pe interfața tunelului, cealaltă vede cadre criptate pe fir. Citește ambele înainte de a da vina pe MTU.
Captezi pachete de 1400 de byți pe interfața tunelului, captezi din nou pe cea fizică, iar cifrele refuză să se potrivească. Adresele diferă, dimensiunile diferă, iar al doilea fișier pare o altă conversație. Nimic nu este stricat. Două pachete diferite stau pe două straturi diferite, iar diferența dintre ele este exact ce face tunelul cu traficul tău. Citește ambele perspective înainte de a da vina pe MTU.
Două puncte de observație și pachetul pe care îl arată fiecare
O captură făcută pe interfața tunelului arată pachetul interior: încărcătura aplicației cu sursa și destinația ei originale, înainte de a se aplica vreo protecție. O captură pe interfața fizică arată pachetul exterior: un antet IP, un antet de transport, încapsularea și apoi pachetul interior criptat ca încărcătură. Aceeași conversație, obiecte diferite. Odată ce numești care dintre ele se află în fișier, nepotrivirea încetează să mai fie un mister.
Diferența de dimensiune este suprasarcină, diferența de adresă este proiectare. Întoarce asta pe dos și confuzia devine previzibilă: oamenii compară un pachet interior de 1400 de byți cu unul exterior de 1450 de byți, concluzionează că ceva este în neregulă și încep să modifice setări MTU care nu au fost niciodată vinovate. Etichetează fișierul cu interfața și stratul, pentru că acea etichetă este primul lucru de care are nevoie un cititor și primul pe care oamenii îl omit.
Stabilește stratul înainte de a începe captura
Stabilește care strat răspunde la întrebarea ta înainte de a fi scris primul pachet. O întrebare despre MTU are de obicei nevoie de perspectiva exterioară, pentru că acolo se acumulează anteturile și acolo apare limita căii. O întrebare despre aplicație are de obicei nevoie de perspectiva interioară, pentru că acolo încă există încărcătura care te interesează. Capturarea ambelor fără un plan produce două fișiere și nicio concluzie.
Folosește un test inofensiv și autorizat și filtrează după sursa, destinația și momentul care te interesează. Citește opțiunile de interfață și de filtrare ale instrumentului de captură înainte de colectare, pentru că metadatele sunt de obicei suficiente și mult mai ușor de partajat decât încărcătura. Tratează captura interioară ca sensibilă în mod implicit, pentru că deține date de aplicație necriptate care devin protejate abia mai departe pe cale.
Ce conține de fapt diferența de dimensiune
Pachetul exterior poartă anteturi suplimentare și material de protecție, iar cât anume depinde de protocol și de opțiunile sale. Fragmentarea, agregarea sau reordonarea de-a lungul căii pot rupe aparenta relație unu-la-unu dintre un pachet interior și pachetele exterioare care îl transportă, așa că o comparație dimensiune cu dimensiune nu este întotdeauna disponibilă. Pentru o suspiciune de defecțiune MTU, caută feedbackul privind dimensiunea și punctul în care traficul se oprește, apoi compară-l cu ce raportează aplicația. Un tipar de retransmisii fără răspuns este un semnal diferit de o eroare ICMP care transportă dimensiunea următorului salt.
Un singur pachet care părăsește gazda nu dovedește nimic despre dacă celălalt capăt l-a primit. Dacă captura ta se termină la propria interfață, ai arătat că nucleul a emis ceva, iar aceasta este cea mai slabă dovadă disponibilă despre cale. Combină captura cu un simptom reproductibil: aceeași destinație, aceeași operație, aceeași dimensiune, două rulări cu o singură variabilă schimbată.
Citind offload-ul în cifre
Segmentarea pe partea gazdei și alte tipuri de offload adaugă o a doua distorsiune, și ea este cea care face ca capturile locale să nu se potrivească cu ce este pe fir. O captură locală poate arăta buffere pe care adaptorul le împarte mai târziu, așa că frame-urile de pe legătură sunt mai mici și mai numeroase decât sugerează fișierul. De aceea un buffer mare în fișierul de captură nu dovedește că un frame supradimensionat a trecut prin fiecare legătură. Dacă dimensiunile contează pentru concluzia ta, notează unde a fost făcută captura și dacă offload-ul era activ pe acea interfață.
Altfel măsori confortul gazdei, nu comportamentul căii. Două fișiere etichetate cu interfața și starea offload-ului rezolvă majoritatea acestor dispute într-un minut.
Unde captura încetează să mai fie dovadă
Vederea pachetelor exterioare criptate arată că există o frontieră de protecție în aceste condiții de test și nu spune nimic despre alte aplicații de pe dispozitiv, despre modul în care operează operatorul sau despre starea punctului final însuși. Vederea textului clar în interiorul tunelului nici nu înseamnă că tunelul este stricat; înseamnă că ai capturat deasupra punctului de criptare, care este un loc legitim de privit. O captură este dovadă despre un loc, nu o sentință despre un sistem, iar tichetul ar trebui să o descrie astfel. Păstrează propoziția de scop în raport, pentru că ea este cea care împiedică o singură observație să devină o afirmație de audit.
Numește fiecare fișier cu interfața, filtrul și marcajul de timp, și șterge-l când ancheta se încheie. Manualul tcpdump documentează opțiunile de interfață și de filtrare folosite aici, inclusiv pe cele care mențin captura mică.
Dacă trebuie să împarți dovezi, împărtășește dimensiuni, marcaje de timp și opțiuni în loc de încărcătură. Întrebarea era despre dimensiunea pachetului, iar răspunsul are rareori nevoie de datele cuiva.