1/30 Narzędzia diagnostyczne sieci

ping, arp, netstat, ss, traceroute, mtr, nmap, tcpdump i inne

Prezentacja omawia najważniejsze narzędzia diagnostyczne używane w sieciach komputerowych.

Przedmiot: Sieci komputerowe - laboratorium diagnostyczne

Każde narzędzie jest przedstawione od strony praktycznej: jak działa, jakie ma opcje, jak interpretować wyniki.

Przykłady obejmują systemy Linux (Ubuntu/Debian) i Windows (10/11).

Narzędzia diagnostyczne to podstawa codziennej pracy administratora sieci.

Pozwalają na szybkie lokalizowanie problemów: brak łączności (ping), błędna konfiguracja IP (ipconfig/ip), problem z routingiem (traceroute), zablokowane porty (netstat/ss/nmap), problemy DNS (nslookup/dig) czy analiza ruchu (tcpdump).

Prezentacja powstała jako praktyczne uzupełnienie wykładów z sieci komputerowych.

Zamiast suchej teorii, każdy slajd koncentruje się na konkretnym poleceniu, jego składni i interpretacji wyników.

Wszystkie przykłady są testowane na rzeczywistych systemach operacyjnych.

Znajomość narzędzi diagnostycznych jest jedną z kluczowych umiejętności administratora sieci.

W sytuacji awarii to właśnie te narzędzia pozwalają szybko zlokalizować problem: czy to problem z kablem (ping na bramę), z routingiem (traceroute do zdalnego hosta), z DNS (nslookup), czy z zaporą ogniową (nmap, telnet).

Prezentacja zakłada podstawową znajomość adresacji IP i modelu OSI/TCP/IP.

Narzędzia są uporządkowane według warstw: od warstwy 3 (ping, traceroute) przez warstwę 4 (netstat, ss, nmap) do warstwy 7 (nslookup, curl, wget).

2/30 Streszczenie

Diagnostyka sieci opiera się na kilku uniwersalnych narzędziach dostępnych w każdym systemie operacyjnym. ping testuje podstawową łączność ICMP i mierzy opóźnienie. arp pokazuje mapowanie adresów IP na adresy MAC w sieci lokalnej. netstat i ss wyświetlają aktywne połączenia, nasłuchujące porty i statystyki interfejsów. traceroute i mtr śledzą trasę pakietu przez routery. nslookup i dig diagnozują DNS. nmap skanuje porty i usługi. tcpdump przechwytuje i analizuje ruch sieciowy.

Większość narzędzi ma odpowiedniki w systemach Linux i Windows, często pod tymi samymi nazwami.

Różnice dotyczą głównie składni opcji: Linux używa myślników (ping -c 4), Windows używa ukośników (ping -n 4).

Znajomość obu składni jest niezbędna w środowisku heterogenicznym.

Prezentacja podzielona jest na trzy bloki.

Blok pierwszy (slajdy 4-10) obejmuje narzędzia warstwy 3: ping i ARP.

Blok drugi (slajdy 11-17) to narzędzia warstwy 4 i trasowania: netstat, ss, traceroute, mtr, pathping.

Blok trzeci (slajdy 18-30) to narzędzia wyższych warstw i pomocnicze: nslookup/dig, ipconfig/ip, route, nmap, telnet/nc, curl/wget, tcpdump.

Każde narzędzie jest przedstawione według schematu: składnia + opis opcji, przykład na Linux, przykład na Windows, interpretacja wyników.

W przypadkach gdy narzędzie jest dostępne tylko na jednej platformie (np. ss tylko Linux, pathping tylko Windows), jest to wyraźnie zaznaczone.

3/30 Literatura

Książki

  1. Sieci komputerowe - Andrew S. Tanenbaum, David J. Wetherall, wyd. Rebis
  2. Administrator sieci komputerowej. Podręcznik - Jarosław Szymanek, wyd. Helion
  3. TCP/IP. Praktyczne narzędzia diagnostyczne - Krzysztof Pytel, wyd. WSIP
  4. Linux. Biblia administratora - Jarosław Kaczmarek, wyd. Helion

Źródła internetowe

  1. Dokumentacja Microsoft - netsh, netstat, tracert - learn.microsoft.com
  2. Dokumentacja Linux - man ping, man netstat, man ss, man traceroute - man7.org
  3. Nmap Reference Guide - https://nmap.org
  4. Wireshark User Guide - https://www.wireshark.org

Literatura dotycząca narzędzi sieciowych jest bogata.

Nmap Reference Guide to oficjalna dokumentacja najpopularniejszego skanera portów.

Książka Tanenbauma oferuje teoretyczne podstawy protokołów, które są niezbędne do zrozumienia działania narzędzi.

Publikacje Pytla i Szymanka koncentrują się na praktycznych aspektach diagnostyki.

Biblia administratora Linux to kompendium wiedzy o poleceniach systemowych.

Dokumentacja Microsoft i Linux (man pages) są podstawowym źródłem informacji o składni i opcjach.

Wireshark User Guide to obszerny podręcznik analizy ruchu sieciowego.

4/30 Wprowadzenie - model OSI a narzędzia
Warstwa OSIProtokołyNarzędzia diagnostyczne
L1 - FizycznaEthernet, sygnałSprawdzenie kabla, diody LED, ethtool
L2 - Łącza danychEthernet, MACarp, ip neigh, show mac-address-table (Cisco)
L3 - SieciowaIP, ICMPping, traceroute, mtr, pathping, ip route
L4 - TransportowaTCP, UDPnetstat, ss, nmap, telnet, nc
L5-L7 - AplikacjiDNS, HTTP, DHCPnslookup, dig, curl, wget, iperf3
Zasada diagnostyki: zaczynaj od warstwy najniższej (L1-L2) i przechodź wyżej.

Każde narzędzie diagnostyczne działa na określonej warstwie modelu OSI/TCP/IP.

Wybór narzędzia zależy od tego, która warstwa jest podejrzewana o problem.

Najpierw sprawdź kabel, potem ping na bramę, potem traceroute do celu, potem test portu.

To oszczędza czas i eliminuje kolejne warstwy.

Zasada warstwowej diagnostyki (top-down lub bottom-up) jest standardem w branży IT.

Metoda bottom-up (od L1 w górę) jest bezpieczniejsza dla początkujących - zaczynasz od fizycznego połączenia i stopniowo sprawdzasz wyższe warstwy.

Metoda top-down (od L7 w dół) jest szybsza dla doświadczonych - jeśli aplikacja nie działa, sprawdzasz najpierw DNS i port, a potem schodzisz niżej.

Większość narzędzi pokazanych w tej prezentacji jest dostępna w każdym systemie operacyjnym bez dodatkowej instalacji.

Uwaga: nmap, tcpdump, mtr, traceroute, iperf3, ethtool wymagają instalacji (pakiety w Linux, pobranie w Windows).

W systemie Linux narzędzia znajdują się w pakietach: iproute2 (ip, ss), net-tools (netstat, ifconfig), dnsutils (dig, nslookup), traceroute, nmap, tcpdump, mtr, ethtool.

Nie wszystkie z tych pakietów są domyślnie zainstalowane - często trzeba je doinstalować przez menedżera pakietów.

5/30 ping - podstawy i protokół ICMP
Definicja: ping (Packet InterNet Groper) - narzędzie wykorzystujące protokół ICMP (Internet Control Message Protocol) do testowania dostępności hosta i pomiaru opóźnienia sieciowego.

ping działa na warstwie 3 (sieciowej).

ping to podstawowe narzędzie testowania łączności sieciowej.

Wysyła pakiety ICMP Echo Request do hosta docelowego i oczekuje ICMP Echo Reply.

Mierzy czas odpowiedzi (RTT - Round Trip Time) i zgłasza utracone pakiety.

Jeśli ping nie działa, sprawdź: czy kabel jest podłączony (L1), czy host zna adres MAC (L2), czy nie ma firewalla blokującego ICMP (L3/L4). ping nie wymaga otwartego portu TCP/UDP - ICMP jest odrębnym protokołem (IP proto 1).

ICMP jest zdefiniowany w RFC 792.

Znajomość typów ICMP pomaga w interpretacji komunikatów błędów.

W Windows domyślnie wysyła 4 pakiety i kończy działanie.

TTL (Time to Live) to liczba skoków (hopów), jakie pakiet może przebyć.

Oprócz Echo Request/Reply (typ 8/0) ICMP zawiera także: Destination Unreachable (typ 3, kody 0-15), Time Exceeded (typ 11, używany przez traceroute), Redirect (typ 5), Parameter Problem (typ 12).

Niektóre zapory ogniowe blokują ICMP, uznając go za zagrożenie bezpieczeństwa.

W takim przypadku ping nie działa, ale inne usługi (HTTP, SSH) mogą działać poprawnie.

W sieci produkcyjnej ICMP powinien być odblokowany selektywnie - blokowanie go utrudnia diagnostykę.

Z drugiej strony atak ping flood (ICMP flood) może przeciążyć sieć, dlatego firewalle często limitują ICMP.

W Linux ping domyślnie wysyła pakiety w nieskończoność (aż do Ctrl+C).

Jeśli ping zwraca 'Time to live expired', oznacza to, że pakiet przekroczył maksymalną liczbę skoków - można zwiększyć TTL opcją -t (Linux) lub -i (Windows).

