Följande är några viktiga kommandon för felsökning i nätverk från en Linux maskin. Testa dom själv för att se vad de gör.
Information om lokala datorns nätverk
Kontrollera din dators IP address, nätverkskort och routes.
ip a
Vad kommandot gör:
ip är ett verktyg för IP protokollet. Växeln a står för address, som gör att ip kommandot visar information om datorns nätverkskort (kan vara flera) och dess inställningar. Exempelvis nuvarande IP adresser och deras status (UP eller DOWN som visar om interfacet används eller är avstängt).
Övning: Identifiera din nuvarande IP address.
ip r
Vad kommandot gör:
Växeln r står för route (rutt), som gör att ip kommandot visar information om vilken väg paket med data som skickas i nätverket tar.
Övning: Identifiera IP adressen till din default gateway.
Testa kontakt med en annan dator
Testa kontakt med en annan dator i nätverket.
ping -c 4 8.8.8.8
Vad kommandot gör:
ping skickar en enkel test signal till en IP adress, för att se om du får ett svar. Om datorn i andra änden inte svarar, då har de två datorerna inte kontakt av någon anledning. Växeln c står för count (räkna antal), som gör att ping kommandot skickar det antal test-signaler du anger (i exemplet 4 st). Om växeln inte används så fortsätter ping att skicka signaler tills kommandot avbryts (Ctrl + C).
8.8.8.8 är IP adressen till en av Googles officiella DNS servrar på internet, den kan användas för test, då den i regel kan nås från alla datorer som har en fungerande Internetuppkoppling.
Resultatet av ping testet visar även hur lång tid signalen tog för att komma fram (i antal millisekunder). Vilket tyder på hur god kontakten mellan datorerna är, kortare svarstid betyder snabbare hastigheter i nätverket.
Övning: Om 8.8.8.8 svarar, då är det ett tecken på att din dator har internet access. Annars kunde den inte nå servern.
MAC Adresser
Lista nätverksenheter anslutna till datorn.
Vad kommandot gör:
Visar en lista ( ARP (Address Resolution Protocol) table ) över enheter som nyligen varit i kontakt med datorn. Här kan vi se vilken IP adress som tillhör vilken MAC adress. MAC är ett 'fast' id nummer som varje nätverkskort har från fabrik (liknande ditt personnummer), till skillnad från IP adressen (liknande ditt telefon nummer) som bara är till låns från den lokala DHCP servern och kan ändras.
Kommandot kan förkortas till "ip neigh", då växeln "show" är standard beteende. Kommandot har dock flera andra varianter, exempelvis "ip link show".
Öppna portar på en annan maskin
Kontrollera om en server eller tjänst är öppen.
nc -zv <mål-IP-här> 22
Vad kommandot gör:
nc (netcat) testar i detta exempel om port nr 22 (SSH) är öppen på den måldator som IP adressen anger. Om den visar positivt, tyder det på att serverdatorn tar emot inkommande SSH förfrågningar. Om porten inte är öppen kan bero på att den är avstängd eller blockeras av en brandvägg.
Övning: Testa olika server adresser och se vad du får för svar.
Vilken väg tar paketen?
Se hur paket skickas genom nätverket.
traceroute <mål-IP-här>
Vad kommandot gör:
traceroute visar alla "hopp" som ett paket tar på sin väg från din dator till måldatorn. Varje stop på vägen är en dator eller nätverksenhet (router, switch, etc) som skickar paketet vidare. Om något steg på vägen går betydligt långsammare, kan det tyda på flaskhalsar i nätverket. Och om signalen inte når ända fram, kan vi få ledtrådar om hur långt det kom innan paketet fastnade, för att se vart i nätverket det finns problem för trafiken.
Notera att vissa servrar eller datorer kan skicka ditt paket vidare, men utan att svara din dator i traceroute listan. Detta är ofta av säkerhetsskäl och behöver inte bero på ett fel.
Övning: Testa mål adressen 8.8.8.8 (Google’s DNS server) och se vad du får för svar.
Mer DNS information
Övning: Testa med en vanlig URL adress:
Användbara nätverksstatistik
Om netstat inte finns installerat på en Linux maskin, så tillhör den paketet “net-tools”. Exempel kommando för Debian:
sudo apt-get install net-tools