Packet sniffing este un tip profund de analiză a rețelei în care detaliile traficului de rețea sunt decodificate pentru a fi analizate. Este una dintre cele mai importante abilități de depanare pe care ar trebui să le posede orice administrator de rețea. Analiza traficului de rețea este o sarcină complicată. Pentru a face față rețelelor nesigure, datele nu sunt trimise într-un flux continuu. În schimb, este tăiat în fragmente trimise individual. Analizarea traficului de rețea implică posibilitatea de a colecta aceste pachete de date și de a le reasambla în ceva semnificativ. Acest lucru nu este ceva ce puteți face manual, așa că au fost create sniffer-uri de pachete și analizoare de rețea. Astăzi, aruncăm o privire la șapte dintre cele mai bune sniffer de pachete și analizoare de rețea.
Începem călătoria de astăzi oferindu-vă câteva informații de fundal despre ce sunt sniffer-urile de pachete. Vom încerca să ne dăm seama care este diferența – sau dacă există o diferență – între un sniffer de pachete și un analizor de rețea. Vom trece apoi la miezul subiectului nostru și nu numai să enumeram, ci și să revizuim pe scurt fiecare dintre cele șapte alegeri ale noastre. Ceea ce avem pentru tine este o combinație de instrumente GUI și utilitare de linie de comandă care rulează pe diferite sisteme de operare.
Câteva cuvinte despre sniffer de pachete și analizoare de rețea
Să începem prin a stabili ceva. De dragul acestui articol, vom presupune că snifferele de pachete și analizoarele de rețea sunt una și aceeași. Unii vor argumenta că sunt diferiți și ar putea avea dreptate. Dar, în contextul acestui articol, le vom analiza împreună, în principal pentru că, deși ar putea funcționa diferit – dar oare chiar? – au același scop.
Packet Sniffers fac de obicei trei lucruri. În primul rând, captează toate pachetele de date pe măsură ce intră sau ies dintr-o interfață de rețea. În al doilea rând, opțional aplică filtre pentru a ignora unele dintre pachete și pentru a salva altele pe disc. Apoi efectuează o formă de analiză a datelor capturate. În această ultimă funcție a snifferelor de pachete diferă cel mai mult.
Pentru capturarea efectivă a pachetelor de date, majoritatea instrumentelor folosesc un modul extern. Cele mai comune sunt libpcap pe sistemele Unix/Linux și Winpcap pe Windows. De obicei, nu va trebui să instalați aceste instrumente, deoarece sunt de obicei instalate de diferiții instalatori de instrumente.
Un alt lucru important de știut este că Packet Sniffers – chiar și cel mai bun – nu va face totul pentru tine. Sunt doar unelte. Este exact ca un ciocan care nu bate niciun cui de la sine. Deci, trebuie să vă asigurați că învățați cum să utilizați cel mai bine fiecare instrument. Sniffer-ul de pachete vă va lăsa să vedeți traficul, dar depinde de dvs. să utilizați aceste informații pentru a găsi probleme. Au existat cărți întregi despre utilizarea instrumentelor de captare a pachetelor. Eu, însumi, am luat odată un curs de trei zile pe această temă. Nu încerc să te descurajez. Încerc doar să-ți clarific așteptările.
Cum să utilizați un sniffer de pachete
După cum am explicat, un sniffer de pachete va captura și analiza traficul. Așadar, dacă încercați să remediați o problemă specifică, motiv pentru care ați folosi un astfel de instrument, trebuie mai întâi să vă asigurați că traficul capturat este cel potrivit. Imaginează-ți o situație în care toți utilizatorii se plâng că o anumită aplicație este lentă. În acest tip de situație, cel mai bun pariu ar fi probabil să captezi trafic la interfața de rețea a serverului de aplicații. S-ar putea să realizați apoi că cererile ajung la server în mod normal, dar că serverul durează mult timp pentru a trimite răspunsuri. Asta ar indica o problemă cu serverul.
Dacă, pe de altă parte, vedeți că serverul răspunde în timp util, poate înseamnă că problema este undeva în rețea între client și server. Apoi veți muta sniffer-ul de pachete cu un hop mai aproape de client și veți vedea dacă răspunsurile sunt întârziate. Dacă nu este, vă mutați mai mult hop mai aproape de client și așa mai departe și așa mai departe. În cele din urmă veți ajunge la locul unde apar întârzieri. Și odată ce ați identificat locația problemei, sunteți cu un pas mare mai aproape de rezolvarea acesteia.
Acum s-ar putea să vă întrebați cum reușim să captăm pachete într-un anumit punct. Este destul de simplu, profităm de o caracteristică a majorității switch-urilor de rețea numită oglindire sau replicare a porturilor. Aceasta este o opțiune de configurare care va replica tot traficul dinspre și dinspre un anumit port de comutare către un alt port de pe același switch. Să presupunem că serverul dvs. este conectat la portul 15 al unui comutator și că portul 23 al aceluiași comutator este disponibil. Vă conectați sniffer-ul de pachete la portul 23 și configurați comutatorul pentru a replica tot traficul de la portul 15 la portul 23. Ceea ce obțineți ca rezultat pe portul 23 este o imagine în oglindă - de unde și numele de oglindire a portului - a ceea ce trece prin portul 15.
Cele mai bune sniffer de pachete și analizoare de rețea
Acum că înțelegeți mai bine ce sunt snifferele de pachete și analizoarele de rețea, să vedem care sunt cele mai bune șapte pe care le-am putea găsi. Am încercat să includem o combinație de instrumente de linie de comandă și GUI, precum și instrumente care rulează pe diferite sisteme de operare. La urma urmei, nu toți administratorii de rețea rulează Windows.
1. Instrumentul SolarWinds Deep Packet Inspection and Analysis (ÎNCERCARE GRATUITĂ)
SolarWinds este bine-cunoscut pentru numeroasele sale instrumente gratuite utile și software-ul său de ultimă generație de gestionare a rețelei. Unul dintre instrumentele sale se numește Instrumentul de inspecție și analiză profundă a pachetelor . Vine ca o componentă a produsului emblematic al SolarWinds, Network Performance Monitor. Funcționarea sa este destul de diferită de snifferele de pachete mai „tradiționale”, deși servește unui scop similar.
Pentru a rezuma funcționalitatea instrumentului: vă va ajuta să găsiți și să rezolvați cauza latențelor rețelei, să identificați aplicațiile afectate și să determinați dacă încetinirea este cauzată de rețea sau de o aplicație. Software-ul va folosi, de asemenea, tehnici de inspecție profundă a pachetelor pentru a calcula timpul de răspuns pentru peste 1200 de aplicații. De asemenea, va clasifica traficul de rețea în funcție de categorie, business vs. social și nivel de risc, ajutându-vă să identificați traficul non-business care ar putea trebui filtrat sau eliminat în alt mod.
Și nu uitați că instrumentul de inspecție și analiză profundă a pachetelor SolarWinds vine ca parte a monitorului performanței rețelei. NPM, așa cum este adesea numit este o bucată de software impresionantă, cu atât de multe componente încât i-ar putea fi dedicat un articol întreg. În esență, este o soluție completă de monitorizare a rețelei care combină cele mai bune tehnologii, cum ar fi SNMP și inspecția profundă a pachetelor, pentru a oferi cât mai multe informații despre starea rețelei dvs. Instrumentul, care are un preț rezonabil, vine cu o probă gratuită de 30 de zile, astfel încât să vă puteți asigura că se potrivește cu adevărat nevoilor dumneavoastră înainte de a vă angaja să-l achiziționați.
Link de descărcare oficial: https://www.solarwinds.com/topics/deep-packet-inspection
2. tcpdump
Tcpdump este probabil sniffer-ul original de pachete. A fost creat în 1987. De atunci, a fost întreținut și îmbunătățit, dar rămâne practic neschimbat, cel puțin așa cum este utilizat. Este preinstalat în aproape orice sistem de operare asemănător Unix și a devenit standardul de facto atunci când aveți nevoie de un instrument rapid pentru a captura pachete. Tcpdump folosește biblioteca libpcap pentru capturarea efectivă a pachetelor.
În mod implicit. tcpdump captează tot traficul de pe interfața specificată și îl „elimină” – de unde și numele – pe ecran. Dump-ul poate fi, de asemenea, transmis către un fișier de captură și analizat ulterior folosind unul sau o combinație a mai multor instrumente disponibile. O cheie pentru puterea și utilitatea tcpdump este posibilitatea de a aplica tot felul de filtre și de a-și direcționa ieșirea către grep – un alt utilitar comun de linie de comandă Unix – pentru filtrare ulterioară. Cineva cu cunoștințe bune despre tcpdump, grep și shell-ul de comandă îl poate face să capteze exact traficul potrivit pentru orice sarcină de depanare.
3. Windump
Windump este în esență doar un port al tcpdump pe platforma Windows. Ca atare, se comportă aproape în același mod. Nu este neobișnuit să vezi astfel de porturi de programe utilitare de succes de la o platformă la alta. Windump este o aplicație Windows, dar nu vă așteptați la o interfață grafică elegantă. Acesta este un utilitar numai pentru linia de comandă. Prin urmare, utilizarea Windump este practic la fel cu utilizarea omologul său Unix. Opțiunile din linia de comandă sunt aceleași și rezultatele sunt, de asemenea, aproape identice. Ieșirea de la Windump poate fi, de asemenea, salvată într-un fișier pentru o analiză ulterioară cu un instrument terță parte.
O diferență majoră cu tcpdump este că Windump nu este integrat în Windows. Va trebui să-l descărcați de pe site-ul web Windump . Software-ul este livrat ca fișier executabil și nu necesită instalare. Cu toate acestea, la fel cum tcpdump folosește biblioteca libpcap, Windump folosește Winpcap care, la fel ca majoritatea bibliotecilor Windows, trebuie descărcat și instalat separat.
4. Wireshark
Wireshark este referința în sniffer-urile de pachete. A devenit standardul de facto și majoritatea celorlalte instrumente tind să-l emuleze. Acest instrument nu numai că va capta trafic, ci are și capabilități de analiză destul de puternice. Atât de puternic încât mulți administratori vor folosi tcpdump sau Windump pentru a capta traficul către un fișier, apoi vor încărca fișierul în Wireshark pentru analiză. Acesta este un mod atât de comun de a folosi Wireshark încât, la pornire, vi se solicită fie să deschideți un fișier pcap existent, fie să începeți să capturați trafic. Un alt punct forte al Wireshark sunt toate filtrele pe care le încorporează, care vă permit să vă concentrați exact asupra datelor care vă interesează.
Pentru a fi perfect sincer, acest instrument are o curbă de învățare abruptă, dar merită învățat. Se va dovedi neprețuit din când în când. Și odată ce l-ați învățat, îl veți putea folosi peste tot, deoarece a fost portat în aproape orice sistem de operare și este gratuit și open-source.
5. rechin
Tshark este un fel de încrucișare între tcpdump și Wireshark. Acesta este un lucru grozav, deoarece sunt unele dintre cele mai bune sniffer de pachete de acolo. Tshark este ca tcpdump prin faptul că este un instrument numai pe linia de comandă. Dar este și ca Wireshark prin faptul că nu numai că captează, ci și analizează traficul. Tshark este de la aceiași dezvoltatori ca și Wireshark. Este, mai mult sau mai puțin, versiunea de linie de comandă a Wireshark. Utilizează același tip de filtrare ca și Wireshark și, prin urmare, poate izola rapid doar traficul pe care trebuie să îl analizați.
Dar de ce, vă puteți întreba, ar vrea cineva o versiune de linie de comandă a Wireshark? De ce nu folosiți pur și simplu Wireshark; cu interfața sa grafică, trebuie să fie mai simplu de utilizat și de învățat? Motivul principal este că ți-ar permite să-l folosești pe un server non-GUI.
6. Network Miner
Network Miner este mai mult un instrument criminalistic, mai mult decât un adevărat sniffer de pachete. Network Miner va urma un flux TCP și va reconstrui o întreagă conversație. Este cu adevărat un instrument puternic. Poate funcționa în modul offline, unde ați importa un fișier de captură pentru a permite Network Miner să-și facă magia. Aceasta este o caracteristică utilă, deoarece software-ul rulează numai pe Windows. Puteți folosi tcpdump pe Linux pentru a capta o parte din trafic și Network Miner pe Windows pentru a-l analiza.
Network Miner este disponibil într-o versiune gratuită, dar, pentru caracteristicile mai avansate, cum ar fi geolocalizarea și scripting-ul bazat pe IP, va trebui să achiziționați o licență Profesional. O altă funcție avansată a versiunii profesionale este posibilitatea de a decoda și reda apelurile VoIP.
7. Lăutar (HTTP)
Unii dintre cititorii noștri mai cunoscători ar putea argumenta că Fiddler nu este un sniffer de pachete și nici un analizor de rețea. Probabil că au dreptate, dar am considerat că ar trebui să includem acest instrument pe lista noastră, deoarece este foarte util în multe situații. Fiddler va captura de fapt trafic, dar nu orice trafic. Funcționează doar cu trafic HTTP. Vă puteți imagina cât de valoroasă poate fi, în ciuda limitării sale, atunci când considerați că atât de multe aplicații de astăzi sunt bazate pe web sau folosesc protocolul HTTP în fundal. Și deoarece Fiddler va capta nu numai traficul din browser, ci aproape orice HTTP, este foarte util în depanarea
Avantajul unui instrument precum Fiddler față de un sniffer de pachete de bună credință, cum ar fi, de exemplu, Wireshark, este că Fiddler a fost creat pentru a „înțelege” traficul HTTP. De exemplu, va descoperi module cookie și certificate. De asemenea, va găsi date reale care provin din aplicații bazate pe HTTP. Fiddler este gratuit și este disponibil numai pentru Windows, deși versiunile beta pentru OS X și Linux (folosind cadrul Mono) pot fi descărcate.
Concluzie
Când publicăm liste ca aceasta, suntem adesea întrebați care este cea mai bună. În această situație particulară, dacă mi s-ar pune această întrebare, ar trebui să răspund „la toate”. Toate sunt instrumente gratuite și toate au valoarea lor. De ce să nu le aveți pe toate la îndemână și să vă familiarizați cu fiecare. Când ajungi într-o situație în care trebuie să le folosești, va fi mult mai ușor și eficient. Chiar și instrumentele din linia de comandă au o valoare extraordinară. De exemplu, pot fi scriptate și programate. Imaginați-vă că aveți o problemă care se întâmplă zilnic la 2:00 am. Puteți programa o lucrare pentru a rula tcpdump din Windump între 1:50 și 2:10 și să analizați fișierul de captare a doua zi dimineață. Nu e nevoie să stai treaz toată noaptea.