6/30 ping - porównanie składni Linux i Windows
# Linux - najważniejsze opcje:
ping -c 4 8.8.8.8
# -c count: liczba pakietów (domyślnie nieskończoność)
ping -i 0.5 -c 10 8.8.8.8
# -i interval: odstęp między pakietami (s)
ping -s 1472 -c 4 8.8.8.8
# -s size: rozmiar pakietu (domyślnie 56 B + 8 B ICMP = 64 B)
ping -I eth0 8.8.8.8
# -I interface: określenie interfejsu źródłowego

# Windows - najważniejsze opcje:
ping -n 4 8.8.8.8
# -n count: liczba pakietów (domyślnie 4)
ping -l 1472 -n 4 8.8.8.8
# -l size: rozmiar bufora (odpowiednik -s w Linux)
ping -w 1000 -n 4 8.8.8.8
# -w timeout: czas oczekiwania na odpowiedź (ms)
ping -t 8.8.8.8
# -t: ping ciągły (aż do Ctrl+C)
Kluczowa różnica: Linux domyślnie pinguje w nieskończoność (jak Windows z -t), Windows domyślnie tylko 4 pakiety.

Linux używa myślników (-c), Windows ukośników (/) dla opcji. Po myślniku w Windows też działa (-n 4).

Standardowy MTU dla Ethernet to 1500 B.

Rozmiar pakietu ping ma znaczenie przy testowaniu MTU (Maximum Transmission Unit).

Nagłówek IP to 20 B, ICMP to 8 B, więc maksymalny rozmiar danych to 1500 - 20 - 8 = 1472 B.

Jeśli ping z rozmiarem 1472 działa, ale 1473 nie, oznacza to problem z fragmentacją pakietów (możliwe, że gdzieś na trasie jest niższe MTU).

Problem ten jest znany jako PMTUD black hole i występuje często w tunelach VPN (PPPoE, IPsec).

