Wireshark är en kraftfull open source-nätverksanalysator som kan användas för att snyta data på ett nätverk som en hjälpmedel för att felsöka nätverkstrafikanalysen, men lika som ett pedagogiskt verktyg för att förstå principerna för nätverk och kommunikationsprotokoll.

Den är lätt tillgänglig för nästan vilken Linux-distribution som helst och för Ubuntu kan den installeras via Ubuntu Software Center eller terminalen:

 sudo apt-get install wireshark 

Innan du använder wireshark måste dumpcap verktyget få tillstånd att köra som root. Utan detta kommer Wireshark inte att kunna fånga nätverkstrafik när du är inloggad som en vanlig användare (som alltid är i distributioner som Ubuntu). För att lägga till " setuid " setuid till dumpcap, använd följande kommando:

 sudo chmod 4711 "vilken dumpcap" 

Observera att citaterna markerar runt "vilken dumpkapsel" som inte är normala enkla citat, utan snarare graveaccenttecknet. På Unix-liknande system kallar detta kommandot substitution där utgången från which kommando blir en parameter för chmod kommandot, dvs den fullständiga sökvägen till dumpcap binär.

Starta Wireshark och klicka sedan på det nätverksgränssnitt du vill använda för att fånga upp data. På ett trådbundet nätverk kommer det sannolikt att vara eth0 . Klicka nu på Start.

Wireshark börjar med att fånga trafik och visa den som en färgkodad lista i huvudfönstret. TCP-trafiken är grön, UDP-paket är ljusblå, ARP-förfrågningar är gula och DNS-trafik visas i mörkblå.

Längre under verktygsfältet är filterfältet. Om du bara vill se vissa typer av nätverkspaket anger du protokollnamnet i redigeringsrutan och klickar på Apply. Till exempel, för att bara se meddelandet ARP (Address Resolution Protocol), skriv arp i filterfältet och klicka på Apply. Listan ändras för att endast visa ARP-meddelanden. ARP används på ett LAN för att upptäcka vilken maskin som använder en viss IP-adress. Andra exempelfilter är HTTP, ICMP, SMTP, SMB och så vidare.

Wireshark kan filtrera med mer avancerade kriterier än bara protokolltypen. Om du till exempel vill se all DNS-relaterad trafik som kommer från en viss värd, använd filtret ip.src==192.168.1.101 and dns där 192.168.1.101 är ip.src==192.168.1.101 and dns du vill filtrera.

Om du upptäcker en intressant interaktion mellan två värdar som du vill se i sin helhet, har Wireshark ett "följ ström" alternativ. Högerklicka på något paket i utbytet och klicka sedan på "Följ TCP Stream" (eller Följ UDP Stream, Följ SSL Stream beroende på protokolltypen). Wireshark visar sedan en komplett kopia av konversationen.

Prova detta

Att använda Wireshark kan vara så komplicerat eller så enkelt som du behöver det, det finns gott om avancerade funktioner för nätverksexperter, men de som vill lära sig om nätverk kan också dra nytta av att använda den. Här är något att försöka om du vill lära dig mer om Wireshark. Starta en inspelning och sätt filtret till ICMP. Nu pingar din Linux-maskin med ett kommando som det här från en annan Linux-maskin eller till och med från ett Windows PC-kommandoskal:

 ping 192.168.1.10 

Där 192.168.1.10 är Linux-maskinens IP-adress. Kolla nu på paketlistan och se om du upptäcker nätverkstrafiken för pingen.