Nejlepší sniffery paketů a síťové analyzátory

Sniffování paketů je hluboký typ síťové analýzy, ve které jsou dekódovány detaily síťového provozu, které mají být analyzovány. Je to jedna z nejdůležitějších dovedností při odstraňování problémů, které by měl mít každý správce sítě. Analýza síťového provozu je složitý úkol. Aby bylo možné se vypořádat s nespolehlivými sítěmi, nejsou data odesílána v jednom souvislém proudu. Místo toho je rozsekán na fragmenty zasílané jednotlivě. Analýza síťového provozu zahrnuje schopnost shromáždit tyto pakety dat a znovu je sestavit do něčeho smysluplného. Toto není něco, co můžete udělat ručně, takže byly vytvořeny sniffery paketů a síťové analyzátory. Dnes se podíváme na sedm nejlepších snifferů paketů a síťových analyzátorů.

Dnešní cestu začínáme tím, že vám poskytneme základní informace o tom, co jsou paketové sniffery. Pokusíme se zjistit, jaký je rozdíl – nebo jestli existuje rozdíl – mezi snifferem paketů a síťovým analyzátorem. Poté přistoupíme k jádru našeho předmětu a nejen vypíšeme, ale také krátce zhodnotíme každý z našich sedmi tipů. Máme pro vás kombinaci nástrojů GUI a nástrojů příkazového řádku, které běží na různých operačních systémech.

Pár slov o snifferech paketů a síťových analyzátorech

Začněme tím, že něco urovnáme. Pro účely tohoto článku budeme předpokládat, že paketové sniffery a síťové analyzátory jsou jedno a totéž. Někteří namítnou, že jsou jiní a mohou mít pravdu. Ale v kontextu tohoto článku se na ně podíváme společně, hlavně proto, že i když mohou fungovat jinak – ale opravdu? – slouží stejnému účelu.

Packet Sniffers obvykle dělají tři věci. Za prvé, zachycují všechny datové pakety při vstupu nebo výstupu ze síťového rozhraní. Za druhé, volitelně aplikují filtry k ignorování některých paketů a uložení jiných na disk. Poté provedou určitou formu analýzy zachycených dat. Právě v této poslední funkci paketových snifferů se liší nejvíce.

Pro vlastní zachycení datových paketů používá většina nástrojů externí modul. Nejběžnější jsou libpcap na systémech Unix/Linux a Winpcap na Windows. Tyto nástroje obvykle nemusíte instalovat, protože je obvykle instalují instalátoři různých nástrojů.

Další důležitou věcí je vědět, že Packet Sniffers – ani ten nejlepší – za vás neudělají všechno. Jsou to jen nástroje. Je to jako kladivo, které samo o sobě žádný hřebík nezatluče. Musíte se tedy ujistit, že se naučíte, jak nejlépe používat každý nástroj. Sledovač paketů vám pouze umožní vidět provoz, ale je na vás, abyste tyto informace použili k nalezení problémů. O používání nástrojů pro zachycení paketů byly vydány celé knihy. Já sám jsem jednou absolvoval třídenní kurz na toto téma. Nesnažím se tě odradit. Snažím se jen uvést vaše očekávání na pravou míru.

Jak používat Packet Sniffer

Jak jsme vysvětlili, paketový sniffer zachytí a analyzuje provoz. Pokud se tedy pokoušíte vyřešit konkrétní problém – což je obvykle důvod, proč byste takový nástroj použili – musíte se nejprve ujistit, že provoz, který zaznamenáváte, je správný. Představte si situaci, kdy si všichni uživatelé stěžují, že konkrétní aplikace je pomalá. V takové situaci by pravděpodobně bylo nejlepší zachytit provoz na síťovém rozhraní aplikačního serveru. Pak si možná uvědomíte, že požadavky přicházejí na server normálně, ale že serveru trvá dlouho, než odešle odpovědi. To by znamenalo problém se serverem.

  Jak zobrazit náhled barvy z jejího HEX kódu

Pokud na druhou stranu vidíte, že server odpovídá včas, možná to znamená, že problém je někde v síti mezi klientem a serverem. Pak byste přesunuli svůj paketový čichač o jeden skok blíže ke klientovi a zjistili, zda jsou odpovědi zpožděné. Pokud tomu tak není, přesunete se více skokem blíže ke klientovi a tak dále a tak dále. Nakonec se dostanete na místo, kde dochází ke zpoždění. A jakmile určíte místo problému, jste o velký krok blíže k jeho vyřešení.

Možná se teď ptáte, jak se nám podaří zachytit pakety v konkrétním bodě. Je to docela jednoduché, využíváme funkci většiny síťových přepínačů nazývanou zrcadlení portů nebo replikace. Toto je možnost konfigurace, která replikuje veškerý provoz do az určitého portu přepínače na jiný port na stejném přepínači. Řekněme, že váš server je připojen k portu 15 přepínače a tento port 23 stejného přepínače je dostupný. Sniffer paketů připojíte k portu 23 a nakonfigurujete přepínač tak, aby replikoval veškerý provoz z portu 15 na port 23. Výsledkem na portu 23 je zrcadlový obraz toho, co prochází portem 15 – odtud název zrcadlení portu.