W Windows opcja -f (Don't Fragment) ustawia bit DF w nagłówku IP.

W Linux odpowiednikiem jest -M do (don't fragment) lub -M want (z fragmentacją).

Test MTU: ping -f -l 1472 8.8.8.8 (Windows) lub ping -M do -s 1472 8.8.8.8 (Linux).

Jeśli pakiet jest za duży, dostajemy 'Packet needs to be fragmented but DF set' (Windows) lub 'Message too long' (Linux).

Przy analizie wyników ping warto zwracać uwagę na: czas RTT (im niższy tym lepszy, poniżej 20 ms w sieci lokalnej), straty pakietów (packet loss) - każda strata to potencjalny problem z łączem, oraz wariancję (jitter) - duże różnice między kolejnymi pomiarami mogą świadczyć o przeciążeniu łącza.

Uwaga: jeśli pierwszy pakiet ma duży czas, a kolejne małe, to pierwszy pakiet wymagał rozgłoszenia ARP (ARP delay).

7/30 ping - praktyczne przykłady
# Przykład 1: ping na bramę domyślną (test L1/L2/L3)
ping -c 2 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.23 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.89 ms
--- 192.168.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.89/1.06/1.23/0.17 ms

# Przykład 2: ping na adres zewnętrzny (test DNS + routingu)
ping -c 2 google.com
PING google.com (142.250.185.78) 56(84) bytes of data.
64 bytes from waw02s21-in-f14.1e100.net: icmp_seq=1 ttl=118 time=8.45 ms

# Przykład 3: wynik z problemem
ping -c 3 10.0.0.50
From 192.168.1.1 icmp_seq=1 Destination Host Unreachable
From 192.168.1.1 icmp_seq=2 Destination Host Unreachable
3 packets transmitted, 0 received, 100% packet loss
# Router 192.168.1.1 nie ma trasy do sieci 10.0.0.0 - błąd routingu!

Przykład 1 pokazuje normalne działanie ping w sieci LAN.

Czas 1.23 ms to typowy RTT dla sieci lokalnej.

TTL = 64 w odpowiedzi - początkowy TTL zależy od systemu: Linux domyślnie wysyła z TTL=64 (64-64=0 hopów), Windows z TTL=128 (128-64=64 hopów).

Przykład 2 pokazuje ping na adres domenowy. Najpierw system rozwiązuje nazwę google.com na adres IP (142.250.185.78), potem wysyła ICMP.

TTL = 118 - startowe TTL na serwerze Google wynosi prawdopodobnie 128 (128-118 = 10 hopów).

To kluczowa informacja diagnostyczna.

W statystyce: min/avg/max to wartości minimalna, średnia i maksymalna RTT. mdev (population standard deviation - odchylenie standardowe populacji) - im niższe, tym stabilniejsze łącze.

Przykład 3 pokazuje komunikat 'Destination Host Unreachable' od routera.

Oznacza to, że router (192.168.1.1) nie ma trasy do sieci docelowej.

W przeciwieństwie do braku odpowiedzi (timeout), ten komunikat jednoznacznie wskazuje na brak trasy w tablicy routingu.

8/30 arp - podstawy tablicy ARP
# Windows - wyświetlenie tablicy ARP:
arp -a

  Interface: 192.168.1.10 --- 0x5
  Internet Address  Physical Address  Type
  192.168.1.1  aa-bb-cc-dd-ee-01  dynamic
  192.168.1.20  11-22-33-44-55-66  dynamic
  192.168.1.100  00-11-22-33-44-55  static

# Linux - wyświetlenie tablicy ARP (starsze narzędzie):
arp -n
# lub nowsze polecenie:
ip neigh show

ARP (Address Resolution Protocol) - protokół warstwy 2.

Tablica ARP zawiera mapowanie adresów IP na adresy MAC w sieci lokalnej.

Bez poprawnej tablicy ARP komunikacja w segmencie L2 jest niemożliwa.

W kolumnie Type: dynamic = wpis uczony przez ARP (wygaśnie po czasie życia), static = wpis ręcznie dodany (nie wygasa).

Czas życia wpisów ARP: Windows 120-300 s, Linux 30-60 s (niekompletne) / 300 s (kompletne).

Po otrzymaniu odpowiedzi ARP, wpis jest dodawany do tablicy.

Tablica ARP jest kluczowym elementem komunikacji w sieci lokalnej.

Każdy host przed wysłaniem pakietu IP sprawdza tablicę ARP, aby poznać adres MAC odbiorcy.

Jeśli wpis nie istnieje, host wysyła ARP Request (broadcast) i czeka na ARP Reply.

Czas życia wpisu ARP (ARP cache timeout) ma istotne znaczenie praktyczne.

Zbyt długi czas (Cisco IOS: 4 godziny) powoduje, że zmiana adresu MAC (np. wymiana karty sieciowej) nie jest wykrywana przez długi czas.

Zbyt krótki czas (Windows: 120 s) generuje zbędny ruch broadcast ARP.

W stabilnych sieciach LAN dłuższy czas jest korzystny (mniej ruchu ARP), w sieciach z częstymi zmianami (Wi-Fi, laptopy) krótszy czas jest lepszy.

Statyczne wpisy ARP (arp -s w Windows, ip neigh add w Linux) są używane do ochrony przed atakami ARP spoofing.

Dodają trwałe mapowanie IP-MAC, które nie może być nadpisane przez fałszywy ARP Reply.

Wadą jest konieczność ręcznej aktualizacji po zmianie sprzętu.

W praktyce produkcyjnej statyczne ARP stosuje się dla serwerów i routerów, a dla stacji roboczych pozostawia wpisy dynamiczne z ochroną ARP (DAI) na przełączniku.

9/30 arp - Windows (arp -a, arp -d)
C:\> arp /?
ARP -s inet_addr eth_addr [if_addr] - dodaje wpis statyczny
ARP -d inet_addr [if_addr]  - usuwa wpis(y)
ARP -a [inet_addr] [-N if_addr] - wyświetla tablicę ARP
ARP -v [inet_addr] [-N if_addr] - wyświetla szczegółowo

C:\> arp -a
  Interface: 192.168.1.10 --- 0x5
  Internet Address  Physical Address  Type
  192.168.1.1  aa-bb-cc-dd-ee-01  dynamic
  192.168.1.20  11-22-33-44-55-66  dynamic
  192.168.1.254  00-11-22-33-44-55  static

C:\> arp -d 192.168.1.20
# Usunięcie wpisu dla 192.168.1.20 (wymusza ponowny ARP)

C:\> arp -s 192.168.1.50 00-aa-bb-cc-dd-ee
# Dodanie statycznego wpisu ARP (wymaga uprawnień admina)
# Uwaga: w nowszych Windows wpis statyczny jest przechowywany w rejestrze
# i utrzymuje się po restarcie tylko jeśli dodany przez netsh:
netsh interface ipv4 set neighbors "LAN" 192.168.1.50 00-aa-bb-cc-dd-ee
Uwaga: w Windows 10/11 polecenie arp -s tworzy wpis tylko do następnego restartu.

W systemie Windows narzędzie arp jest dostępne w wierszu poleceń (cmd) i PowerShell.

Aby dodać trwały statyczny wpis, należy użyć netsh.

W Windows tablica ARP jest per-interfejs.

Opcja -a bez parametru pokazuje wszystkie tablice.

Jest to pierwszy krok w diagnostyce problemów L2.

Jeśli komputer ma wiele kart sieciowych (LAN, Wi-Fi, VPN), każda ma własną tablicę ARP.

Opcja -N if_addr pokazuje tablicę dla konkretnego interfejsu (według adresu IP).

Różnica między arp -s a netsh dla statycznych wpisów ARP jest istotna. arp -s dodaje wpis tylko w pamięci - po restarcie znika. netsh interface ipv4 set neighbors dodaje wpis do rejestru (HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}), który jest odtwarzany po restarcie.

W systemach serwerowych Windows Server zaleca się używanie netsh zamiast arp -s.

W praktyce diagnostycznej arp -a jest używane głównie do sprawdzenia, czy dany host jest osiągalny w sieci LAN.

Jeśli host widnieje w tablicy ARP, oznacza to, że odpowiedział na ARP Request - jest fizycznie podłączony i ma skonfigurowany adres IP.

Jeśli nie ma wpisu, ping na ten host nie zadziała na poziomie L2 (brak adresu MAC).

10/30 arp i ip neigh - Linux
# Stare narzędzie arp (net-tools):
arp -n
# -n: nie rozwiązuj nazw (szybsze, pokazuje IP zamiast DNS)
Address  HWtype  HWaddress  Flags Mask  Iface
192.168.1.1  ether  aa:bb:cc:dd:ee:01 C  eth0
192.168.1.20  ether  11:22:33:44:55:66 C  eth0
# Flaga C = complete (kompletny wpis), S = static

# Nowe narzędzie ip neigh (iproute2):
ip neigh show
192.168.1.1 dev eth0 lladdr aa:bb:cc:dd:ee:01 REACHABLE
192.168.1.20 dev eth0 lladdr 11:22:33:44:55:66 STALE
192.168.1.50 dev eth0  FAILED
# REACHABLE - wpis potwierdzony, STALE - wygasł, FAILED - brak odpowiedzi

# Modyfikacja tablicy ARP:
ip neigh del 192.168.1.20 dev eth0  # usuwa wpis
ip neigh add 192.168.1.50 lladdr 00:11:22:33:44:55 dev eth0 nud permanent
# nud permanent - wpis trwały, nud reachable - czasowy

W systemie Linux dostępne są dwa narzędzia do zarządzania tablicą ARP: starsze arp (z pakietu net-tools) i nowsze ip neigh (z pakietu iproute2). ip neigh jest zalecane w nowych systemach.

Statusy w ip neigh: REACHABLE (osiągalny), STALE (przedawniony, czeka na potwierdzenie), DELAY (opóźnienie przed sondowaniem), PROBE (sondowanie ARP), FAILED (nieosiągalny), PERMANENT (wpis trwały).

Status FAILED oznacza brak odpowiedzi na sondy ARP.

Wpis PERMANENT jest zawsze obecny w tablicy i nie wygasa.

Jego adres MAC nie może być zmieniony przez ARP Reply.

To odpowiednik statycznego wpisu w Windows.

Narzędzie ip neigh jest częścią pakietu iproute2, standardowo zainstalowanego w każdej dystrybucji Linux.

W przeciwieństwie do arp (z net-tools), które jest uznawane za przestarzałe, ip neigh oferuje bogatsze informacje i lepszą integrację z jądrem Linux.

Stare narzędzia (arp, ifconfig, route, netstat) są w wielu dystrybucjach oznaczane jako deprecated.

Statusy w ip neigh odpowiadają stanom NUD (Neighbor Unreachability Detection) z RFC 2461.

REACHABLE oznacza, że wpis został potwierdzony w ciągu ostatnich 30-60 s.

STALE oznacza, że wpis wygasł i przy następnej transmisji system wyśle sondę ARP.

DELAY to krótki stan (5 s) po użyciu STALE wpisu - system czeka, czy nie nadejdzie potwierdzenie z wyższej warstwy (np. TCP).

PROBE to stan, w którym system wysyła sondy ARP (co 1 s, do 3 razy).

Wpis reachable (bez parametru permanent) ma ustawiony czas życia (domyślnie 30 s), po którym przechodzi w STALE.

W przypadku konfiguracji sieciowych na serwerach często dodaje się wpisy PERMANENT dla routera (bramy domyślnej) i kluczowych serwerów.

11/30 netstat - podstawy
Definicja: netstat wyświetla informacje o gniazdach (socketach) sieciowych: aktywne połączenia TCP, nasłuchujące porty TCP/UDP, tablicę routingu, statystyki interfejsów i masquerade.
OpcjaLinuxWindowsOpis
Wyświetl wszystkie-a-aWszystkie gniazda (także nasłuchujące)
Nasłuchujące-l-a | findstr LISTENTylko porty nasłuchujące
Numery portów-n-nAdresy i numery portów numerycznie
Program-p-bPokazuje proces używający gniazda
TCP/UDP-t / -u-p tcp / -p udpFiltr protokołu
Statystyki-s-sStatystyki protokołów
Tablica routingu-r-rWyświetla tablicę routingu

Jest dostępne w Linux, Windows i macOS.

netstat (Network Statistics) to narzędzie do wyświetlania aktywnych połączeń sieciowych, tablic routingu, statystyk interfejsów i nasłuchujących portów.

W Linux netstat jest uznawany za przestarzały (zastąpiony przez ss).

W Windows wciąż jest głównym narzędziem do monitorowania połączeń.

W systemach Linux nowsze dystrybucje (Debian 10+, Ubuntu 18.04+) nie instalują netstat domyślnie.

Zamiast tego dostępne jest ss z pakietu iproute2.

Aby zainstalować netstat w Linux: apt install net-tools (Debian/Ubuntu) lub yum install net-tools (RHEL/CentOS).

Windows ma netstat wbudowany w system.

Wyjście netstat pokazuje: Proto (protokół), Local Address (adres lokalny), Foreign Address (adres zdalny), State (stan połączenia TCP).

Stany TCP: LISTEN (nasłuchiwanie), ESTABLISHED (ustanowione połączenie), TIME_WAIT (oczekiwanie na zamknięcie), CLOSE_WAIT (oczekiwanie na zamknięcie przez aplikację), SYN_SENT (wysyłanie SYN).

Duża liczba połączeń w stanie TIME_WAIT jest normalna przy krótkich połączeniach HTTP (wiele zapytań).

Duża liczba CLOSE_WAIT oznacza, że aplikacja nie zamyka prawidłowo połączeń - to problem aplikacji, nie sieci.

Duża liczba SYN_RECV może oznaczać atak SYN flood.

12/30 netstat - praktyczne przykłady
# Windows - lista nasłuchujących portów z procesami:
netstat -ano | findstr LISTEN
  Proto  Local Address  Foreign Address  State  PID
  TCP  0.0.0.0:135  0.0.0.0:0  LISTEN  1052
  TCP  0.0.0.0:445  0.0.0.0:0  LISTEN  4
  TCP  0.0.0.0:3389  0.0.0.0:0  LISTEN  1232
  TCP  0.0.0.0:5040  0.0.0.0:0  LISTEN  7816
  TCP  192.168.1.10:139  0.0.0.0:0  LISTEN  4
  TCP  [::]:135  [::]:0  LISTEN  1052
  TCP  [::]:445  [::]:0  LISTEN  4

# Linux - lista nasłuchujących portów z procesami:
netstat -tulpn
  Proto Local Address  PID/Program name
  tcp  0.0.0.0:22  789/sshd
  tcp  0.0.0.0:80  1234/apache2
  tcp  0.0.0.0:3306  567/mysqld
  udp  0.0.0.0:5353  345/avahi-daemon

# Windows - znajdź PID procesu na porcie:
netstat -ano | findstr :3389
  TCP 0.0.0.0:3389 0.0.0.0:0 LISTEN 1232
tasklist | findstr 1232
  TermService.exe  1232  Services  0  7 852 K

Uwaga: w systemie Linux opcja -p w netstat wymaga uprawnień root (sudo), aby pokazać nazwy procesów.

[::]:135 to nasłuch na IPv6.

Przykład pokazuje, jak sprawdzić, które usługi nasłuchują na porcie.

W Windows 0.0.0.0:445 oznacza, że usługa nasłuchuje na wszystkich interfejsach IPv4 na porcie 445 (SMB).

192.168.1.10:139 oznacza nasłuch tylko na konkretnym interfejsie.

PID (Process ID) pozwala zidentyfikować proces za pomocą tasklist (Windows) lub ps aux (Linux).

W Linux opcja -t (TCP), -u (UDP), -l (listening), -p (program), -n (numeryczne) jest standardowym zestawem do diagnostyki.

Opcja -a zamiast -l pokazuje też połączenia ESTABLISHED. netstat -s wyświetla statystyki protokołów - przydatne do wykrywania utraconych pakietów (retransmisje, błędy TCP).

W Windows netstat -b (zamiast -o) pokazuje bezpośrednio nazwę procesu zamiast PID, ale wymaga uprawnień administratora. netstat -e wyświetla statystyki interfejsów Ethernet (wysłane/odebrane pakiety, błędy). netstat -r wyświetla tablicę routingu - użyteczne do szybkiego sprawdzenia tras.

13/30 netstat -r - tablica routingu
# Windows - tablica routingu:
route print
===========================================================================
 Interface List
  5...00-1a-2b-3c-4d-5e ... Intel(R) Ethernet Connection
 10...aa-bb-cc-dd-ee-ff ... Wi-Fi
===========================================================================
 IPv4 Route Table
===========================================================================
 Active Routes:
 Network Dest  Netmask  Gateway  Interface  Metric
 0.0.0.0  0.0.0.0  192.168.1.1  192.168.1.10  25
 127.0.0.0  255.0.0.0  127.0.0.1  127.0.0.1  331
 192.168.1.0  255.255.255.0  192.168.1.10 192.168.1.10  25
 192.168.1.10  255.255.255.255 127.0.0.1  127.0.0.1  331
 192.168.1.255  255.255.255.255 192.168.1.10 192.168.1.10  25
===========================================================================
# Linux - tablica routingu (netstat -rn):
ip route show
default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10 metric 100
To kluczowe narzędzie do diagnostyki problemów z routingiem lokalnym.

netstat -r (lub route print w Windows) wyświetla tablicę routingu systemu.

Wiersz 0.0.0.0/0.0.0.0 to trasa domyślna.

Bez niej host nie może komunikować się poza własną podsiecią.

Metryka (metric) to koszt trasy - przy wielu trasach system wybiera niższą metrykę.

Niższa metryka = wyższy priorytet.

Tablica routingu hosta jest podstawą decyzji o przekazywaniu pakietów.

Każdy pakiet IP jest porównywany z wpisami w tablicy według zasady najdłuższego dopasowania prefiksu (longest prefix match).

Jeśli pasuje do 0.0.0.0/0 (trasa domyślna), system używa bramy domyślnej.

Jeśli pasuje do konkretnej sieci (jak 192.168.1.0/24), system wysyła pakiet bezpośrednio (przez ARP).

W Windows metryka jest obliczana automatycznie na podstawie szybkości interfejsu.

Dla interfejsów przewodowych (1 Gbps) metryka jest niższa niż dla Wi-Fi (ok. 25 vs 55).

Można zmienić metrykę ręcznie w ustawieniach interfejsu (odznacz 'Automatic metric').

Jeśli system ma dwa interfejsy (LAN i Wi-Fi) z trasami do tej samej sieci, użyje tego z niższą metryką.

W Linux routing jest zarządzany przez ip route z pakietu iproute2.

Wpisy 'proto dhcp' oznaczają, że trasa została dodana przez klienta DHCP. 'proto kernel' oznacza trasę dodaną przez jądro (dla sieci bezpośrednio podłączonych). 'scope link' oznacza, że trasa dotyczy tylko bezpośrednio podłączonych hostów (bez routera).

Ręczne dodanie trasy: ip route add 10.0.0.0/24 via 192.168.1.254 dev eth0.

14/30 ss - nowoczesny zamiennik netstat (Linux)
# ss - podstawowe opcje:
ss -tuln
# -t  TCP, -u  UDP, -l  LISTEN, -n  numerycznie
Netid State  Recv-Q Send-Q Local Address:Port  Peer Address:Port
udp   UNCONN 0      0      0.0.0.0:161         0.0.0.0:*
tcp   LISTEN 0      128    0.0.0.0:22          0.0.0.0:*
tcp   LISTEN 0      511    0.0.0.0:80          0.0.0.0:*
tcp   LISTEN 0      70     127.0.0.1:3306      0.0.0.0:*

# ss - wszystkie połączenia (także ESTABLISHED):
ss -tan
# -a  all (LISTEN + ESTABLISHED)

# ss - szczegóły procesu:
ss -tulnp
# -p  process name (wymaga sudo)
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=789,fd=3))

