Prawidłową odpowiedzią jest Wireshark, ponieważ jest to wyspecjalizowany analizator protokołów sieciowych, tzw. network protocol analyzer lub sniffer. To narzędzie przechwytuje pakiety przesyłane w sieci (np. Ethernet, Wi-Fi) i pozwala je szczegółowo analizować – od nagłówków warstw 2 i 3 (MAC, IP), przez TCP/UDP, aż po protokoły aplikacyjne typu HTTP, DNS, SMTP, FTP i dziesiątki innych. W praktyce administratorzy, serwisanci i pentesterzy używają Wiresharka do diagnozowania problemów z łącznością, opóźnieniami, utratą pakietów, nieprawidłową konfiguracją VLAN-ów, a także do analizy bezpieczeństwa, np. wykrywania podejrzanego ruchu czy prób ataków. Moim zdaniem to jedno z podstawowych narzędzi, które każdy technik informatyk powinien przynajmniej w podstawowym stopniu ogarniać. W dobrych praktykach, zgodnie z zaleceniami producentów urządzeń sieciowych (Cisco, Mikrotik, HP/Aruba), analiza ruchu pakiet po pakiecie jest standardową metodą przy trudniejszych awariach – i właśnie do tego służy Wireshark. Program potrafi filtrować ruch według adresów IP, portów, protokołów, flag TCP, a nawet zawartości payloadu. Można np. szybko sprawdzić, czy klient wysyła zapytania DNS, czy są odpowiedzi, jak wygląda handshake TCP (SYN, SYN-ACK, ACK), czy nie ma retransmisji. W środowiskach produkcyjnych używa się go często w połączeniu z port mirroringiem na switchu (SPAN), żeby podsłuchać ruch konkretnego hosta lub VLAN-u bez wpływania na pracę sieci. Dodatkowo Wireshark pozwala zapisywać zrzuty ruchu w formacie pcap/pcapng, które potem można analizować ponownie, wysyłać innym specjalistom albo archiwizować jako materiał dowodowy przy incydentach bezpieczeństwa. To narzędzie jest też świetne do nauki protokołów – widać dokładnie, jak przebiega np. DHCP, ARP czy TLS w realnym ruchu, a nie tylko w teorii z książki.
W tym pytaniu chodziło konkretnie o program przeznaczony do analizy ruchu w sieci, czyli narzędzie typu sniffer lub analizator protokołów. Błędne odpowiedzi wynikają zwykle z mylenia różnych kategorii oprogramowania – wszystko brzmi trochę „informatycznie”, ale pełni zupełnie inne funkcje niż analiza pakietów. W praktyce program do analizy ruchu sieciowego musi umieć przechwytywać ramki lub pakiety z interfejsu sieciowego, rozkodowywać protokoły (warstwa 2–7 modelu ISO/OSI) i prezentować je w formie czytelnej dla administratora. To jest zupełnie inna klasa narzędzi niż edytory plików, konfiguratory czy środowiska projektowe. Typowy błąd myślowy polega na tym, że skoro coś kojarzy się z konfiguracją, zarządzaniem lub „pracą z siecią”, to musi być też do jej analizy. Tymczasem narzędzia konfiguracyjne zwykle tylko wysyłają określone pakiety lub zapisują ustawienia, ale nie służą do szczegółowego podglądu ruchu w czasie rzeczywistym ani do dekodowania protokołów zgodnie ze standardami IETF czy IEEE. Oprogramowanie typu edytor konfiguracji czy środowisko pracy może co najwyżej pośrednio wpływać na to, jak zachowuje się sieć, jednak nie zapewnia funkcji sniffingu, filtrów pakietów, widoku nagłówków czy możliwości zapisu śladu ruchu w formacie pcap. W dobrej praktyce administracji sieciowej rozróżnia się: narzędzia do monitoringu (np. systemy SNMP, NetFlow), narzędzia do analizy pakietów (Wireshark, tcpdump) oraz narzędzia do konfiguracji i zarządzania. Właśnie ta ostatnia grupa bywa mylona z analizatorami, bo też „dotyka” sieci, ale ich rola jest inna. Dlatego poprawne rozpoznanie programu do analizy ruchu wymaga kojarzenia konkretnych nazw z ich kategorią, a nie tylko brzmienia informatycznego. W pracy technika takie pomyłki mogą utrudnić diagnozę problemów, bo użycie niewłaściwego typu narzędzia po prostu nie pokaże, co się dzieje na poziomie pakietów.