Nejlepší sniffery paketů a síťové analyzátory

Nyní, když lépe rozumíte tomu, co jsou paketové sniffery a síťové analyzátory, pojďme se podívat, kterých sedm nejlepších jsme mohli najít. Pokusili jsme se zahrnout kombinaci nástrojů příkazového řádku a GUI a také zahrnout nástroje běžící na různých operačních systémech. Koneckonců, ne všichni správci sítě používají Windows.

1. Nástroj pro kontrolu a analýzu hlubokých paketů SolarWinds (ZKUŠEBNÍ ZKOUŠKA ZDARMA)

SolarWinds je dobře známý pro své mnoho užitečných bezplatných nástrojů a nejmodernější software pro správu sítě. Jeden z jeho nástrojů se nazývá nástroj Deep Packet Inspection and Analysis Tool. Dodává se jako součást vlajkového produktu společnosti SolarWinds, Network Performance Monitor. Jeho provoz je zcela odlišný od „tradičnějších“ paketových snifferů, i když slouží k podobnému účelu.

Abychom shrnuli funkčnost nástroje: pomůže vám najít a vyřešit příčinu zpoždění sítě, identifikovat ovlivněné aplikace a určit, zda je pomalost způsobena sítí nebo aplikací. Software bude také používat techniky hluboké kontroly paketů k výpočtu doby odezvy pro více než dvanáct set aplikací. Bude také klasifikovat síťový provoz podle kategorie, obchodní vs. sociální a úrovně rizika, což vám pomůže identifikovat neobchodní provoz, který může být nutné filtrovat nebo jinak eliminovat.

A nezapomeňte, že nástroj SolarWinds Deep Packet Inspection and Analysis Tool je součástí Network Performace Monitor. NPM, jak se často nazývá, je působivý kus softwaru s tolika komponentami, že by mu mohl být věnován celý článek. Ve svém jádru se jedná o kompletní řešení pro monitorování sítě, které kombinuje nejlepší technologie, jako je SNMP a hloubková kontrola paketů, aby poskytlo co nejvíce informací o stavu vaší sítě. Nástroj, který je za rozumnou cenu, je dodáván s 30denní bezplatnou zkušební verzí, takže se můžete ujistit, že skutečně vyhovuje vašim potřebám, než se zavážete k jeho zakoupení.

  Použijte hodnocení Rotten Tomatoes k vyhledání filmů na Netflixu

Oficiální odkaz ke stažení: https://www.solarwinds.com/topics/deep-packet-inspection

2. tcpdump

Tcpdump je pravděpodobně původní paketový sniffer. Byl vytvořen již v roce 1987. Od té doby byl udržován a vylepšován, ale v podstatě zůstává nezměněn, alespoň tak, jak se používá. Je předinstalovaný prakticky v každém operačním systému typu Unix a stal se de-facto standardem, když člověk potřebuje rychlý nástroj pro zachycení paketů. Tcpdump používá knihovnu libpcap pro skutečné zachycení paketů.

Ve výchozím stavu. tcpdump zachycuje veškerý provoz na zadaném rozhraní a „vypisuje“ jej – odtud jeho název – na obrazovku. Výpis může být také přenesen do souboru zachycení a analyzován později pomocí jednoho – nebo kombinace – několika dostupných nástrojů. Klíčem k síle a užitečnosti tcpdump je možnost aplikovat všechny druhy filtrů a nasměrovat jeho výstup do grep – dalšího běžného unixového nástroje příkazového řádku – pro další filtrování. Někdo s dobrými znalostmi tcpdump, grep a příkazového shellu jej dokáže přimět k tomu, aby přesně zachytil správný provoz pro jakýkoli úkol ladění.

3. Windump

Windump je v podstatě jen port tcpdump na platformu Windows. Jako takový se chová v podstatě stejně. Není neobvyklé vidět takové porty úspěšných obslužných programů z jedné platformy na druhou. Windump je aplikace pro Windows, ale neočekávejte luxusní GUI. Toto je nástroj pouze pro příkazový řádek. Používání Windumpu je tedy v podstatě stejné jako používání jeho unixového protějšku. Možnosti příkazového řádku jsou stejné a výsledky jsou také téměř totožné. Výstup z Windump lze také uložit do souboru pro pozdější analýzu pomocí nástroje třetí strany.

Jedním z hlavních rozdílů oproti tcpdump je to, že Windump není zabudován do Windows. Budete si ho muset stáhnout z Web Windump. Software je dodáván jako spustitelný soubor a nevyžaduje instalaci. Nicméně, stejně jako tcpdump používá knihovnu libpcap, Windump používá Winpcap, který je jako většina knihoven Windows potřeba stáhnout a nainstalovat samostatně.