# ss - statystyki:
ss -s
Total: 640
TCP:   21 (estab 5, closed 4, orphaned 0, timewait 0)

Transport Total     IP        IPv6
RAW      1         0         1
UDP      10        6         4
TCP      17        12        5
INET     28        18        10
FRAG     0         0         0

ss (Socket Statistics) to narzędzie z pakietu iproute2, dostępne domyślnie w każdej dystrybucji Linux.

Jest szybsze i bardziej wydajne niż netstat - odczytuje informacje bezpośrednio z jądra przez /proc/net/tcp, /proc/net/udp itd.

ss jest zalecanym zamiennikiem netstat w systemie Linux.

Uwaga: opcja -p (proces) w ss wymaga uprawnień root (sudo).

W normalnych warunkach Recv-Q i Send-Q powinny być bliskie 0.

Składnia: ss [opcje] [filtr].

ss oferuje zaawansowane filtry: ss state established (dla ustanowionych połączeń), ss state time-wait (oczekujące), ss sport = :80 (źródłowy port 80), ss dport = :443 (docelowy port 443), ss dst 192.168.1.0/24 (docelowa sieć).

Główne zalety: szybsze działanie (szczególnie przy dużej liczbie połączeń), bogatsze informacje (Recv-Q, Send-Q pokazują ilość danych w buforze), możliwość filtrowania według stanu, portu, adresu. netstat był oznaczony jako deprecated w wielu dystrybucjach już od lat.

Recv-Q i Send-Q w ss to ilość danych (w bajtach) czekających w buforze odbiorczym i nadawczym.

Jeśli Recv-Q rośnie, oznacza to, że aplikacja nie odbiera danych wystarczająco szybko (problem z aplikacją).

Jeśli Send-Q rośnie, oznacza to, że druga strona nie potwierdza danych (problem sieciowy lub przeciążenie odbiorcy).

Przykład: ss -tan sport = :80 or dport = :80 - wszystkie połączenia związane z portem 80.

15/30 ss - praktyczne przykłady
# 1. Sprawdzenie, czy serwer HTTP nasłuchuje:
ss -tuln | grep :80
LISTEN 0 511 0.0.0.0:80 0.0.0.0:*
# lub bez grep (filtracja wbudowana):
ss -tuln sport = :80

# 2. Aktywne połączenia SSH:
ss -tan sport = :22 or dport = :22
State  Recv-Q  Send-Q  Local:Port  Peer:Port
ESTAB  0  0  192.168.1.10:22  10.0.0.5:54321
ESTAB  0  0  192.168.1.10:22  10.0.0.6:49876
LISTEN  0  128  0.0.0.0:22  0.0.0.0:*

# 3. Połączenia z konkretnego adresu:
ss -tan dst 10.0.0.5

# 4. Połączenia w stanie TIME_WAIT:
ss -tan state time-wait
# duża liczba TIME_WAIT jest normalna po krótkich połączeniach HTTP

# 5. Nasłuchujące porty TCP z nazwami procesów:
ss -tlpn
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=789,fd=3))
LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1234,fd=6))
LISTEN 0 70  127.0.0.1:3306 0.0.0.0:* users:(("mysqld",pid=567,fd=24))

ss zastępuje netstat w diagnostyce.

W nowych systemach Linux warto przyzwyczaić się do ss zamiast netstat.

W Windows nie ma ss - odpowiednikiem jest netstat -ano.

ss state time-wait pokazuje połączenia oczekujące na zamknięcie.

Standardowo TIME_WAIT trwa 2*MSL (Maximum Segment Lifetime) = 60 s (Linux).

Jeśli liczba TIME_WAIT jest bardzo duża (tysiące), może wyczerpać pulę portów efemerycznych (32768-60999 w Linux).

W takim przypadku serwer nie będzie mógł nawiązywać nowych połączeń wychodzących.

Rozwiązania: włączenie reuse/tw_reuse w jądrze (sysctl), zwiększenie zakresu portów efemerycznych, lub optymalizacja aplikacji.

W praktyce administracyjnej ss jest najczęściej używane w trzech scenariuszach: (1) sprawdzenie, czy usługa nasłuchuje (ss -tuln | grep :port), (2) sprawdzenie liczby aktywnych połączeń (ss -tan | wc -l), (3) sprawdzenie, który proces używa portu (ss -tulnp | grep :port).

W przypadku podejrzenia ataku DDoS, ss pokazuje liczbę połączeń SYN_RECV z różnych adresów IP.

W systemach embedded (OpenWrt, MikroTik RouterOS) ss może nie być dostępne.

W macOS ss jest dostępny od wersji 10.12+ (Sierra), ale niektóre opcje się różnią.

16/30 traceroute - śledzenie trasy pakietu
Zasada działania: traceroute wysyła pakiety z TTL=1, potem TTL=2, TTL=3 itd. Każdy router na trasie zmniejsza TTL o 1. Gdy TTL osiągnie 0, router odrzuca pakiet i wysyła do nadawcy ICMP Time Exceeded (typ 11). Adres IP routera w komunikacie ICMP identyfikuje kolejny skok.
NarzędzieLinuxWindowsProtokół
KlasycznetraceroutetracertICMP (Windows) / UDP (Linux)
ZaawansowanemtrpathpingICMP + pomiar statystyk

traceroute to narzędzie do śledzenia trasy, jaką pakiet pokonuje od źródła do celu.

Wykorzystuje pole TTL (Time to Live) w nagłówku IP i komunikaty ICMP Time Exceeded.

Linux traceroute domyślnie wysyła pakiety UDP na wysokie porty (33434+).

Windows tracert domyślnie wysyła ICMP Echo Request.

W obu przypadkach routery pośrednie odrzucają pakiet z TTL=0 i wysyłają ICMP Time Exceeded.

Uwaga: traceroute nie jest domyślnie zainstalowany w wielu dystrybucjach Linux. Należy go doinstalować: apt install traceroute.

Alternatywnie można użyć tracepath (z iputils-tracepath), który jest lżejszy i często domyślnie dostępny.

Większość tras w Internecie mieści się w 10-20 hopach.

Różnica w domyślnym protokole między Linux (UDP) a Windows (ICMP) ma znaczenie praktyczne.

Niektóre routery i zapory mogą blokować UDP, ale przepuszczać ICMP (lub odwrotnie).

Jeśli traceroute (Linux) nie działa, warto spróbować opcji -I (ICMP) lub -T (TCP SYN).

Jeśli tracert (Windows) nie działa, warto spróbować traceroute z Linux lub zainstalować WinMTR.

Wynik traceroute pokazuje: numer skoku (hop), adres IP routera, nazwę DNS (jeśli -n nie użyto), i trzy czasy RTT dla trzech prób.

Gwiazdki (* * *) oznaczają brak odpowiedzi - router mógł zablokować ICMP Time Exceeded lub pakiet zaginął.

Trzy gwiazdki nie oznaczają koniecznie problemu - niektóre routery celowo nie odpowiadają na pakiety z TTL=0 (ze względów bezpieczeństwa).

Maksymalna liczba skoków to 30 (domyślnie w Windows tracert i Linux traceroute).

Jeśli trasa ma więcej niż 30 hopów, należy zwiększyć limit opcją -m (Linux) lub -h (Windows).

17/30 traceroute / tracert - przykłady
# Linux - traceroute (domyślnie UDP):
traceroute -n google.com
traceroute to google.com (142.250.185.78), 30 hops max, 60 byte packets
 1  192.168.1.1  1.234 ms  1.156 ms  1.089 ms
 2  10.0.0.1  4.567 ms  4.234 ms  4.123 ms
 3  10.10.0.1  8.901 ms  8.567 ms  8.234 ms
 4  213.180.0.1  12.345 ms 12.123 ms 11.987 ms
 5  142.250.185.78 8.456 ms  8.234 ms  8.123 ms

# Linux - traceroute z ICMP (-I):
traceroute -I -n google.com

# Windows - tracert:
tracert -d google.com
Tracing route to google.com [142.250.185.78] over a maximum of 30 hops:
  1  1 ms  1 ms  1 ms  192.168.1.1
  2  5 ms  4 ms  4 ms  10.0.0.1
  3  9 ms  8 ms  9 ms  10.10.0.1
  4  12 ms  12 ms  11 ms  213.180.0.1
  5  8 ms  8 ms  8 ms  142.250.185.78

Trace complete.

Każdy wiersz to jeden router na trasie.

Trzy czasy to trzy próby ICMP/UDP.

Opcja -n (Linux) lub -d (Windows) wyłącza rozwiązywanie nazw DNS - przyspiesza działanie.

Duże różnice między czasami mogą świadczyć o przeciążeniu routera.

Drugi skok (10.0.0.1) to pierwszy router ISP.

Kolejne skoki to routery szkieletowe dostawcy Internetu.

Ostatni skok to docelowy serwer.

Interpretacja wyników traceroute: pierwszy skok (hop 1) to zawsze brama domyślna (192.168.1.1 w przykładzie).

Czas RTT dla każdego skoku rośnie wraz z odległością, ale nie zawsze - zależy od obciążenia routera i przepustowości łącza.

W przykładzie widzimy: hop 1 (1 ms) - sieć lokalna, hop 2-3 (4-9 ms) - sieć ISP, hop 4 (12 ms) - router szkieletowy (prawdopodobnie węzeł krajowy), hop 5 (8 ms) - docelowy serwer Google (niższy czas niż hop 4, bo to już serwer Google, a nie router pośredni).

Jeśli któryś hop pokazuje czas > 100 ms, oznacza to łącze satelitarne lub transatlantyckie.

W przypadku problemów: jeśli traceroute zatrzymuje się na jednym hopie (kolejne skoki to *** *** ***), oznacza to, że router nie odpowiada na ICMP Time Exceeded (częste w sieciach ISP) lub routing jest przerwany za tym routerem.

Jeśli ping na adres docelowy nie działa, a wcześniejsze skoki są OK, to prawdopodobnie firewall blokuje ruch.

18/30 mtr - połączenie ping i traceroute (Linux)
# mtr - podstawowe użycie:
mtr 8.8.8.8
# Uruchamia interfejs tekstowy (ncurses) z ciągłą aktualizacją

   Packets  Pings
 Host  Loss%  Snt  Last  Avg  Best  Wrst StDev
 1. 192.168.1.1  0.0%  50  1.2  1.1  0.8  2.3  0.3
 2. 10.0.0.1  0.0%  50  4.5  4.3  3.2  6.7  0.8
 3. 10.10.0.1  0.0%  50  9.1  8.9  7.2  12.3  1.1
 4. 213.180.0.1  0.0%  50  12.3  12.1  10.2  15.6  1.4
 5. 142.250.185.78  0.0%  50  8.4  8.5  7.6  10.2  0.5

# mtr - tryb raportu (bez interaktywnego UI):
mtr -r -c 100 8.8.8.8
# -r: raport, -c 100: 100 cykli pomiarowych

# mtr - wyświetl adresy IP zamiast nazw:
mtr -n 8.8.8.8

mtr (My Traceroute) łączy funkcjonalność ping i traceroute w jednym narzędziu.

mtr jest dostępny w repozytoriach większości dystrybucji Linux (apt install mtr).

Pokazuje trasę do celu i ciągle aktualizuje statystyki opóźnienia i strat dla każdego skoku.

W Windows odpowiednikiem jest WinMTR (darmowe narzędzie) lub pathping.

mtr jest nieocenionym narzędziem do diagnostyki problemów z jakością łącza.

Pokazuje nie tylko trasę, ale także procent strat na każdym skoku.

Jeśli na hoście 3 widzisz 10% strat, a na hoście 1 i 2 straty są 0%, oznacza to, że problem jest na łączu między hostem 2 a hostem 3 (lub na samym hoście 3).

Kolumny w mtr: Loss% - procent utraconych pakietów, Snt - liczba wysłanych pakietów, Last - czas ostatniego pomiaru, Avg - średni czas, Best - najlepszy czas, Wrst - najgorszy czas, StDev - odchylenie standardowe.

Wysokie StDev oznacza dużą zmienność opóźnienia (jitter), co jest szkodliwe dla aplikacji czasu rzeczywistego (VoIP, streaming).

W praktyce administracyjnej mtr jest często używane do: (1) sprawdzenia, gdzie na trasie występują straty pakietów, (2) porównania jakości dwóch tras do tego samego celu, (3) monitorowania łącza w czasie rzeczywistym podczas zgłaszania problemu.

W przypadku reklamacji u dostawcy Internetu, wydruk z mtr jest standardowym dowodem problemów z łączem.

19/30 pathping - Windows (odpowiednik mtr)
C:\> pathping -n 8.8.8.8

Tracing route to 8.8.8.8 over a maximum of 30 hops
  0  192.168.1.10
  1  192.168.1.1
  2  10.0.0.1
  3  10.10.0.1
  4  213.180.0.1
  5  8.8.8.8

Computing statistics for 125 seconds...
  Source to Here  This Node/Link
Hop  RTT  Lost/Sent = Pct  Lost/Sent = Pct  Address
  0  0/ 100 =  0%  192.168.1.10
  1  1ms  0/ 100 =  0%  0/ 100 =  0%  192.168.1.1
  2  5ms  1/ 100 =  1%  1/ 100 =  1%  10.0.0.1
  3  10ms  5/ 100 =  5%  4/ 100 =  4%  10.10.0.1
  4  15ms  1/ 100 =  1%  0/ 100 =  0%  213.180.0.1
  5  8ms  0/ 100 =  0%  0/ 100 =  0%  8.8.8.8

pathping to narzędzie dostępne w Windows (2000/XP/Vista/7/8/10/11), które łączy funkcje tracert i ping.

Najpierw śledzi trasę (jak tracert), a następnie wysyła 100 pakietów do każdego routera na trasie i zbiera statystyki strat.

pathping wysyła 100 pakietów do każdego skoku (opcja -q liczba).

Domyślnie czeka 125 s na zebranie statystyk.

Wynik pokazuje straty na każdym hopie (This Node/Link) i ogólne straty (Source to Here).

Opcja -w ms ustawia timeout.

pathping działa w dwóch fazach.

Faza 1: śledzenie trasy (jak tracert) - trwa do 30 s.

Całkowity czas działania: ok. 2 minuty.

Opcja -q zmniejsza liczbę pakietów (np. -q 25 = ok. 30 s).

To rozróżnienie jest kluczowe - pozwala odróżnić problem z pojedynczym łączem od problemu ogólnego.

Faza 2: wysyłanie pakietów testowych do każdego skoku - trwa domyślnie 125 s (5 s na skok * 25 hopów).

W tym czasie pathping wysyła 100 pakietów ICMP do każdego routera na trasie i zbiera statystyki.

W kolumnie 'This Node/Link' pathping pokazuje straty pakietów na konkretnym hopie.

Jeśli hop 3 ma 5% strat, a hop 2 ma 0% strat, to problem jest na łączu między hop 2 a hop 3 (lub na samym hop 3).

Kolumna 'Source to Here' pokazuje skumulowane straty od źródła do tego hopu.

Ograniczenia pathping: (1) działa tylko na Windows, niektóre routery nie odpowiadają na ICMP Time Exceeded, (2) długi czas działania (minuta+), (3) nie pokazuje jitteru (tylko straty).

W praktyce administracyjnej pathping jest używane do weryfikacji reklamacji u dostawcy Internetu - wydruk z pathping pokazujący straty na konkretnym hopie jest trudny do zakwestionowania.

20/30 nslookup i dig - diagnostyka DNS
# Windows - nslookup (podstawowe):
nslookup google.com
Server:  UnKnown
Address:  192.168.1.1

Name:  google.com
Addresses:  2a00:1450:4010:80a::200e
  142.250.185.78

# nslookup - szczegółowe zapytanie:
nslookup -type=MX google.com 8.8.8.8
# -type=MX: rekordy mail exchange, 8.8.8.8: serwer DNS

# Linux - dig (bardziej szczegółowy):
dig google.com
; <<>> DiG 9.18.24 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12345
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;google.com.  IN  A