4. Wireshark

Wireshark je reference v paketových snifferech. Stal se de-facto standardem a většina ostatních nástrojů má tendenci jej napodobovat. Tento nástroj nejen zachytí provoz, ale má také poměrně výkonné analytické schopnosti. Tak výkonný, že mnoho správců použije tcpdump nebo Windump k zachycení provozu do souboru a poté načte soubor do Wireshark pro analýzu. Toto je tak běžný způsob používání Wireshark, že po spuštění budete vyzváni k otevření existujícího souboru pcap nebo k zahájení zachycování provozu. Další silnou stránkou Wiresharku jsou všechny filtry, které obsahuje a které vám umožňují zaměřit se přesně na data, která vás zajímají.

Abych byl upřímný, tento nástroj má strmou křivku učení, ale stojí za to se naučit. Znovu a znovu se to ukáže jako neocenitelné. A jakmile se to naučíte, budete jej moci používat všude, protože byl portován na téměř každý operační systém a je zdarma a s otevřeným zdrojovým kódem.

  Co to je, jak to udělat

5. tshark

Tshark je něco jako kříženec mezi tcpdump a Wireshark. To je skvělá věc, protože jsou to jedni z nejlepších hledačů paketů. Tshark je jako tcpdump v tom, že je to pouze nástroj příkazového řádku. Ale je to také jako Wireshark v tom, že nejen zachycuje, ale také analyzuje provoz. Tshark je od stejných vývojářů jako Wireshark. Je to víceméně verze Wireshark pro příkazový řádek. Používá stejný typ filtrování jako Wireshark, a proto dokáže rychle izolovat pouze provoz, který potřebujete analyzovat.

Možná se ale ptáte, proč by někdo chtěl verzi Wireshark pro příkazový řádek? Proč prostě nepoužít Wireshark; s jeho grafickým rozhraním, musí být jednodušší na používání a učení? Hlavním důvodem je, že by vám to umožnilo používat jej na serveru bez GUI.

6. Network Miner

Network Miner je více forenzní nástroj než skutečný paketový sniffer. Network Miner bude sledovat TCP stream a rekonstruovat celou konverzaci. Je to skutečně jeden mocný nástroj. Může pracovat v režimu offline, kde byste importovali nějaký zachycený soubor, abyste umožnili Network Mineru pracovat jeho kouzla. To je užitečná funkce, protože software běží pouze na Windows. Můžete použít tcpdump na Linuxu k zachycení určitého provozu a Network Miner na Windows k jeho analýze.

Network Miner je k dispozici v bezplatné verzi, ale pro pokročilejší funkce, jako je geolokace a skriptování na základě IP, si budete muset zakoupit licenci Profesional. Další pokročilou funkcí profesionální verze je možnost dekódování a přehrávání VoIP hovorů.

7. houslista (HTTP)

Někteří z našich znalejších čtenářů by mohli namítnout, že Fiddler není sniffer paketů ani síťový analyzátor. Pravděpodobně mají pravdu, ale cítili jsme, že bychom tento nástroj měli zahrnout do našeho seznamu, protože je velmi užitečný v mnoha situacích. Houslista skutečně zachytí provoz, ale ne žádný provoz. Funguje pouze s provozem HTTPTP. Dokážete si představit, jak cenný může být i přes své omezení, když uvážíte, že dnes je tolik aplikací založených na webu nebo na pozadí používá protokol HTTP. A protože Fiddler zachytí nejen provoz prohlížeče, ale téměř jakýkoli HTTP, je velmi užitečný při odstraňování problémů

Výhodou nástroje, jako je Fiddler, oproti bona fide snifferu paketů, jako je například Wireshark, je to, že Fiddler byl vytvořen tak, aby „porozuměl“ provozu HTTP. Objeví například soubory cookie a certifikáty. Nalezne také aktuální data pocházející z aplikací založených na HTTP. Fiddler je zdarma a je k dispozici pouze pro Windows, i když si lze stáhnout beta verze pro OS X a Linux (pomocí rámce Mono).

Závěr

Když zveřejňujeme seznamy, jako je tento, často se nás ptají, který z nich je nejlepší. Pokud bych v této konkrétní situaci dostal tuto otázku, musel bych odpovědět „na všechny“. Všechny jsou to bezplatné nástroje a všechny mají svou hodnotu. Proč je nemít všechny po ruce a seznámit se s každým z nich. Když se dostanete do situace, kdy je potřebujete použít, bude to mnohem jednodušší a efektivnější. Dokonce i nástroje příkazového řádku mají obrovskou hodnotu. Mohou být například skriptovány a naplánovány. Představte si, že máte problém, ke kterému dochází každý den ve 2:00. Můžete naplánovat úlohu tak, aby spustila tcpdump Windumpu mezi 1:50 a 2:10 a analyzovat zachycený soubor následující ráno. Není třeba zůstávat celou noc vzhůru.