;; ANSWER SECTION:
google.com.  300  IN  A  142.250.185.78

;; Query time: 8 msec
;; SERVER: 192.168.1.1#53(192.168.1.1) (UDP)
;; WHEN: Sun Jun 21 16:30:00 CEST 2026
;; MSG SIZE  rcvd: 55

nslookup (Name Server Lookup) i dig (Domain Information Groper) to narzędzia do diagnozowania systemu DNS. nslookup jest dostępny w Linux i Windows. dig jest dostępny w Linux (pakiet dnsutils).

dig jest bardziej zaawansowany niż nslookup i zalecany w Linux.

Pokazuje: nagłówek odpowiedzi (status NOERROR, NXDOMAIN, SERVFAIL), czas życia rekordu (TTL = 300 s w przykładzie), typ rekordu (A dla IPv4, AAAA dla IPv6, MX dla mail, CNAME dla aliasu), zapytany serwer (192.168.1.1#53). dig +short pokazuje tylko adres IP (skrócony wynik). dig -x 8.8.8.8 wykonuje reverse DNS lookup (z adresu na nazwę).

W praktyce diagnostycznej: nslookup jest wystarczające do podstawowej diagnostyki (sprawdzenie, czy domena się rozwiązuje). dig jest niezbędne do zaawansowanej diagnostyki DNS (SOA, autorytatywne serwery, transfer strefy). dig axfr @ns1.example.com example.com wykonuje transfer strefy (ale większość serwerów blokuje).

Typowe problemy DNS: (1) NXDOMAIN - domena nie istnieje, (2) SERVFAIL - serwer DNS nie może odpowiedzieć (problem z autorytatywnym serwerem), (3) REFUSED - serwer odrzucił zapytanie (np. zablokowane).

Czas odpowiedzi DNS (Query time w dig) powinien być poniżej 50 ms dla lokalnego serwera DNS.

Długi czas oznacza problem z łączem do serwera DNS lub przeciążenie.

21/30 ipconfig (Windows) i ip addr (Linux)
# Windows - ipconfig:
ipconfig /all

Ethernet adapter LAN:
  Connection-specific DNS Suffix  . : home.local
  IPv4 Address. . . . . . . . . . . : 192.168.1.10
  Subnet Mask . . . . . . . . . . . : 255.255.255.0
  Default Gateway . . . . . . . . . : 192.168.1.1
  DHCP Server . . . . . . . . . . . : 192.168.1.1
  DNS Servers . . . . . . . . . . . : 8.8.8.8
  8.8.4.4
  Physical Address. . . . . . . . . : 00-1A-2B-3C-4D-5E
  DHCP Enabled. . . . . . . . . . . : Yes

# Linux - ip addr (nowoczesne):
ip addr show eth0
2: eth0:  mtu 1500 qdisc fq_codel
  link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff
  inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0
  inet6 fe80::21a:2bff:fe3c:4d5e/64 scope link

# Linux - ifconfig (przestarzałe, wymaga net-tools):
ifconfig eth0

ipconfig (Windows) i ip addr (Linux) to podstawowe narzędzia do wyświetlania konfiguracji interfejsów sieciowych.

Różnice: ipconfig pokazuje więcej informacji DHCP (serwer, dzierżawa). ip addr pokazuje flagi interfejsu (UP, LOWER_UP) i adresy IPv6. ipconfig /flushdns czyści lokalny cache DNS (Windows).

Brak flagi LOWER_UP to najszybszy test warstwy 1.

ipconfig /all to najczęściej używane polecenie w Windows do diagnostyki sieci.

Pokazuje: adres IP (IPv4 i IPv6), maskę podsieci, bramę domyślną, serwery DNS, serwer DHCP, adres MAC (Physical Address), czas dzierżawy DHCP. ipconfig /release zwalnia adres, ipconfig /renew odświeża go. ipconfig /displaydns pokazuje lokalny cache DNS, ipconfig /flushdns czyści go.

W Linux ip (z pakietu iproute2) zastępuje przestarzałe ifconfig, route i arp. ip addr show [interfejs] - adresy IP, ip link show - interfejsy, ip neigh show - tablica ARP, ip route show - tablica routingu.

W przeciwieństwie do Windows, Linux nie ma jednego polecenia pokazującego wszystko - trzeba użyć kilku rozdzielnych komend.

Flagi interfejsu w Linux: UP (aktywny), LOWER_UP (sygnał nośny), BROADCAST (obsługa broadcast), MULTICAST (obsługa multicast).

Jeśli brak LOWER_UP, oznacza to brak fizycznego połączenia (kabel odłączony, switch wyłączony).

W Windows odpowiednikiem jest sprawdzenie diod sieciowych lub statusu karty w Panelu sterowania.

22/30 route print (Windows) i ip route (Linux)
# Windows - route print:
route print -4
# Wyświetla tylko trasy IPv4 (bez IPv6)
# route print bez opcji pokazuje IPv4 i IPv6

# Windows - dodanie trasy statycznej:
route add 10.0.0.0 mask 255.255.255.0 192.168.1.254
route add -p 10.0.0.0 mask 255.255.255.0 192.168.1.254
# -p: trwała (persistent) - po restarcie nie znika

# Windows - usunięcie trasy:
route delete 10.0.0.0

# Linux - ip route (wyświetlenie):
ip route show
default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10

# Linux - dodanie trasy statycznej:
ip route add 10.0.0.0/24 via 192.168.1.254 dev eth0

# Linux - usunięcie trasy:
ip route del 10.0.0.0/24

route i ip route to narzędzia do wyświetlania i modyfikowania lokalnej tablicy routingu.

W Windows opcja -p tworzy trasę trwałą (przechowywaną w rejestrze).

W Linux trasy dodane przez ip route są tymczasowe - znikają po restarcie.

Aby były trwałe, trzeba dodać je do pliku konfiguracyjnego (/etc/network/interfaces lub /etc/netplan/*.yaml).

Trasa 0.0.0.0/0.0.0.0 to domyślna.

Trasa 127.0.0.0/255.0.0.0 do 127.0.0.1 to loopback.

Trasy z maską 255.255.255.255 to trasy hosta.

Tablica routingu hosta jest kluczowa dla zrozumienia, jak system przekazuje pakiety.

W Windows route print pokazuje kolumny: Network Destination (sieć docelowa), Netmask (maska), Gateway (brama), Interface (interfejs wyjściowy), Metric (metryka).

W Linux ip route show używa notacji CIDR (192.168.1.0/24) zamiast maski. 'proto dhcp' oznacza trasę z DHCP, 'proto kernel' z jądra, 'proto static' - dodaną ręcznie. 'scope link' oznacza trasę do sieci bezpośrednio podłączonej. 'metric 100' to koszt trasy - przy wielu trasach wybierana jest z niższą metryką.

W praktyce administracyjnej ręczne dodawanie tras na hoście jest rzadko potrzebne (wszystko idzie przez bramę domyślną).

Wyjątki: (1) VPN - trasy do sieci VPN są dodawane przez klienta VPN, (2) wiele interfejsów z trasami do różnych sieci, (3) routing między sieciami na hoście (Linux jako router).

W przypadku Linux jako routera, trzeba włączyć przekazywanie IP: sysctl net.ipv4.ip_forward=1.

23/30 nmap - skanowanie portów i usług
Uwaga: Skanowanie sieci bez zgody właściciela jest nielegalne w wielu krajach. nmap należy używać wyłącznie na własnych urządzeniach lub za pisemną zgodą.
# nmap - podstawowe skanowanie:
nmap 192.168.1.1
Nmap scan report for 192.168.1.1
PORT  STATE  SERVICE
22/tcp  open  ssh
80/tcp  open  http
443/tcp open  https

# nmap - skanowanie zakresu portów:
nmap -p 1-1000 192.168.1.1

# nmap - wykrywanie wersji usług:
nmap -sV 192.168.1.1
PORT  STATE  SERVICE  VERSION
22/tcp  open  ssh  OpenSSH 9.2p1 Debian 2
80/tcp  open  http  Apache httpd 2.4.57
443/tcp open  https  Apache httpd 2.4.57

# nmap - wykrywanie systemu operacyjnego:
nmap -O 192.168.1.1
Device type: general purpose
Running: Linux 5.X
OS CPE: cpe:/o:linux:linux_kernel:5
OS details: Linux 5.0 - 5.14

nmap (Network Mapper) to zaawansowane narzędzie do skanowania portów, wykrywania usług i systemów operacyjnych.

Jest standardem w diagnostyce bezpieczeństwa sieci.

nmap oferuje kilkanaście typów skanowania. Uwaga: nmap nie jest domyślnie zainstalowany - wymaga instalacji (apt install nmap).

Najważniejsze: -sS (SYN half-open, domyślny, najszybszy), -sT (TCP Connect, pełny handshake, używany gdy brak uprawnień root), -sU (UDP scan, wolny, bo UDP nie ma potwierdzenia), -sn (ping sweep, dawniej -sP, sprawdzenie, które hosty odpowiadają), -sV (wykrywanie wersji usług), -O (wykrywanie OS).

nmap jest dostępny w Linux (apt install nmap) i Windows (nmap.org).

Wynik nmap pokazuje: port, stan (open/filtered/closed), usługa (wg bazy nmap-services). open = port otwarty i nasłuchuje, filtered = firewall blokuje skanowanie (brak odpowiedzi), closed = port zamknięty (odpowiedź RST). Duża liczba filtered portów sugeruje firewall.

Wersja Windows wymaga WinPcap lub Npcap do surowego dostępu do sieci. nmap -sS w Windows może być ograniczone - zaleca się -sT lub użycie Linux. nmap -A łączy -sV, -O, -sC (skrypty domyślne) i traceroute - najbardziej zaawansowany pojedynczy test.

24/30 telnet i nc - testowanie portów TCP
# telnet - test portu (Windows i Linux):
telnet 192.168.1.1 80
# Jeśli połączy (czarny ekran lub puste okno) - port otwarty
# Jeśli "Connecting..." i błąd - port zamknięty lub firewall
# Po połączeniu można ręcznie wysłać zapytanie HTTP:
GET / HTTP/1.1
Host: 192.168.1.1
# Odpowiedź serwera HTTP pojawi się na ekranie

# nc (netcat) - Linux:
nc -zv 192.168.1.1 22
# -z: zero I/O (tylko test), -v: verbose
# Output: Connection to 192.168.1.1 22 port [tcp/ssh] succeeded!

# nc - skanowanie zakresu portów:
nc -zv 192.168.1.1 20-80
# Sprawdza porty 20-80 na 192.168.1.1

# nc - nasłuchiwanie na porcie (serwer testowy):
nc -l -p 1234
# Nasłuchuje na porcie 1234, wysyła odebrane dane na stdout

telnet i nc (netcat) to narzędzia do testowania otwarcia portów TCP i komunikacji z usługami na poziomie protokołu.

W Windows 10/11 telnet nie jest domyślnie zainstalowany.

Należy go włączyć: Panel sterowania -> Programy -> Włącz funkcje systemu Windows -> Klient Telnet.

Alternatywnie: Test-NetConnection 192.168.1.1 -Port 80 w PowerShell.

W nowych wersjach Windows (10 1809+) dostępne jest też narzędzie Test-NetConnection w PowerShell.

nc (netcat) jest bardziej zaawansowane: obsługuje UDP (-u), skanowanie zakresu portów, nasłuchiwanie, przesyłanie plików, tworzenie tuneli. nc -l -p 1234 < plik.txt udostępnia plik przez sieć (z drugiej strony: nc 192.168.1.10 1234 > plik.txt). nc -e /bin/bash -l -p 1234 tworzy backdoor (uwaga: ogromne ryzyko bezpieczeństwa!).

telnet jest historycznie protokołem do zdalnego dostępu (port 23), ale ze względu na brak szyfrowania został wyparty przez SSH.

Współcześnie telnet jest używany wyłącznie jako narzędzie do testowania portów TCP. telnet łączy się z dowolnym portem TCP i po połączeniu przekazuje stdin/stdout do gniazda.

Można ręcznie wysłać dowolne zapytanie protokołowe (HTTP, SMTP, POP3) i zobaczyć odpowiedź serwera.

W PowerShell (Windows) odpowiednikiem jest Test-NetConnection (tnc). tnc 8.8.8.8 -Port 443 -Detailed testuje połączenie i pokazuje szczegółowe informacje (Route, Ping, Traceroute). tnc google.com -TraceRoute wykonuje traceroute.

25/30 curl i wget - testowanie HTTP/HTTPS
# curl - podstawowe zapytanie HTTP:
curl -I https://google.com
# -I: tylko nagłówki (HEAD request)
HTTP/2 301
location: https://www.google.com/
content-type: text/html; charset=UTF-8
date: Sun, 21 Jun 2026 16:30:00 GMT
server: gws

# curl - szczegółowe informacje:
curl -v https://google.com
# -v: verbose - pokazuje cały dialog TLS, DNS, nagłówki

# curl - ograniczenie czasu:
curl --connect-timeout 5 --max-time 10 https://example.com

# curl - test z innego adresu IP (bind):
curl --interface 192.168.1.10 https://google.com

# wget - pobieranie pliku:
wget https://example.com/file.zip

# wget - testowanie mirroru strony:
wget --spider -r -l 1 https://example.com
# --spider: tylko sprawdza linki (nie pobiera)

curl i wget to narzędzia do pobierania treści z serwerów HTTP/HTTPS.

curl jest bardziej wszechstronny niż wget: obsługuje więcej protokołów (FTP, SFTP, SMB, SMTP), lepszą kontrolę nad zapytaniem, i jest powszechnie używany w automatyzacji (CI/CD, skrypty).

Są również używane do testowania dostępności i wydajności serwisów WWW.

curl jest dostępny w Linux (apt install curl), Windows (od Windows 10 1803 wbudowany w cmd i PowerShell), i macOS (domyślnie). curl -O nazwa_pliku pobiera plik i zapisuje go pod nazwą z URL (lub -o plik.html dla własnej nazwy). curl -u user:pass https://example.com autoryzacja Basic Auth. curl -X POST -d 'klucz=wartosc' https://example.com/api - wysyłanie danych POST.

wget jest prostsze od curl: domyślnie pobiera pliki, obsługuje rekurencyjne pobieranie stron (wget -r), wznawianie przerwanych transferów (-c). wget --spider sprawdza linki bez pobierania treści - użyteczne do testowania, czy strona jest dostępna.

W diagnostyce sieci curl jest używane głównie do: (1) sprawdzenia, czy serwer HTTP odpowiada (kod 200), (2) sprawdzenia nagłówków odpowiedzi (Content-Type, Server, Location przy przekierowaniach), (3) pomiaru czasu odpowiedzi (--write-out '%{time_total}'), (4) testowania IPv4 vs IPv6 (-4, -6), (5) testowania SNI (--resolve). curl -w 'time_total: %{time_total}s\n' -o /dev/null -s https://google.com mierzy całkowity czas odpowiedzi.

W Windows wget nie jest domyślnie dostępny - można go pobrać z gnuwin32, użyć curl lub Invoke-WebRequest w PowerShell.

26/30 tcpdump - analiza ruchu sieciowego
Definicja: tcpdump przechwytuje pakiety sieciowe z interfejsu w trybie promiscuous (nasłuch wszystkich pakietów, nie tylko kierowanych do hosta) i wyświetla je w terminalu lub zapisuje do pliku.
# tcpdump - podstawowe przechwytywanie:
tcpdump -i eth0
# -i: interfejs, bez -i wybiera pierwszy (eth0)

# tcpdump - przechwyć tylko ICMP (np. ping):
tcpdump -i eth0 icmp

# tcpdump - przechwyć ruch HTTP (port 80):
tcpdump -i eth0 port 80

# tcpdump - zapis do pliku (do analizy w Wireshark):
tcpdump -i eth0 -w capture.pcap
# -w: write to file, plik .pcap otwierany w Wireshark

# tcpdump - odczyt z pliku:
tcpdump -r capture.pcap

# tcpdump - szczegółowy (hex + ASCII):
tcpdump -X -c 5
# -X: hex + ASCII, -c 5: przechwyć 5 pakietów i zakończ

Jest dostępne w Linux i macOS.

tcpdump wymaga uprawnień root (sudo).

tcpdump to narzędzie do przechwytywania i analizy pakietów sieciowych w czasie rzeczywistym.

W Windows odpowiednikiem jest npcap z narzędziem tshark (część Wireshark).

Składnia filtrów BPF: [proto] [dir] [type] [value].

Przykład: tcpdump -i eth0 src 10.0.0.5 and tcp port 443.

Dla ICMP pokazuje typ i kod.

Przykładowy wynik: 16:30:00.123456 IP 192.168.1.10.54321 > 142.250.185.78.80: Flags [S], seq 123456, win 65535, options [mss 1460]. Oznacza to: TCP SYN (flag S) z portu 54321 na 80, MSS 1460.

Aby znaleźć GUID interfejsu w Windows: tshark -D.

tcpdump używa wyrażeń BPF (Berkeley Packet Filter) do filtrowania pakietów.

Przykłady: host 192.168.1.1 (tylko z/do hosta), src 192.168.1.1 (tylko źródłowy), dst 192.168.1.1 (tylko docelowy), port 80 (HTTP), portrange 1-1024, icmp (tylko ICMP), tcp (tylko TCP), udp (tylko UDP). Łączenie: and, or, not.

Wynik tcpdump pokazuje: znacznik czasu, protokół (IP, ICMP), adresy źródłowy i docelowy, flagi TCP (S=SYN, . =ACK, P=Push), numery sekwencyjne, okno, opcje.

W Windows tshark (część Wireshark) jest odpowiednikiem tcpdump. tshark -i \Device\NPF_{GUID} -f "port 80" -c 10.

Wireshark oferuje graficzny interfejs do analizy ruchu, dekodowanie protokołów, podążanie za strumieniami, filtry wyświetlania.

Wireshark jest zalecany do analizy offline plików pcap, tcpdump do szybkiego podglądu w terminalu.

27/30 Inne narzędzia systemowe
NarzędzieWindowsLinuxZastosowanie
hostnamehostnamehostnameWyświetla nazwę hosta
nbtstatnbtstat -a IP-NetBIOS over TCP/IP (Windows)
netshnetsh interface show-Zaawansowana konfiguracja sieci (Windows)
ethtool-ethtool eth0Szczegóły karty sieciowej (Linux)
lsof-lsof -i :80Który proces używa portu (Linux)
iperf3iperf3 -s / -ciperf3 -s / -cPomiar przepustowości
whoiswhois domenawhois domenaInformacje o domenie
host-host google.comProste zapytanie DNS (Linux)

Oprócz głównych narzędzi, każdy system oferuje dodatkowe polecenia przydatne w diagnostyce sieci.

lsof -i :80 w Linux pokazuje proces nasłuchujący na porcie 80 (zamiennik ss -tulnp | grep :80). iperf3 mierzy maksymalną przepustowość między dwoma hostami. netsh w Windows umożliwia konfigurację interfejsów, firewalla, Winsock.

Uwaga: ethtool, iperf3, whois nie są domyślnie zainstalowane w większości dystrybucji Linux. Wymagają instalacji: apt install ethtool iperf3 whois.

iperf3 to standardowe narzędzie do pomiaru przepustowości.

Tryb serwer: iperf3 -s (nasłuchuje na porcie 5201).

Tryb klient: iperf3 -c 192.168.1.10 (test przepustowości TCP). iperf3 -u -c 192.168.1.10 -b 100M (test UDP z pasmem 100 Mbps).

Wynik pokazuje: transfer (dane przesłane), bandwidth (przepustowość), retransmisje (dla TCP - im więcej, tym gorsze łącze). iperf3 jest niezastąpiony przy testowaniu łączy WAN, VPN i Wi-Fi.

nbtstat -a IP (Windows) pokazuje tablicę nazw NetBIOS zdalnego hosta.

NetBIOS jest starszym protokołem (poprzednik DNS w sieciach Windows), wciąż używanym w starszych sieciach korporacyjnych. nbtstat -n pokazuje lokalną tablicę nazw NetBIOS. nbtstat -c pokazuje zdalne nazwy NetBIOS w cache'u.

ethtool (Linux) pokazuje szczegółowe informacje o karcie sieciowej: ethtool eth0 (podstawowe: speed, duplex, auto-negocjacja), ethtool -S eth0 (statystyki z karty: tx_packets, rx_errors, collisions), ethtool -s eth0 speed 100 duplex full (zmiana ustawień, rzadko potrzebne).

To najszybszy test warstwy 1 - jeśli ethtool pokazuje 'Link detected: yes' i 'Speed: 1000Mb/s', to kabel i switch są OK.

28/30 Najlepsze praktyki diagnostyczne
  • Zaczynaj od L1 - sprawdź kabel, diody, ethtool (Linux) lub status karty (Windows). Większość problemów to fizyczne (odłączony kabel, wyłączony switch).
  • Ping na bramę domyślną - jeśli nie działa, sprawdź kabel, DHCP, ARP. Jeśli działa, problem jest poza siecią lokalną.
  • Sprawdzaj ARP - arp -a (Windows) lub ip neigh show (Linux) pokaże, czy host docelowy jest osiągalny w L2.
  • Traceroute/mtr dla tras - jeśli ping na cel zdalny nie działa, użyj traceroute lub mtr, aby zobaczyć, na którym hopie pakiet ginie.
  • Sprawdzaj porty - netstat -ano | findstr LISTEN (Windows) lub ss -tuln (Linux) pokaże, które usługi nasłuchują.
  • Testuj DNS - nslookup lub dig sprawdza, czy nazwy się rozwiązują. ping na IP działa, na nazwę nie = problem DNS.
  • Używaj narzędzi pomostowych - telnet/nc do testowania portów, curl do HTTP, iperf3 do przepustowości. Jedno narzędzie rzadko wystarcza.
Dokumentowanie wyników diagnostyki jest kluczowe.

Używaj jednolitego formatu raportów dla zespołu.

Diagnostyka sieci to proces systematycznego eliminowania możliwych przyczyn problemu.

Zaczynając od warstwy fizycznej (L1) i przechodząc wyżej (L2, L3, L4, L7), można szybko zlokalizować usterkę.

Doświadczeni administratorzy często zaczynają od ping na bramę (test L1/L2/L3 jednym poleceniem), potem ping na 8.8.8.8 (test routingu), potem nslookup google.com (test DNS).

Jeśli wszystkie działają - problem jest wyżej (aplikacja, firewall).

Warto pamiętać o rozróżnieniu między 'problemem sieciowym' a 'problemem aplikacji'.

Jeśli ping na serwer działa, ale strona WWW nie ładuje się przez HTTPS (port 443), to nie jest problem sieci L3 - to problem firewalla (blokada portu), certyfikatu TLS, lub samej aplikacji.

Podobnie: jeśli ping na serwer mailowy działa, ale SMTP (port 25) nie - to nie routing, tylko firewall lub usługa.

Zapisuj wyniki ping, traceroute, netstat przed i po zmianach.

W środowisku korporacyjnym warto utrzymywać bazę wiedzy z typowymi problemami i rozwiązaniami.

Narzędzia takie jak SmokePing, Zabbix, LibreNMS mogą automatycznie monitorować opóźnienia i straty pakietów.

29/30 Podsumowanie

Najważniejsze wnioski:

  • ping (ICMP) to najszybsze narzędzie do testowania łączności L3. Różnice składniowe: Linux (-c liczba), Windows (-n liczba). ping na bramę to pierwszy krok diagnostyki.
  • arp i ip neigh pokazują mapowanie IP-MAC w sieci lokalnej. Bez poprawnej tablicy ARP nie ma komunikacji L2. arp -a (Windows) / ip neigh show (Linux) to pierwszy krok po ping.
  • netstat (Windows/Linux) i ss (Linux) wyświetlają aktywne połączenia i nasłuchujące porty. ss jest zalecane w Linux (szybsze, bogatsze opcje). netstat -ano | findstr LISTEN w Windows.
  • traceroute (tracert w Windows) śledzi trasę pakietu przez routery. mtr (Linux) i pathping (Windows) łączą traceroute z ciągłym pomiarem jakości łącza.
  • nmap skanuje porty i wykrywa usługi. nslookup/dig diagnozuje DNS. curl/wget testuje HTTP/HTTPS. tcpdump przechwytuje pakiety do szczegółowej analizy.

Większość narzędzi jest dostępna domyślnie w systemie.

Prezentacja przedstawia kompletny zestaw narzędzi diagnostycznych używanych w codziennej pracy administratora sieci.

Każde narzędzie zostało omówione od strony praktycznej: składnia, opcje, przykłady na Linux i Windows, interpretacja wyników.

Kluczowym wnioskiem jest to, że żadne pojedyncze narzędzie nie wystarcza do pełnej diagnostyki - potrzebny jest zestaw narzędzi i umiejętność łączenia wyników.

Znajomość rutynowej diagnostyki pozwala na szybkie lokalizowanie problemów. Typowy scenariusz: (1) ping 8.8.8.8 (test L3), (2) jeśli nie działa - ping na bramę (test L2), (3) jeśli brama nie odpowiada - arp -a (test L2), (4) jeśli brak wpisu ARP - sprawdź kabel i DHCP.

W ciągu 30 sekund administrator wie, czy problem jest w warstwie 1, 2, czy 3.

Wyjątki (nmap, tcpdump, iperf3, mtr, traceroute, ethtool) wymagają instalacji, ale są standardem w każdym warsztacie administratora.

Warto poświęcić czas na naukę zaawansowanych opcji - szczególnie ss, mtr, dig i tcpdump, które oferują zdecydowanie więcej niż podstawowe użycie.

30/30 Pytania kontrolne
  1. Jakie są główne różnice składniowe w ping między Linux a Windows? Jak sprawdzić TTL w wynikach ping i co on oznacza?
  2. Do czego służy tablica ARP? Jak wyświetlić ją w Windows (arp -a) i Linux (ip neigh show)? Co oznaczają statusy REACHABLE i STALE w ip neigh?
  3. Jak sprawdzić, na którym porcie nasłuchuje serwer WWW (port 80)? Pokaż polecenia w Windows (netstat) i Linux (ss). Jak zidentyfikować proces używający portu?
  4. Jak działa traceroute? Wykorzystaj traceroute (Linux) i tracert (Windows) do zbadania trasy do 8.8.8.8. Zinterpretuj różnice w domyślnym protokole (UDP vs ICMP).
  5. Czym różni się mtr (Linux) od pathping (Windows)? Które narzędzie lepiej nadaje się do długotrwałego monitorowania jakości łącza?
  6. Używając nslookup i dig, sprawdź rekordy A, AAAA, MX dla wybranej domeny. Co oznacza TTL=300 w odpowiedzi DNS?
  7. Opisz scenariusz: ping na 8.8.8.8 działa, ale ping na google.com nie działa. Gdzie jest problem? Które narzędzie użyjesz?

Pytania 4-5 dotyczą trasowania (traceroute, mtr, pathping).

Pytanie 6 dotyczy DNS.

Rozwijanie umiejętności samodzielnego znajdowania informacji w dokumentacji jest kluczowe dla przyszłego administratora.

Pytania kontrolne sprawdzają zrozumienie wszystkich kluczowych narzędzi.

Pytania 1-3 dotyczą podstawowych narzędzi (ping, ARP, netstat/ss).

Pytanie 7 to scenariusz łączący kilka narzędzi - typowy test diagnostyczny w pracy administratora.

Zaleca się wykonanie wszystkich poleceń na rzeczywistym systemie (Linux i Windows) podczas zajęć laboratoryjnych.

W przypadku braku dostępu do Linux, można użyć WSL (Windows Subsystem for Linux) lub Cisco Packet Tracer z urządzeniami CLI.

Packet Tracer ma ograniczone wsparcie dla narzędzi diagnostycznych (ping i traceroute są dostępne).

Odpowiedzi do pytań kontrolnych znajdują się w treści slajdów.

Jeśli student nie może znaleźć odpowiedzi, warto skorzystać z man pages (Linux) lub help (Windows) dla danego narzędzia.