1/55
Wprowadzenie do narzędzi CLI
Cel slajdu: Uporządkowanie podstawowych narzędzi wiersza poleceń (CLI) wykorzystywanych w diagnostyce sieciowej oraz zdefiniowanie metodyki inżynierskiego rozwiązywania problemów.

Prezentacja przedstawia narzędzia CLI do diagnostyki sieci: ping do testowania łączności, ipconfig/ifconfig do konfiguracji interfejsów oraz netstat do statystyk połączeń. Omówiono traceroute/tracert do śledzenia trasy, pathping, nslookup/dig do zapytań DNS oraz arp i route. Przedstawiono praktyczne kombinacje narzędzi i automatyzację diagnostyki za pomocą skryptów.

Narzędzia CLI (Command Line Interface): natywne oprogramowanie konsolowe systemów operacyjnych pozwalające na bezpośrednią, niskopoziomową weryfikację stanu interfejsów, konfiguracji protokołów, tablic trasowania oraz łączności warstwowej bez konieczności stosowania interfejsów graficznych.
Narzędzia wiersza poleceń

Biegłość w posługiwaniu się narzędziami wiersza poleceń (CLI) stanowi absolutny fundament warsztatu każdego inżyniera sieciowego, administratora systemów teleinformatycznych oraz specjalisty cyberbezpieczeństwa. W warunkach awaryjnych, na zdalnych serwerach pozbawionych środowiska graficznego (Headless Servers), w systemach wbudowanych, kontenerach czy w trakcie sesji ratunkowych przez port konsolowy, konsola tekstowa jest często jedynym dostępnym interfejsem diagnostycznym.

Natywne narzędzia diagnostyczne wbudowane w jądra współczesnych systemów operacyjnych (Linux, Windows, macOS) opierają się na bezpośredniej interakcji ze stosem sieciowym TCP/IP oraz protokołami sterującymi, w szczególności protokołem ICMP (RFC 792 dla IPv4 oraz RFC 4443 dla IPv6), protokołem rozwiązywania adresów ARP (RFC 826) oraz systemem domenowych nazw DNS (RFC 1034, RFC 1035). Zapewniają one natychmiastową informację zwrotną o stanie łączności fizycznej, logicznej oraz dostępności usług aplikacyjnych.

W ramach niniejszego modułu akademickiego szczegółowej analizie poddane zostaną narzędzia weryfikacji osiągalności warstwy sieciowej (ping, traceroute, pathping), narzędzia inspekcji konfiguracji interfejsów i tablic routingu (iproute2, ifconfig, ipconfig, route), programy badania stanu gniazd i połączeń transportowych (ss, netstat) oraz wyspecjalizowane narzędzia odpytywania systemu DNS (dig, nslookup). W kolejnych etapach narzędzia te zostaną zestawione z zaawansowanymi analizatorami pakietowymi, takimi jak Wireshark oraz tcpdump.

2/55
Plan prezentacji narzędzi
Cel slajdu: Przedstawienie usystematyzowanego planu wykładu obejmującego przegląd narzędzi warstwy 2–7, ich składnię, interpretację wyników oraz scenariusze rozwiązywania awarii.

Plan prezentacji narzędzi diagnostycznych

  • ping – testowanie łączności i opóźnień
  • ipconfig/ip – konfiguracja interfejsów (ifconfig przestarzały)
  • netstat – statystyki i połączenia (w Linux przestarzały, następca ss)
  • traceroute/tracert – śledzenie trasy
  • pathping – połączenie ping i traceroute (tylko Windows)
  • nslookup/dig – zapytania DNS
  • arp – tablica ARP
  • route – tablica routingu
  • Kombinacje narzędzi w praktyce
  • Automatyzacja skryptami
  • Podsumowanie i pytania
Struktura modułu diagnostycznego: metodyczny ciąg dydaktyczny prowadzący od prostych testów dostępności ICMP przez inspekcję parametrów IP/MAC, śledzenie ścieżki i badanie gniazd sieciowych, aż po diagnostykę DNS i analizę złożonych przypadków awarii (Troubleshooting).
Plan prezentacji

Program niniejszej części kursu został zaprojektowany w taki sposób, aby przeprowadzić uczestnika przez pełny cykl diagnostyki teleinformatycznej zgodnie z modelem warstwowym ISO/OSI oraz stosem TCP/IP. Rozpoczynanie poszukiwania usterki od przypadkowych działań jest najczęstszą przyczyną wydłużania przestojów w sieciach produkcyjnych; profesjonalny inżynier stosuje ustrukturyzowane procedury oparte na precyzyjnie dobranych narzędziach konsolowych.

W pierwszej kolejności omówimy mechanizm działania polecenia ping, kody i typy komunikatów ICMP oraz inżynierską interpretację wskaźników RTT (Round Trip Time) i utraty pakietów (packet loss). Następnie przeanalizujemy narzędzia badania konfiguracji logicznej: różnice między historycznym pakietem net-tools (polecenia ifconfig, stary route, arp) a nowoczesnym standardem iproute2 (polecenie ip) w systemie Linux oraz polecenie ipconfig w systemie Windows wraz z mechanizmami zarządzania dzierżawą DHCP (RFC 2131).

Kolejna sekcja poświęcona jest narzędziom śledzenia ścieżki tranzytowej: zasadzie działania traceroute i tracert w oparciu o pole TTL/Hop Limit oraz zintegrowanemu narzędziu statystycznemu pathping. W dalszej części zgłębimy stan gniazd sieciowych za pomocą ss i netstat, zbadamy tablice mapowania ARP i tablice routingu, a także przeanalizujemy działanie narzędzi dig i nslookup. Całość wieńczą praktyczne procedury rozwiązywania realnych problemów sieciowych: „nie działa Internet”, „wolne łącze” oraz „awaria translacji nazw DNS”.

3/55
Ping – test łączności ICMP
Cel slajdu: Przedstawienie zasady działania narzędzia ping, formatu komunikatów ICMP Echo Request i Echo Reply oraz zastosowania w podstawowych testach osiągalności warstwy L3.

ping – test łączności ICMP

# Windows
ping 8.8.8.8
# Linux/macOS (ciągły ping)
ping -c 10 8.8.8.8

Wysyła ICMP Echo Request, czeka na Echo Reply.

Mierzy czas odpowiedzi (RTT) i utratę pakietów.

Polecenie ping: narzędzie diagnostyczne warstwy sieciowej wysyłające komunikaty ICMP Echo Request (typ 8 dla IPv4, typ 128 dla IPv6) i oczekujące na odpowiedzi ICMP Echo Reply (typ 0 dla IPv4, typ 129 dla IPv6), mierzące czas obiegu pakietu (RTT) i stopę błędów.
Ping ICMP

Polecenie ping jest bezsprzecznie najbardziej uniwersalnym i najczęściej stosowanym narzędziem w diagnostyce sieciowej. Zostało napisane w 1983 roku przez Mike'a Muussa, a jego nazwa nawiązuje do dźwięku echolokacji sonaru okrętowego. Działanie programu opiera się bezpośrednio na protokole kontrolnym ICMP (Internet Control Message Protocol), zdefiniowanym w standardzie RFC 792 dla IPv4 oraz RFC 4443 dla IPv6.

Podczas wywołania polecenia stos sieciowy stacji wysyła pakiet ICMP Echo Request (kod 0, typ 8 w IPv4). Pakiet ten zawiera w swoim nagłówku identyfikator procesu (Identifier) oraz numer sekwencyjny (Sequence Number), a w polu danych znacznik czasu (Timestamp) lub predefiniowany wzorzec bajtowy. Stacja docelowa, po odebraniu poprawnego żądania i zweryfikowaniu sumy kontrolnej, ma obowiązek odesłać pakiet ICMP Echo Reply (kod 0, typ 0 w IPv4), kopiując do niego identyfikator, numer sekwencyjny oraz ładunek danych odebranego pakietu.

Program nadawczy mierzy różnicę czasu pomiędzy momentem wyemitowania ramki a momentem odebrania odpowiedzi, kalkulując tzw. czas podróży w obie strony – RTT (Round-Trip Time), wyrażany w milisekundach (ms). Poprawna odpowiedź dowodzi, że warstwy 1, 2 i 3 modelu OSI (fizyczna, łącza danych oraz sieciowa) funkcjonują prawidłowo na całej trasie pomiędzy badanymi węzłami, a stos sieciowy odbiorcy jest aktywny i zdolny do przetwarzania pakietów IP.

4/55
Przydatne opcje polecenia ping
Cel slajdu: Zapoznanie z zaawansowanymi parametrami wywołania polecenia ping w systemach Windows i Linux oraz ich wykorzystaniem w testach obciążeniowych i MTU.

Przydatne opcje polecenia ping

# Liczba pakietów (Linux/macOS)
ping -c 20 8.8.8.8
# Interwał między pakietami (domyślnie 1s)
ping -i 0.2 8.8.8.8
# Rozmiar pakietu (MTU test)
ping -M do -s 1472 8.8.8.8
# Windows: ciągły ping
ping -t 8.8.8.8
Zaawansowane przełączniki ping: parametry CLI kontrolujące liczbę pakietów (-c / -n), rozmiar ładunku (-s / -l), interwał czasowy (-i), znacznik braku fragmentacji (-M do / -f) oraz wymuszenie wersji protokołu (-4 / -6).
Opcje ping

Domyślne wywołanie polecenia ping różni się zasadniczo pomiędzy systemami operacyjnymi: w środowisku Microsoft Windows program domyślnie wysyła dokładnie 4 pakiety i kończy działanie, podczas gdy w systemach z rodziny Linux pętla pomiarowa działa nieskończenie, aż do przerwania kombinacją klawiszy Ctrl+C. Inżynier sieci powinien biegle posługiwać się parametrami konfiguracyjnymi narzędzia na obu platformach.

Do najważniejszych opcji należą: - Liczba pakietów: w systemie Linux parametr -c <liczba> (np. ping -c 10 192.0.2.1), w Windows -n <liczba>. Pozwala to na automatyzację testów w skryptach powłoki. - Testowanie ciągłe w Windows: parametr -t powoduje wysyłanie pakietów bez limitu, co jest niezastąpione podczas monitorowania przełączania tras zapasowych w protokołach STP lub routingu dynamicznym. - Rozmiar bufora danych: w Linux -s <rozmiar> (definiuje liczbę bajtów danych bez 8-bajtowego nagłówka ICMP), w Windows -l <rozmiar> (Buffer Size).

- Badanie MTU i detekcja fragmentacji: kluczowa technika inżynierska. W systemie Windows polecenie ping -f -l 1472 192.0.2.1 (w Linux: ping -M do -s 1472 192.0.2.1) ustawia w nagłówku IPv4 flagę Don't Fragment (DF=1). Ładunek 1472 bajty w połączeniu z 8 bajtami ICMP i 20 bajtami IPv4 daje dokładnie 1500 bajtów (standardowe MTU Ethernetu). Jeśli pakiet napotka łącze o niższym MTU (np. tunel PPPoE lub IPsec o MTU 1492 lub 1450), router odrzuci pakiet i zwróci błąd ICMP Fragmentation Needed, co pozwala natychmiast zidentyfikować problem czarnej dziury MTU.

5/55
Interpretacja wyniku ping
Cel slajdu: Wykształcenie umiejętności precyzyjnej analizy komunikatów zwrotnych narzędzia ping, wartości RTT, pola TTL oraz kodów błędów ICMP.

Interpretacja wyniku polecenia ping

Pinging 8.8.8.8 with 32 bytes of data:
Reply from 8.8.8.8: bytes=32 time=12ms TTL=117
Reply from 8.8.8.8: bytes=32 time=13ms TTL=117
Reply from 8.8.8.8: bytes=32 time=11ms TTL=117
Statistics: Packets: Sent=4, Received=4, Lost=0 (0% loss)
Approximate round trip times: Min=11ms, Max=13ms, Avg=12ms
Analiza odpowiedzi ping: dekompozycja wyniku na czas RTT (min/avg/max/mdev), liczbę bajtów, pole TTL (ujawniające liczbę przeskoków i typ systemu operacyjnego) oraz identyfikację komunikatów błędów: Request timed out, Destination Host Unreachable, TTL expired in transit.
Wynik ping

Prawidłowe odczytanie raportu generowanego przez polecenie ping wymaga zrozumienia każdego parametru prezentowanego na konsoli. Wynik pozytywny zawiera potwierdzenie odebrania danych (np. Reply from 192.0.2.1: bytes=32 time=14ms TTL=54), gdzie kluczowymi wielkościami są czas odpowiedzi oraz wartość TTL.

Wartość TTL (Time to Live) w odebranej odpowiedzi pozwala na oszacowanie liczby routerów na ścieżce powrotnej oraz identyfikację systemu operacyjnego węzła docelowego. Większość systemów inicjuje TTL stałą wartością domyślną: systemy Linux i Android ustawiają początkowy TTL na 64, systemy Microsoft Windows na 128, a urządzenia sieciowe Cisco czy systemy Solaris na 255. Jeśli odebrany pakiet z Windows ma TTL=118, oznacza to, że pakiet przebył dokładnie 128 - 118 = 10 przeskoków routerowych w drodze powrotnej.

Krytyczne znaczenie ma rozróżnienie typowych komunikatów o błędach: 1. Destination Host Unreachable (ICMP typ 3, kod 1): oznacza, że router lokalny lub brama docelowa nie może odnaleźć adresu MAC stacji docelowej (brak odpowiedzi na zapytanie ARP wg RFC 826). Problem tkwi w warstwie 2 segmentu docelowego. 2. Request timed out: pakiet żądania został wyemitowany, lecz w zadanym oknie czasowym (domyślnie 4000 ms) nie nadeszła żadna odpowiedź. Przyczyną może być wyłączony host, brak trasy powrotnej lub zapora sieciowa (firewall) blokująca ruch ICMP Echo Request. 3. TTL expired in transit (ICMP typ 11, kod 0): wartość TTL spadła do zera, co jednoznacznie wskazuje na istnienie pętli routingu (Routing Loop) w sieci.

6/55
Ipconfig – konfiguracja IP w Windows
Cel slajdu: Przedstawienie narzędzia ipconfig w systemie Microsoft Windows, jego kluczowych przełączników oraz procedury odnawiania dzierżawy DHCP i czyszczenia pamięci podręcznej DNS.

ipconfig – konfiguracja IP w Windows

ipconfig
ipconfig /all# szczegóły
ipconfig /release# zwolnij adres DHCP
ipconfig /renew# odnów adres
ipconfig /displaydns# cache DNS
ipconfig /flushdns# wyczyść cache
Polecenie ipconfig: podstawowe narzędzie diagnostyczne systemów Windows wyświetlające bieżące parametry kart sieciowych (IPv4, IPv6, maska, brama, serwery DNS) oraz zarządzające procesem dzierżawy DHCP i buforem rozpoznawania nazw DNS Resolver Cache.
Zrzut ipconfig

W systemach operacyjnych z rodziny Microsoft Windows narzędzie ipconfig stanowi podstawowy punkt wyjścia w każdej procedurze rozwiązywania problemów z łącznością sieciową. Standardowe wywołanie bez parametrów wyświetla podstawowe adresy IPv4, maski podsieci oraz bramy domyślne dla wszystkich aktywnych kart sieciowych.

W profesjonalnej praktyce inżynierskiej stosuje się zaawansowane przełączniki tego polecenia: - ipconfig /all: wyświetla wyczerpujący raport konfiguracyjny, w tym fizyczny adres MAC karty sieciowej, status włączenia klienta DHCP, adresy serwerów DHCP i DNS, adresy serwerów WINS oraz dokładne czasy uzyskania i wygaśnięcia dzierżawy adresowej. - ipconfig /release oraz ipconfig /renew: sekwencja sterująca klientem DHCP wg RFC 2131. Opcja /release wysyła pakiet DHCPRelease do serwera i zwalnia bieżący adres IP, natomiast /renew inicjuje nową wymianę pakietów DHCP (Discover/Request), wymuszając pobranie świeżej konfiguracji z serwera.

- ipconfig /flushdns: czyści lokalną pamięć podręczną klienta rozpoznawania nazw DNS (DNS Resolver Cache). Jest to operacja krytyczna po dokonaniu zmian w rekordach DNS domeny, usuwająca przestarzałe lub błędne wpisy IP powiązane z nazwami mnemonicznymi. - ipconfig /displaydns: wyświetla aktualną zawartość bufora DNS wraz z czasem życia rekordów (TTL), co pozwala zweryfikować, czy komputer nie korzysta ze sfałszowanych wpisów w wyniku ataku DNS Cache Poisoning.

7/55
Ifconfig i ip w systemie Linux
Cel slajdu: Zrozumienie ewolucji narzędzi administracyjnych w systemie Linux: przejście z historycznego pakietu net-tools (ifconfig) do nowoczesnego standardu iproute2 (ip).

ifconfig (przestarzałe) i ip (nowe)

ip addr show# adresy IP
ip link show# interfejsy
ip -s link show eth0# statystyki
ip neigh show# tablica ARP
ip route show# tablica routingu
Zarządzanie interfejsami w Linux: historyczne narzędzie ifconfig operujące na wywołaniach ioctl() zostało zastąpione przez nowoczesny pakiet iproute2 (polecenie ip), wykorzystujący interfejs Netlink jądra Linuksa, obsługujący wieloadresowość, zaawansowany routing i IPv6.
Linux ip commands

W środowiskach systemów Linux przez ponad dwie dekady standardem konfiguracji sieci było polecenie ifconfig, wchodzące w skład pakietu net-tools. Jednak rozwój architektury jądra Linuksa oraz rosnące wymagania nowoczesnych sieci teleinformatycznych obnażyły fundamentalne ograniczenia tego narzędzia. ifconfig bazuje na przestarzałym interfejsie systemowym ioctl(), nie obsługuje wielu adresów IP na jednym interfejsie bez sztucznych aliasów (np. eth0:1), nie radzi sobie poprawnie z przestrzeniami nazw sieciowych (Network Namespaces) oraz posiada ograniczone wsparcie dla protokołu IPv6.

Współczesnym standardem zalecanym we wszystkich nowoczesnych dystrybucjach (Debian, Ubuntu, RHEL, CentOS, Fedora) jest pakiet iproute2, którego sercem jest polecenie ip. Komunikuje się ono bezpośrednio z podsystemem sieciowym jądra za pośrednictwem wydajnego protokołu gniazd Netlink. Polecenie ip jest zorganizowane w logiczne moduły obiektowe: - ip link: zarządza parametrami warstwy łącza danych L2 (włączanie/wyłączanie interfejsu: ip link set eth0 up/down, zmiana MTU, konfiguracja VLAN, adresy MAC). - ip addr (lub ip a): zarządza adresacją warstwy 3 (dodawanie/usuwanie adresów IPv4 i IPv6: ip addr add 192.0.2.10/24 dev eth0). - ip route (lub ip r): wyświetla i modyfikuje tablicę routingu (np. ip route add default via 192.0.2.1). - ip neigh (lub ip n): zarządza tablicą sąsiadów L2 (odpowiednik ARP i NDP).

Polecenie ifconfig jest obecnie uznawane za całkowicie przestarzałe (deprecated) i w wielu minimalnych instalacjach serwerowych nie jest nawet domyślnie zainstalowane. Inżynier sieciowy musi posługiwać się składnią iproute2.

8/55
Netstat – statystyki sieciowe
Cel slajdu: Przedstawienie narzędzi inspekcji połączeń sieciowych netstat i ss, stanów gniazd TCP/UDP oraz powiązania portów z procesami systemowymi.

netstat – statystyki sieci (następca: ss)

Uwaga: w systemie Linux netstat jest przestarzały (pakiet net-tools) – następcą są polecenia ss oraz ip z pakietu iproute2.

netstat -a# wszystkie połączenia i porty nasłuchujące
netstat -n# adresy numeryczne (bez DNS)
netstat -b# Windows – proces (wymaga admin)
netstat -e# statystyki interfejsu
netstat -s# statystyki protokołów
netstat -r# tablica routingu
Narzędzia inspekcji gniazd: netstat oraz jego nowoczesny linuksowy odpowiednik ss (Socket Statistics) prezentują aktywne połączenia sieciowe, otwarte porty nasłuchujące (LISTEN), stany maszyny stanów TCP (RFC 793) oraz powiązane identyfikatory procesów (PID).
Zrzut netstat

Monitorowanie aktywnych połączeń sieciowych oraz identyfikacja otwartych portów nasłuchujących jest kluczowym elementem audytu bezpieczeństwa i rozwiązywania problemów z usługami sieciowymi. Przez lata podstawowym narzędziem realizującym te zadania był program netstat (Network Statistics), dostępny zarówno w systemach Windows, jak i Linux.

W systemie Windows netstat pozostaje podstawowym narzędziem konsolowym. Najczęściej stosowaną kombinacją parametrów jest netstat -ano: - -a: wyświetla wszystkie aktywne połączenia oraz porty nasłuchujące (listening ports), - -n: wymusza prezentację numeryczną adresów IP i numerów portów (wyłącza powolne rozpoznawanie nazw DNS i usług), - -o: wyświetla identyfikator procesu (PID - Process ID) będącego właścicielem danego gniazda, co pozwala skojarzyć port z konkretnym programem w Menedżerze Zadań.

W systemie Linux netstat odczytywał dane parsując pliki tekstowe w wirtualnym systemie plików /proc/net/tcp, co na serwerach obsługujących dziesiątki tysięcy jednoczesnych połączeń prowadziło do drastycznego spadku wydajności i blokowania procesora. Dlatego w Linuksie netstat został oficjalnie zastąpiony przez narzędzie ss (Socket Statistics) z pakietu iproute2. Narzędzie ss pobiera informacje bezpośrednio z jądra przez interfejs Netlink, działając rzędy wielkości szybciej. Standardowe inżynierskie wywołanie to ss -tulpn: - -t (TCP), -u (UDP), -l (tylko porty nasłuchujące), -p (pokaż proces i PID), -n (zapis numeryczny).

9/55
Traceroute – śledzenie trasy pakietów
Cel slajdu: Szczegółowa analiza mechanizmu śledzenia ścieżki pakietu (Hop-by-Hop Path Discovery) oraz różnic implementacyjnych między traceroute w Linux a tracert w Windows.

Śledzenie trasy pakietów: traceroute i tracert

# Windows
tracert google.com
# Linux/macOS
traceroute google.com

Wysyła pakiety z rosnącym TTL (1, 2, 3…). Każdy router na trasie odrzuca pakiet, gdy TTL=0, i wysyła ICMP Time Exceeded.

Śledzenie trasy pakietów: technika diagnostyczna wykrywająca kolejne routery warstwy 3 na ścieżce do węzła docelowego poprzez sukcesywną inkrementację pola TTL w nagłówku IPv4 i rejestrację komunikatów zwrotnych ICMP Time Exceeded (typ 11, kod 0).
Traceroute

Narzędzie śledzenia trasy (w systemach uniksowych znane jako traceroute, a w systemach Microsoft Windows jako tracert) pozwala na zmapowanie pełnej sekwencji routerów pośredniczących w przekazywaniu pakietu od nadawcy do odbiorcy. Zrozumienie wewnętrznego algorytmu działania tego narzędzia jest kluczem do prawidłowej interpretacji wyników pomiarowych.

Algorytm opiera się na manipulacji polem TTL (Time to Live) w nagłówku IPv4 (lub polem Hop Limit w IPv6). Zgodnie ze standardem RFC 791 i RFC 1812 każdy ruter warstwy 3 dekrementuje pole TTL o 1 przed przekazaniem pakietu dalej. Jeśli wartość TTL osiągnie zero, router ma bezwzględny obowiązek porzucić pakiet i odesłać do nadawcy komunikat błędu ICMP Time Exceeded (typ 11, kod 0 wg RFC 792). Adres źródłowy tego komunikatu ICMP ujawnia adres IP danego routera.

Istnieje jednak fundamentalna różnica implementacyjna pomiędzy platformami: - Microsoft Windows (tracert): domyślnie wysyła pakiety ICMP Echo Request (takie same jak w programie ping) ze wzrastającymi wartościami TTL (1, 2, 3...). - Systemy Linux/Unix (traceroute): domyślnie wysyła datagramy UDP kierowane na wysokie, nieużywane porty docelowe (z zakresu 33434 do 33534). Gdy pakiet ostatecznie dotrze do stacji docelowej z wystarczającym TTL, stacja ta odsyła komunikat ICMP Port Unreachable (typ 3, kod 3), co sygnalizuje zakończenie trasy. W Linuksie można wymusić próbkowanie ICMP parametrem -I lub TCP SYN parametrem -T (bardzo przydatne przy pokonywaniu zapór sieciowych).

10/55
Interpretacja wyniku traceroute
Cel slajdu: Przedstawienie metodyki analizy wyjścia programu traceroute/tracert, identyfikacji opóźnień na poszczególnych przeskokach oraz przyczyn pojawiania się gwiazdek (*).

Interpretacja wyniku traceroute

traceroute to google.com (142.250.185.78):
 1 192.168.1.1 1.2 ms 1.5 ms 1.8 ms
 2 10.0.0.1 3.4 ms 3.6 ms 3.9 ms
 3 203.0.113.1 8.2 ms 8.5 ms 8.9 ms
 4 72.14.237.1 12.3 ms 12.8 ms 13.1 ms
 5 142.250.185.78 11.5 ms 11.8 ms 12.0 ms
Raport traceroute: zestawienie numerowanych przeskoków (hops), z których każdy zawiera adres IP/nazwę FQDN routera oraz trzy czasy RTT próbek; gwiazdki (*) oznaczają brak odpowiedzi w zadanym limicie czasu (timeout).
Wynik traceroute

Każdy wiersz raportu generowanego przez polecenie traceroute lub tracert reprezentuje pojedynczy przeskok (hop) w topologii sieciowej. Dla każdego przeskoku program wysyła standardowo trzy niezależne pakiety próbne, raportując trzy czasy odpowiedzi RTT (np. 1 192.168.1.1 1.2 ms 0.9 ms 1.1 ms). Pozwala to na ocenę stabilności łącza i wariancji opóźnień (jitter).

Jednym z najczęstszych źródeł błędnych diagnoz inżynierskich jest obecność gwiazdek (* * *) w raporcie. Wystąpienie gwiazdki oznacza, że w zadanym limicie czasu (domyślnie 4-5 sekund) program nie otrzymał odpowiedzi od routera na danym przeskoku. Zjawisko to może wynikać z dwóch diametralnie różnych przyczyn: 1. Rzeczywista awaria lub czarna dziura routingu: jeśli gwiazdki pojawiają się od pewnego przeskoku aż do końca badania (np. skoki 6, 7, 8... to same gwiazdki), oznacza to utratę łączności, przerwany obwód lub błąd tablicy routingu na routerze skoku 5. 2. Polityka bezpieczeństwa i limitowanie ruchu (Rate Limiting): jeśli gwiazdki pojawiają się na pojedynczym przeskoku (np. skok 4 to * * *), a kolejne przeskoki (skok 5, 6, 7) odpowiadają z normalnymi czasami RTT, łącze działa w pełni sprawnie! Oznacza to jedynie, że router w skoku 4 ma wyłączone generowanie komunikatów ICMP Time Exceeded lub jego procesor sterujący (Control Plane Policing, CoPP) odrzuca pakiety diagnostyczne w celu ochrony przed przeciążeniem.

Należy również pamiętać o zjawisku asymetrii routingu (Asymmetric Routing): pakiety diagnostyczne mogą wędrować do routera inną trasą niż pakiety ICMP Time Exceeded wracające do naszej stacji roboczej.

11/55
Pathping – ping z traceroute
Cel slajdu: Przedstawienie mechanizmu działania zaawansowanego narzędzia diagnostycznego pathping, łączącego śledzenie trasy z długoterminową analizą statystyczną utraty pakietów.

pathping – ping + traceroute (Windows)

pathping google.com

Najpierw traceroute, potem ping do każdego routera na trasie przez dłuższy czas.

Pokazuje, na którym hopie występują największe opóźnienia i utrata pakietów.

Polecenie pathping: wyspecjalizowane narzędzie systemów Microsoft Windows realizujące dwufazowy test łącza: 1) wyznaczenie trasy (jak tracert) oraz 2) wielominutowe próbkowanie każdego routera pośredniego w celu obliczenia dokładnej stopy utraty pakietów (% packet loss).
Zrzut pathping

Narzędzie pathping, unikalne dla systemów operacyjnych z rodziny Microsoft Windows, stanowi potężne rozszerzenie klasycznych programów ping i tracert. O ile zwykły tracert wykonuje jedynie pobieżny test trzech pakietów na przeskok, co uniemożliwia rzetelną ocenę jakości łącza przy fluktuującym obciążeniu, o tyle pathping przeprowadza dogłębną analizę statystyczną rozłożoną w czasie.

Działanie narzędzia dzieli się na dwie wyraźne fazy pomiarowe: 1. Faza 1 (Wykrywanie ścieżki): program wykonuje standardowe trasowanie zbliżone do tracert, identyfikując listę wszystkich routerów pośrednich na trasie do celu. 2. Faza 2 (Próbkowanie statystyczne): przez określony czas (domyślnie około 25 sekund na każdy węzeł, co przy trasie liczącej 10 przeskoków oznacza test trwający blisko 4 minuty) program wysyła serię 100 pakietów ICMP Echo Request do każdego napotkanego routera z osobna oraz do węzła docelowego.

Po zakończeniu testu pathping generuje szczegółową tabelę zawierającą dwie kluczowe kolumny statystyczne: utratę pakietów na łączu pomiędzy węzłami (Link loss) oraz utratę pakietów w samym węźle (Node loss). Pozwala to bezbłędnie zlokalizować, który dokładnie segment łącza lub które konkretne urządzenie w sieci dostawcy usług odpowiada za degradację transmisji, odróżniając przeciążenie interfejsu sieciowego od problemów procesora routera.

12/55
Nslookup – zapytania DNS
Cel slajdu: Przedstawienie narzędzia nslookup, jego trybów pracy (interaktywny i wsadowy) oraz weryfikacji rekordów zasobów DNS (A, AAAA, MX, CNAME, NS, SOA).

nslookup – zapytania DNS

nslookup google.pl
nslookup -type=MX google.pl
nslookup -type=NS google.pl
nslookup 8.8.8.8# reverse lookup
Polecenie nslookup (Name Server Lookup): klasyczne narzędzie diagnostyki systemu DNS (RFC 1034, RFC 1035) dostępne w systemach Windows i Linux, umożliwiające bezpośrednie odpytywanie wskazanych serwerów nazw o konkretne typy rekordów zasobów.
Zrzut nslookup

Prawidłowe funkcjonowanie systemu nazw domenowych DNS (Domain Name System, zdefiniowanego w RFC 1034 i RFC 1035) jest krytycznym warunkiem działania niemal każdej usługi sieciowej. Awaria DNS objawia się dla użytkownika jako całkowity „brak Internetu”, mimo że warstwa trasowania IP funkcjonuje bez zarzutu. Podstawowym narzędziem diagnostycznym dostępnym powszechnie na platformach Windows i Linux jest program nslookup.

Narzędzie to może pracować w dwóch trybach: 1. Tryb wsadowy (Non-interactive): pojedyncze wywołanie z linii poleceń, np. nslookup www.example.com (odpytuje domyślny serwer DNS systemu) lub nslookup www.example.com 8.8.8.8 (wymusza odpytanie konkretnego serwera publicznego, co pozwala pominąć ewentualnie uszkodzony serwer lokalny). 2. Tryb interaktywny: uruchamiany przez wpisanie samego polecenia nslookup. Umożliwia przełączanie odpytywanych serwerów (polecenie server <IP>) oraz zmianę filtrowanych typów rekordów za pomocą instrukcji set type=<typ> (lub set q=<typ>).

Kluczowe typy rekordów podlegające weryfikacji to: - set type=A: mapowanie nazwy na adres IPv4, - set type=AAAA: mapowanie nazwy na adres IPv6 (RFC 3596), - set type=MX: adresy serwerów pocztowych (Mail Exchange), - set type=NS: serwery nazw autorytatywne dla danej strefy, - set type=PTR: translacja odwrotna adresu IP na nazwę (Reverse DNS w strefie in-addr.arpa / ip6.arpa).

Warto pamiętać, że w systemach uniksowych nslookup korzysta z własnej wewnętrznej biblioteki resolwera i nie zawsze odzwierciedla działanie systemowej biblioteki gethostbyname() / getaddrinfo().

13/55
Dig – szczegółowe zapytania DNS
Cel slajdu: Szczegółowa analiza profesjonalnego narzędzia diagnostyki DNS dig (Domain Information Groper), jego flag, sekcji odpowiedzi oraz zaawansowanych technik debugowania stref.

dig – szczegółowe zapytania DNS

dig google.pl
dig google.pl A +short# tylko IPv4
dig google.pl AAAA +short# tylko IPv6
dig google.pl MX# rekordy MX
dig google.pl ANY# wszystkie rekordy (obecnie ograniczane, RFC 8482)
Polecenie dig: zaawansowane narzędzie diagnostyczne DNS wchodzące w skład pakietu BIND, oferujące pełną transparentność odpowiedzi protokołu DNS, weryfikację flag nagłówka (QR, AA, TC, RD, RA), kodów RCODE oraz obsługę rozszerzeń EDNS0 i DNSSEC.
Zrzut dig

Podczas gdy nslookup jest narzędziem prostym i powszechnym, standardem w pracy profesjonalnych administratorów i inżynierów sieci w środowiskach uniksowych/linuksowych jest program dig (Domain Information Groper), opracowany w ramach projektu serwera BIND przez organizację ISC (Internet Systems Consortium). Narzędzie to nie interpretuje ani nie upraszcza odpowiedzi serwera, lecz prezentuje surową, pełną strukturę pakietu protokołu DNS zgodnie ze standardami IETF.

Składnia polecenia opiera się na elastycznym schemacie: dig @serwer_dns nazwa_domeny typ_rekordu opcje (np. dig @1.1.1.1 example.com MX +short). Wyjście programu dig dzieli się na czytelne sekcje: - Header: prezentuje status zapytania (np. NOERROR, NXDOMAIN – brak domeny, SERVFAIL) oraz aktywne flagi protokołu (np. aa - Authoritative Answer, rd - Recursion Desired, ra - Recursion Available). - QUESTION SECTION: powtórzenie zapytania wysłanego przez klienta. - ANSWER SECTION: właściwe rekordy zasobów zwrócone w odpowiedzi wraz z ich aktualnym czasem wygaśnięcia TTL w sekundach. - AUTHORITY & ADDITIONAL SECTION: rekordy NS serwerów autorytatywnych oraz ich powiązane adresy IP (Glue Records).

Kluczową zaletą dig jest opcja +trace. W trybie tym dig wykonuje pełną iteracyjną ścieżkę rozwiązywania nazwy od serwerów głównych (Root Hints), przez serwery domen najwyższego poziomu TLD (np. .pl), aż po serwery autorytatywne domeny, ujawniając dokładne miejsce ewentualnego błędu delegacji strefy.

14/55
Tablica ARP – mapowanie IP na MAC
Cel slajdu: Przedstawienie roli pamięci podręcznej protokołu ARP, poleceń jej inspekcji i modyfikacji oraz mechanizmów wykrywania anomalii bezpieczeństwa (ARP Spoofing).

Tablica ARP – mapowanie IP na MAC

# Windows
arp -a
# Linux
ip neigh show
arp -n

Tablica ARP pokazuje mapowanie IP → MAC dla hostów w sieci LAN.

Pamięć podręczna ARP (ARP Table / Cache): struktura danych warstwy sieciowej przechowująca dynamiczne i statyczne powiązania adresów logicznych IPv4 z fizycznymi adresami MAC (RFC 826) w obrębie lokalnego segmentu warstwy 2.
Tablica ARP

Protokół rozwiązywania adresów ARP (Address Resolution Protocol), zdefiniowany w dokumencie RFC 826, odpowiada za translację 32-bitowych adresów logicznych IPv4 na 48-bitowe fizyczne adresy MAC kart sieciowych Ethernet. Ponieważ ciągłe wysyłanie zapytań rozgłoszeniowych ARP Request przed każdą wysyłaną ramką sparaliżowałoby sieć lokalną, każdy system operacyjny utrzymuje pamięć podręczną – tzw. tablicę ARP (ARP Cache).

Do zarządzania tablicą ARP służą dedykowane polecenia konsolowe: - W systemie Windows: polecenie arp -a wyświetla listę wszystkich wpisów przypisanych do poszczególnych interfejsów sieciowych, polecenie arp -d * czyści całą tablicę (wymagane uprawnienia administratora), a arp -s <IP> <MAC> tworzy wpis statyczny. - W systemie Linux: tradycyjne polecenie arp -n z pakietu net-tools zostało zastąpione nowoczesnym poleceniem ip neigh show (lub skrótowo ip n) z pakietu iproute2, które dodatkowo wyświetla dokładny stan osiągalności wpisu (np. REACHABLE, STALE, FAILED).

Wpisy dynamiczne w tablicy ARP podlegają automatycznemu wygasaniu (zazwyczaj po okresie od kilkudziesięciu sekund do kilku minut braku aktywności). Inspekcja tablicy ARP jest kluczowym krokiem podczas wykrywania ataków ARP Spoofing / ARP Poisoning: jeśli dwa różne adresy IP w podsieci (np. brama domyślna i komputer innego użytkownika) posiadają w tablicy dokładnie ten sam fizyczny adres MAC, wskazuje to na aktywny atak typu Man-in-the-Middle (MitM) w segmencie L2.

15/55
Tablica routingu – trasy sieci
Cel slajdu: Przedstawienie struktury tablicy trasowania w stacjach końcowych i routerach, interpretacji trasy domyślnej oraz reguły najdłuższego dopasowania prefiksu (LPM).

Tablica routingu – trasy sieci

# Windows
route print
# Linux
ip route show
route -n

Tablica routingu pokazuje, którędy pakiety wędrują do poszczególnych sieci.

Tablica routingu (Routing Table): baza danych w pamięci jądra systemu operacyjnego (RFC 1812) zawierająca reguły przekazywania pakietów IP do sieci docelowych, określające adres kolejnego skoku (Gateway / Next-Hop), interfejs wyjściowy oraz metrykę kosztu.
Tablica routingu

Każde urządzenie połączone z siecią TCP/IP – zarówno zaawansowany router szkieletowy, jak i zwykły komputer osobisty czy smartfon – podejmuje autonomiczne decyzje o przekazywaniu pakietów w oparciu o własną wewnętrzną tablicę routingu (Forwarding Information Base, FIB), opisaną w standardzie RFC 1812.

Do weryfikacji tablicy trasowania służą polecenia konsolowe: - W systemie Windows: polecenie route print (lub netstat -r). - W systemie Linux: nowoczesne polecenie ip route show (lub ip r), które wyparło przestarzałe polecenie route -n.

Kluczowe elementy wpisu w tablicy routingu obejmują: 1. Network Destination & Netmask (Sieć docelowa i maska): definiuje podsieć docelową w notacji CIDR. 2. Gateway (Brama / Next-Hop): adres IP następnego routera, do którego należy przesłać pakiet. Jeśli wpis wskazuje On-link (lub proto kernel scope link w Linuksie), oznacza to, że sieć jest podłączona bezpośrednio i pakiet trafia do odbiorcy przez protokół ARP. 3. Trasa domyślna (Default Gateway, 0.0.0.0/0): dopasowuje wszystkie pakiety, dla których nie znaleziono bardziej szczegółowej trasy w tablicy. 4. Metric (Metryka): liczba całkowita określająca koszt trasy; przy obecności wielu tras do tego samego celu system wybiera trasę o najniższej metryce.

Algorytm routingu zawsze kieruje się fundamentalną zasadą najdłuższego dopasowania prefiksu (Longest Prefix Match, LPM): trasa bardziej szczegółowa (np. z maską /28 lub /32) ma bezwzględne pierwszeństwo przed trasą ogólniejszą (np. /16 lub trasą domyślną /0), niezależnie od wartości metryki.

16/55
Pytanie – protokół używany przez ping
Cel slajdu: Weryfikacja wiedzy dotyczącej protokołu bazowego narzędzia ping oraz jego umiejscowienia w architekturze warstwowej.

Sprawdź swoją wiedzę

Pytanie: Jaki protokół używa ping?

Odpowiedź: ICMP (Internet Control Message Protocol) – typ 8 (Echo Request) i typ 0 (Echo Reply).

Pytanie kontrolne: Z jakiego protokołu korzysta narzędzie ping? Prawidłowa odpowiedź: ICMP (Internet Control Message Protocol) w IPv4 lub ICMPv6 w IPv6; ping nie korzysta z portów TCP ani UDP.
Pakiet ICMP Echo

Prawidłowa odpowiedź na to pytanie testowe brzmi bezwzględnie: ICMP (Internet Control Message Protocol), opisany w RFC 792 dla IPv4 oraz RFC 4443 dla IPv6.

Błędne opcje odpowiedzi sugerują często protokoły warstwy transportowej, takie jak TCP (Transmission Control Protocol) czy UDP (User Datagram Protocol). Należy wyraźnie podkreślić, że klasyczne narzędzie ping operuje bezpośrednio na protokole ICMP, który jest integralną częścią warstwy sieciowej (protokół IP nr 1 w nagłówku IPv4, protokół nr 58 w nagłówku IPv6). W związku z tym ping nie posiada pojęcia numeru portu źródłowego ani docelowego!

Zrozumienie tego faktu ma kolosalne znaczenie praktyczne w konfiguracji zapór sieciowych (firewall): reguła odblokowująca port TCP 80 lub TCP 443 nie zezwoli na ruch ping, a blokada portów transportowych nie wpłynie na testy ICMP. Aby zezwolić na działanie programu ping, administrator musi jawnie przepuścić komunikaty ICMP Echo Request (typ 8) oraz ICMP Echo Reply (typ 0).

Warto również przeanalizować zachowanie narzędzi pochodnych: narzędzia takie jak hping3 lub nping (z pakietu Nmap) potrafią wysyłać pakiety testowe z nagłówkami TCP SYN lub UDP, co bywa nazywane potocznie „TCP pingiem”. Jednak w rozumieniu kanonicznych standardów systemowych narzędzie ping jest nierozerwalnie tożsame ze standardem RFC 792 i protokołem ICMP. Brak zrozumienia tej różnicy prowadzi do błędnych wniosków podczas audytów bezpieczeństwa sieci.

17/55
Pytanie – znaczenie TTL w traceroute
Cel slajdu: Weryfikacja zrozumienia mechanizmu wykorzystania pola TTL do wykrywania kolejnych przeskoków w traceroute.

Sprawdź swoją wiedzę

Pytanie: Co oznacza TTL=1 w traceroute?

Odpowiedź: Pakiet dotrze tylko do pierwszego routera na trasie. Router odrzuci pakiet (TTL=0) i wyśle ICMP Time Exceeded – stąd znamy jego adres.

Pytanie kontrolne: W jaki sposób traceroute wykorzystuje pole TTL? Prawidłowa odpowiedź: Zwiększa TTL od 1 w górę, aby kolejne routery po wyzerowaniu TTL odsyłały komunikat ICMP Time Exceeded (typ 11, kod 0).
TTL=1 traceroute

Prawidłowa odpowiedź wyjaśnia, że mechanizm działania programu traceroute opiera się na kontrolowanym, sukcesywnym zwiększaniu wartości pola TTL (od wartości 1, przez 2, 3, aż do osiągnięcia celu), w celu sprowokowania każdego kolejnego routera do odesłania komunikatu ICMP Time Exceeded.

Częstym błędem osób początkujących jest przekonanie, że istnieje specjalny protokół „trasowania diagnostycznego”, który w jednym pakiecie pyta sieć o całą ścieżkę. W rzeczywistości architektura IP nie posiada takiego mechanizmu; routery nie informują o swojej obecności, dopóki pakiet nie napotka błędu. Wymuszenie błędu wyzerowania TTL (TTL=0) jest jedynym standaryzowanym sposobem zmuszenia routera pośredniczącego do ujawnienia swojego adresu IP nadawcy.

Warto dodać, że w protokole IPv6 analogiczną rolę pełni pole Hop Limit w połączeniu z komunikatem ICMPv6 Time Exceeded (typ 3, kod 0 wg RFC 4443).

Z punktu widzenia analizy pakietowej w programie Wireshark komunikat ICMP Time Exceeded zawiera w swoim ładunku pełny nagłówek IPv4 oraz pierwsze 8 bajtów oryginalnego pakietu, który uległ przedawnieniu. Pozwala to narzędziu traceroute na skorelowanie odebranego błędu z konkretnym wysłanym zapytaniem próbnym na podstawie numeru sekwencyjnego lub portu UDP, zapewniając precyzyjną identyfikację kolejnych etapów ścieżki.

18/55
Pytanie – czyszczenie cache DNS
Cel slajdu: Weryfikacja znajomości polecenia usuwania zawartości podręcznego bufora DNS w systemie Windows.

Sprawdź swoją wiedzę

Pytanie: Do czego służy ipconfig /flushdns?

Odpowiedź: Czyści lokalny cache DNS. Przydatne, gdy strona nie działa po zmianie rekordu DNS.

Pytanie kontrolne: Jakim poleceniem czyści się pamięć podręczną DNS w Windows? Prawidłowa odpowiedź: ipconfig /flushdns; polecenie usuwa wszystkie zapamiętane wpisy z bufora resolwera DNS.
ipconfig /flushdns

Prawidłową odpowiedzią jest polecenie ipconfig /flushdns. Przełącznik ten instruuje lokalną usługę klienta DNS (DNS Client Service) w systemie Microsoft Windows do natychmiastowego skasowania całej zawartości pamięci podręcznej rozpoznawania nazw (Resolver Cache).

Błędne opcje, takie jak nslookup /flush czy netstat -flush, stanowią nieistniejące kombinacje składniowe. Warto wyjaśnić tło inżynieryjne: system Windows automatycznie zapamiętuje wszystkie rozwiązane zapytania DNS na czas określony przez parametr TTL rekordu. Co więcej, implementuje również tzw. „ujemne buforowanie” (Negative Caching wg RFC 2308) – jeśli zapytanie o domenę zakończyło się błędem NXDOMAIN (brak domeny), system zapamiętuje ten błąd na pewien czas.

W sytuacji, gdy administrator poprawi rekord w strefie DNS serwera, stacja robocza może przez wiele minut nadal zgłaszać brak dostępu do serwisu z powodu przestarzałego wpisu w buforze lokalnym. Wykonanie ipconfig /flushdns wymusza wysłanie świeżego zapytania do serwera autorytatywnego.

W systemach Linux czyszczenie pamięci podręcznej zależy od używanego menedżera sieci i demona DNS: w systemach z systemd-resolved wykonuje się polecenie resolvectl flush-caches (lub starsze systemd-resolve --flush-caches), natomiast przy korzystaniu z demona nscd restartuje się usługę poleceniem systemctl restart nscd. W przeglądarkach internetowych (np. Chrome) istnieje również wewnętrzny bufor DNS czyszczony przez adres chrome://net-internals/#dns.

19/55
Pytanie – różnica między tracert a pathping
Cel slajdu: Weryfikacja zrozumienia różnic pomiędzy natychmiastowym śledzeniem trasy tracert a długoterminową analizą strat pakietów w pathping.

Sprawdź swoją wiedzę

Pytanie: Czym różni się tracert od pathping?

Odpowiedź: tracert tylko pokazuje trasę. pathping najpierw robi traceroute, a potem pinguje każdy router na trasie przez dłuższy czas – pokazuje utratę pakietów na każdym hopie.

Pytanie kontrolne: Jaka jest główna różnica między tracert a pathping? Prawidłowa odpowiedź: tracert szybko pokazuje ścieżkę (3 próby na skok), podczas gdy pathping dodatkowo mierzy długoterminową utratę pakietów (% packet loss) na każdym routerze i łączu.
tracert vs pathping

Prawidłowa odpowiedź akcentuje, że pathping łączy funkcjonalność tracert z zaawansowaną analizą statystyczną utraty pakietów w czasie. O ile tracert kończy badanie w kilka do kilkunastu sekund, wysyłając zaledwie po 3 pakiety próbne na każdy przeskok, o tyle pathping po wstępnym wyznaczeniu trasy przeprowadza kilkuminutowy test obciążeniowy.

Błędne odpowiedzi sugerują często, że pathping bada wyłącznie czas RTT lub że działa w oparciu o protokół TCP. W rzeczywistości oba narzędzia korzystają z protokołu ICMP, jednak pathping wysyła serię 100 pakietów do każdego węzła z osobna, obliczając procentową stopę utraty pakietów (Packet Loss Rate).

Dzięki temu inżynier sieciowy może precyzyjnie wskazać, czy wysoki czas odpowiedzi obserwowany na danym routerze wynika z przeciążenia łącza transmisyjnego (wówczas straty pakietów propagują się na wszystkie kolejne przeskoki), czy jest jedynie artefaktem ograniczenia mocy procesora routera dla ruchu ICMP (wówczas straty występują tylko na tym jednym skoku, a dalsze węzły wykazują 0% strat).

Zastosowanie narzędzia pathping jest szczególnie rekomendowane przy diagnozowaniu problemów z transmisją w czasie rzeczywistym, taką jak telefonia VoIP (SIP/RTP), wideokonferencje czy strumieniowanie wideo. Fluktuacje opóźnień (jitter) i sporadyczna utrata pakietów, niewykrywalne przez szybki test tracert, stają się natychmiast widoczne w zagregowanym raporcie statystycznym pathping, umożliwiając przedstawienie operatorowi telekomunikacyjnemu twardych dowodów naruszenia umowy SLA (Service Level Agreement).

20/55
Pytanie – informacje z netstat
Cel slajdu: Weryfikacja wiedzy o parametrach gniazd sieciowych i połączeń raportowanych przez narzędzie netstat/ss.

Sprawdź swoją wiedzę

Pytanie: Co pokazuje netstat -an?

Odpowiedź: Wszystkie aktywne połączenia TCP i UDP z adresami numerycznymi (bez rozwiązywania nazw DNS).

Pytanie kontrolne: Jakie informacje można uzyskać za pomocą polecenia netstat? Prawidłowa odpowiedź: Listę aktywnych połączeń TCP/UDP, otwarte porty nasłuchujące (LISTEN), stany połączeń, powiązane procesy (PID) oraz statystyki interfejsów.
netstat -an

Prawidłowa odpowiedź wskazuje na pełny stan warstwy transportowej i gniazd sieciowych systemu: aktywne sesje TCP i UDP, adresy IP i porty lokalne oraz zdalne, stan maszyny stanów TCP (np. ESTABLISHED, LISTENING, TIME_WAIT, CLOSE_WAIT) oraz powiązane identyfikatory procesów systemowych (PID).

Błędne odpowiedzi sugerują, że netstat służy do konfiguracji adresów IP interfejsów (co jest zadaniem ip / ipconfig) lub do odpytywania baz domenowych DNS (co realizują dig / nslookup). netstat jest narzędziem inspekcyjnym, prezentującym tablice gniazd sieciowych utrzymywane w pamięci jądra.

Z perspektywy analizy bezpieczeństwa opcja netstat -ano w Windows (oraz ss -tulpn w Linux) jest niezastąpiona przy wykrywaniu złośliwego oprogramowania: pozwala natychmiast wykryć podejrzany proces nasłuchujący na nietypowym porcie (np. backdoor na porcie TCP 4444) lub nieautoryzowane sesje wychodzące do serwerów Command and Control (C2).

Warto również zwrócić uwagę na stany maszyny stanów TCP zdefiniowane w RFC 793. Stan TIME_WAIT jest naturalnym stanem oczekiwania na wygaszenie spóźnionych segmentów w sieci (zazwyczaj 2 × MSL, czyli około 60-120 sekund). Z kolei duża liczba połączeń w stanie CLOSE_WAIT wskazuje na błąd programistyczny aplikacji lokalnej, która nie zamyka deskryptorów gniazd po zakończeniu transmisji, co może prowadzić do wyczerpania zasobów serwera.

21/55
Pytanie – zastosowanie narzędzia dig
Cel slajdu: Weryfikacja wiedzy o przeznaczeniu i zaletach narzędzia dig w zaawansowanej diagnostyce systemu DNS.

Sprawdź swoją wiedzę

Pytanie: Do czego służy dig?

Odpowiedź: Domain Information Groper – zaawansowane narzędzie do zapytań DNS. Pokazuje pełną odpowiedź (Question, Answer, Authority, Additional).

Pytanie kontrolne: Do czego służy narzędzie dig? Prawidłowa odpowiedź: Do szczegółowego odpytywania serwerów DNS o rekordy zasobów (A, AAAA, MX, NS, CNAME) z prezentacją pełnych nagłówków i flag odpowiedzi protokołu DNS.
Zrzut dig

Poprawna odpowiedź precyzuje, że dig (Domain Information Groper) służy do zaawansowanego i szczegółowego odpytywania serwerów DNS o wszelkie typy rekordów zasobów, stanowiąc narzędzie wzorcowe w diagnostyce protokołu DNS (RFC 1034, RFC 1035).

Błędne opcje sugerują często, że dig służy do skanowania portów (co jest domeną Nmap), podsłuchiwania pakietów (Wireshark/tcpdump) lub konfiguracji routingu (ip route). Główną zaletą dig nad prostszym nslookup jest jego pełna transparentność: narzędzie nie modyfikuje odebranych danych i prezentuje surowe flagi nagłówka protokołu, takie jak flaga aa (odpowiedź autorytatywna) czy flaga tc (obcięcie pakietu z powodu przekroczenia limitu 512 bajtów w tradycyjnym UDP).

W inżynierii bezpieczeństwa narzędzie dig jest niezastąpione przy weryfikacji rozszerzeń bezpieczeństwa DNSSEC (RFC 4033). Użycie przełącznika +dnssec pozwala na inspekcję podpisów kryptograficznych RRSIG oraz kluczy DNSKEY, co pozwala potwierdzić autentyczność i integralność rekordów pobieranych z globalnego drzewa domenowego.

W praktyce rozwiązywania incydentów sieciowych kluczowe znaczenie ma opcja dig +short, która zwraca wyłącznie czyste rekordy IP (przydatne w automatyzacji skryptowej), oraz dig -x <IP>, wykonujące zapytanie Reverse DNS (PTR) w celu identyfikacji nazwy serwera na podstawie adresu numerycznego. Ponadto flaga +norecurse pozwala na bezpośrednie testowanie odpowiedzi z serwerów autorytatywnych z pominięciem pamięci podręcznej resolwera lokalnego.

22/55
Pytanie – tablica ARP
Cel slajdu: Weryfikacja rozumienia roli tablicy ARP i relacji pomiędzy adresami warstwy 3 a warstwy 2.

Sprawdź swoją wiedzę

Pytanie: Co to jest tablica ARP?

Odpowiedź: Tablica mapująca adresy IP na adresy MAC w sieci LAN. Przechowuje wpisy dynamiczne (uczone przez ARP) i statyczne (ręcznie dodane).

Pytanie kontrolne: Co zawiera tablica ARP? Prawidłowa odpowiedź: Mapowanie logicznych adresów IPv4 na fizyczne adresy MAC kart sieciowych w lokalnym segmencie sieci L2 (RFC 826).
IP → ARP → MAC

Prawidłowa odpowiedź wskazuje, że tablica ARP zawiera powiązania pomiędzy logicznymi adresami IPv4 a fizycznymi adresami sprzętowymi MAC stacji roboczych, serwerów i interfejsów routerów znajdujących się w tym samym segmencie warstwy 2 (Broadcast Domain), zgodnie ze standardem RFC 826.

Kardynalnym błędem jest twierdzenie, że tablica ARP zawiera adresy MAC serwerów znajdujących się w zdalnych sieciach (np. w globalnym Internecie). Karta sieciowa stacji nadawczej nigdy nie komunikuje się bezpośrednio z adresem MAC odległego serwera; komunikacja poza sieć lokalną zawsze kierowana jest na adres MAC lokalnej bramy domyślnej (Default Gateway). Dlatego w tablicy ARP nadawcy pojawi się adres MAC bramy, a nie serwera docelowego.

Warto pamiętać o poleceniach zarządzania: w Windows listę wpisów wyświetla arp -a, a w systemie Linux nowoczesne polecenie ip neigh show z pakietu iproute2. Inspekcja tablicy ARP pozwala inżynierowi natychmiast stwierdzić, czy stacja poprawnie komunikuje się z lokalnym przełącznikiem i bramą sieciową.

Z punktu widzenia bezpieczeństwa sieciowego ochrona integralności tablicy ARP realizowana jest na zarządzalnych przełącznikach warstwy 2 za pomocą mechanizmu Dynamic ARP Inspection (DAI). Funkcja ta weryfikuje poprawność każdej ramki ARP pod kątem zgodności z zaufaną bazą przypisań DHCP Snooping Binding Database, natychmiast odrzucając sfałszowane pakiety ARP Gratuitous emitowane przez złośliwe stacje robocze.

23/55
Pytanie – sprawdzanie trasy do serwera
Cel slajdu: Utrwalenie doboru narzędzi do śledzenia trasy pakietów w sieciach IP.

Sprawdź swoją wiedzę

Pytanie: Jak sprawdzić trasę do serwera?

Odpowiedź: traceroute (Linux/macOS) lub tracert (Windows). Pokazuje listę routerów na trasie z opóźnieniami.

Pytanie kontrolne: Za pomocą jakich narzędzi można sprawdzić trasę pakietów do serwera? Prawidłowa odpowiedź: traceroute (Linux/Unix), tracert (Windows) oraz zaawansowane narzędzia mtr i pathping.
traceroute

Prawidłowa odpowiedź obejmuje zestaw narzędzi wykrywania ścieżki tranzytowej: traceroute w systemach z rodziny Unix/Linux, tracert w środowiskach Microsoft Windows oraz narzędzia hybrydowe, takie jak pathping czy mtr (My Traceroute).

Błędne opcje proponują narzędzia takie jak ping (który sprawdza jedynie osiągalność węzła końcowego, nie ujawniając routerów pośrednich), netstat (badający lokalne gniazda i połączenia) czy ipconfig (prezentujący konfigurację interfejsu). Śledzenie trasy wymaga wyspecjalizowanego mechanizmu manipujacego polem TTL/Hop Limit nagłówka pakietu.

W inżynierskiej praktyce operatorskiej traceroute pozwala na natychmiastową lokalizację miejsca awarii tranzytu: ujawnia, w której autonomicznej sieci (AS) dochodzi do zapętlenia pakietów, który węzeł wprowadza anomalne opóźnienia oraz czy ruch kierowany jest optymalną ścieżką wyznaczoną przez protokoły routingu dynamicznego BGP lub OSPF.

Warto pamiętać, że w środowiskach z restrykcyjnymi zaporami ogniowymi (firewalls) pakiety UDP tradycyjnego traceroute lub pakiety ICMP programu tracert mogą być całkowicie blokowane. W takich przypadkach inżynierowie sięgają po zaawansowane narzędzia, takie jak traceroute -T -p 443 (TCP SYN Traceroute) lub program tcptraceroute, które wysyłają pakiety z flagą SYN na otwarty port HTTPS serwera WWW, bez przeszkód pokonując zapory brzegowe.

24/55
Pytanie – badanie utraty pakietów
Cel slajdu: Weryfikacja metodologii pomiaru stopy utraty pakietów (packet loss) w łączach teleinformatycznych.

Sprawdź swoją wiedzę

Pytanie: Jak sprawdzić utratę pakietów?

Odpowiedź: ping – na końcu wyniku: „Lost = 0 (0% loss)". Dłuższy test: ping -c 100 – statystyki są bardziej wiarygodne.

Pytanie kontrolne: Jak sprawdzić utratę pakietów na łączu? Prawidłowa odpowiedź: Wysyłając serię pakietów testowych za pomocą ping z określoną liczbą prób (np. ping -c 100 w Linux lub ping -n 100 w Windows) bądź stosując narzędzia mtr i pathping.
Utrata pakietów

Prawidłowa odpowiedź wskazuje na statystyczne próbkowanie łącza serią pakietów przy użyciu polecenia ping z parametrem liczby powtórzeń (np. ping -c 100 192.0.2.1 w Linux lub ping -n 100 192.0.2.1 w Windows) lub narzędzi ciągłej analizy statystycznej, takich jak pathping czy mtr.

Pojedynczy test składający się z 4 pakietów (domyślny w Windows) jest całkowicie niemiarodajny: utrata 1 pakietu na 4 daje raport o 25% strat, co może być przypadkowym zjawiskiem związanym ze wstępnym zapytaniem ARP. Dopiero próba licząca 100 lub 1000 pakietów pozwala obliczyć rzeczywistą stopę utraty pakietów (Packet Loss Rate) z precyzją wymaganą w ocenie umów SLA.

Z perspektywy inżynierskiej utrata pakietów na poziomie powyżej 1% jest krytyczna dla aplikacji czasu rzeczywistego (VoIP, telekonferencje), powodując zrywanie głosu i artefakty wideo. W protokole TCP (RFC 793) utrata pakietu wyzwala algorytmy kontroli przeciążenia (Congestion Control wg RFC 5681), drastycznie redukując okno nadawcze cwnd i ograniczając przepustowość łącza nawet o kilkadziesiąt procent.

W diagnostyce zaawansowanej stosuje się również dedykowane generatory ruchu sieciowego, takie jak iperf3, które potrafią badać utratę pakietów pod zdefiniowanym obciążeniem w protokole UDP (np. iperf3 -u -b 50M -c <serwer>). Pozwala to na precyzyjne odróżnienie strat wynikających z fizycznych błędów transmisyjnych (bit errors) od strat spowodowanych przepełnieniem kolejek buforowych switcha (congestion drops).

25/55
Pytanie – pomiar opóźnienia sieci
Cel slajdu: Utrwalenie pojęć związanych z pomiarem opóźnienia RTT i interpretacją metryk czasowych.

Sprawdź swoją wiedzę

Pytanie: Jak zbadać opóźnienie sieci?

Odpowiedź: ping do serwera docelowego – wynik pokazuje czas odpowiedzi (RTT) w ms. Min, Max, Avg – do analizy zmienności.

Pytanie kontrolne: Za pomocą jakiego parametru określa się opóźnienie sieci w wyniku polecenia ping? Prawidłowa odpowiedź: Czas podróży w obie strony – RTT (Round Trip Time), raportowany w milisekundach (ms) jako wartości min, avg, max i mdev.
Opóźnienie sieci

Prawidłową odpowiedzią jest RTT (Round-Trip Time), wyrażany w milisekundach (ms). Wartość ta mierzy sumaryczny czas potrzebny na przebycie trasy od stacji nadawczej do odbiorcy oraz powrót odpowiedzi ICMP Echo Reply do nadawcy.

Błędne interpretacje mylą czas RTT z wartością TTL (która jest licznikiem przeskoków, a nie czasem w sekundach) lub z pasmem transmisyjnym (Bandwidth). Narzędzie ping w systemie Linux po zakończeniu serii wyświetla precyzyjne podsumowanie statystyczne: rtt min/avg/max/mdev = 12.1/15.4/22.8/2.1 ms. Każda z tych wartości niesie kluczową informację inżynierską:

- min: fizyczne minimalne opóźnienie propagacji sygnału w medium (zależne od prędkości światła w światłowodzie, wynoszącej ok. 200 000 km/s, czyli ok. 5 ms na każde 1000 km w dwie strony), - avg: średnie opóźnienie transmisyjne, - max: maksymalne zarejestrowane opóźnienie, - mdev (mean deviation): odchylenie standardowe opóźnienia, będące bezpośrednią miarą fluktuacji opóźnień (jitter). Wysoka wartość mdev jednoznacznie sygnalizuje buforowanie pakietów w przepełnionych kolejkach routerów (zjawisko Bufferbloat).

Warto również przeanalizować relację pomiędzy czasem RTT a wydajnością transferu w protokole TCP. Zgodnie ze wzorem Mattisa na przepustowość TCP, maksymalna prędkość pobierania danych jest odwrotnie proporcjonalna do czasu RTT pomnożonego przez pierwiastek ze stopy utraty pakietów. Z tego powodu łącze o wysokim opóźnieniu RTT (np. łącze satelitarne geostacjonarne o RTT rzędu 600 ms) drastycznie ogranicza prędkość transmisji pojedynczego strumienia danych, niezależnie od nominalnej przepustowości łącza.

26/55
Pytanie – znaczenie Request timed out
Cel slajdu: Weryfikacja rozumienia technicznych przyczyn występowania błędu przekroczenia limitu czasu w narzędziach ICMP.

Sprawdź swoją wiedzę

Pytanie: Co oznacza „Request timed out" w ping?

Odpowiedź: Host nie odpowiedział w zadanym czasie (domyślnie 4s). Może oznaczać: brak łączności, firewall blokuje ICMP, host nie istnieje.

Pytanie kontrolne: Co oznacza komunikat „Request timed out” w poleceniu ping? Prawidłowa odpowiedź: Pakiet żądania został wyemitowany, lecz stacja nadawcza nie otrzymała odpowiedzi w wyznaczonym oknie czasowym (host wyłączony, zapora filtrująca ICMP lub brak trasy powrotnej).
Timeout

Prawidłowa odpowiedź precyzuje, że komunikat „Request timed out” (Upłynął limit czasu żądania) oznacza, iż komputer wysłał pakiet ICMP Echo Request, lecz w zdefiniowanym oknie oczekiwania (standardowo 4000 ms) nie zarejestrował żadnego pakietu odpowiedzi.

Kluczowe jest odróżnienie tego komunikatu od innych błędów: - Nie jest to tożsame z błędem Destination Host Unreachable, w którym router jawnie odsyła komunikat informujący, że cel jest nieosiągalny w warstwie 2. W przypadku Request timed out nie przychodzi absolutnie żaden pakiet zwrotny.

Inżynier sieciowy powinien przeanalizować trzy fundamentalne przyczyny tego stanu: 1. Urządzenie docelowe jest wyłączone, odłączone od medium fizycznego lub uległo zawieszeniu. 2. Zapora sieciowa (firewall) na stacji docelowej lub routerze pośrednim celowo blokuje ruch ICMP Echo Request bądź ICMP Echo Reply (tzw. ciche odrzucenie – packet drop). 3. Brak trasy powrotnej (Asymmetric Routing Failure): pakiet z zapytaniem dotarł do serwera docelowego, lecz serwer ten ma błędnie skonfigurowaną bramę domyślną i nie potrafi odesłać odpowiedzi do naszej podsieci.

W diagnostyce laboratoryjnej w programie Wireshark błąd ten jest widoczny jako wysłana ramka ICMP Echo Request bez odpowiadającej jej ramki Echo Reply o tym samym numerze sekwencyjnym. Wykonanie równoległego testu poleceniem tcping lub Test-NetConnection -Port 80 pozwala inżynierowi zweryfikować, czy host docelowy rzeczywiście jest nieaktywny, czy jedynie filtruje protokół ICMP, pozostając w pełni osiągalnym dla ruchu aplikacyjnego.

27/55
Pytanie – diagnostyka działania DNS
Cel slajdu: Weryfikacja umiejętności odizolowania problemu translacji nazw domenowych od problemów osiągalności warstwy sieciowej IP.

Sprawdź swoją wiedzę

Pytanie: Jak sprawdzić, czy DNS działa?

Odpowiedź: nslookup google.pl – jeśli zwraca adres IP, DNS działa. ping 8.8.8.8 (działa) vs ping google.pl (nie działa) = problem z DNS.

Pytanie kontrolne: Jak sprawdzić, czy brak działania stron WWW wynika z awarii DNS? Prawidłowa odpowiedź: Wykonać ping na publiczny adres IP (np. ping 8.8.8.8) i porównać z pingiem na nazwę domenową (np. ping google.com) oraz przetestować resolwer za pomocą nslookup lub dig.
Diagnostyka DNS

Prawidłowa procedura diagnostyczna polega na zestawieniu testu osiągalności numerycznego adresu IP z testem nazwy symbolicznej FQDN. Jeśli polecenie ping 8.8.8.8 (lub inny publiczny adres IP) kończy się pełnym sukcesem, a wywołanie ping google.com zwraca natychmiast błąd „Nie można znaleźć hosta” (Could not find host), inżynier uzyskuje stuprocentową pewność, że warstwa IP funkcjonuje poprawnie, a źródłem problemu jest wyłącznie usługa DNS.

Błędne podejście polega na restartowaniu kart sieciowych lub routerów bez uprzedniej weryfikacji warstwowej. W kolejnym kroku inżynier odpytuje bezpośrednio skonfigurowany serwer DNS za pomocą polecenia nslookup example.com lub dig example.com.

Jeśli lokalny serwer DNS nie odpowiada, należy zweryfikować plik /etc/resolv.conf w systemie Linux lub właściwości protokołu IPv4 w systemie Windows. Wykonanie zapytania bezpośrednio do znanego publicznego resolwera (np. nslookup example.com 1.1.1.1) pozwala definitywnie potwierdzić, czy awaria dotyczy lokalnego serwera nazw organizacji, czy globalnej infrastruktury.

W środowiskach korporacyjnych częstym źródłem anomalii jest również tzw. „zatrucie bufora DNS” (DNS Cache Poisoning) lub lokalne pliki konfiguracyjne hosts (w Windows: C:\Windows\System32\drivers\etc\hosts, w Linux: /etc/hosts). Plik hosts ma bezwzględne pierwszeństwo przed serwerami DNS w bibliotekach systemowych, przez co błędny lub złośliwy wpis w tym pliku może całkowicie zablokować dostęp do witryny mimo sprawnego serwera nazw.

28/55
Pytanie – zastosowanie polecenia route
Cel slajdu: Utrwalenie znajomości narzędzi inspekcji i statycznej modyfikacji tablic routingu w systemach operacyjnych.

Sprawdź swoją wiedzę

Pytanie: Do czego służy polecenie route?

Odpowiedź: Wyświetla i modyfikuje tablicę routingu IP. route print (Windows), ip route show (Linux).

Pytanie kontrolne: Do czego służy polecenie route w systemie Windows? Prawidłowa odpowiedź: Do wyświetlania (route print), dodawania (route add) oraz usuwania (route delete) statycznych tras routingu w tablicy trasowania systemu operacyjnego.
route print

Prawidłowa odpowiedź precyzuje, że polecenie route (w szczególności route print w Windows oraz ip route w Linux) służy do wyświetlania oraz manualnego modyfikowania wpisów w tablicy routingu jądra systemu operacyjnego.

Błędne odpowiedzi mylą polecenie route z narzędziami śledzenia ścieżki (traceroute) lub poleceniami konfiguracji interfejsu L2. W systemie Windows kluczowymi wariantami są: - route print: prezentuje całą tablicę trasowania IPv4 i IPv6, listę interfejsów sieciowych oraz stałe trasy statyczne, - route add <sieć> mask <maska> <brama>: dodaje tymczasową trasę statyczną do pamięci operacyjnej, - route add -p ...: dodaje trasę trwałą (persistent), zapisaną w rejestrze systemowym i przywracaną po restarcie komputera.

Umiejętność modyfikacji tablicy routingu jest krytyczna m.in. w środowiskach wielokartowych (Multihomed Hosts) oraz przy pracy z tunelami VPN, gdzie administrator musi skierować ruch do sieci firmowej przez interfejs tunelu, zapobiegając jednoczesnemu przejęciu całego ruchu internetowego (funkcja Split Tunneling).

Warto zwrócić uwagę na flagi tras w wyjściu linuksowego polecenia ip route: atrybut proto kernel oznacza trasy wygenerowane automatycznie przez jądro dla bezpośrednio podłączonych interfejsów, natomiast proto static oznacza wpisy dodane manualnie przez administratora. Z kolei w protokołach dynamicznych (OSPF, BGP) trasy posiadają oznaczenie demona routingu (np. proto bird lub proto zebra).

29/55
Pytanie – odnowienie adresu DHCP
Cel slajdu: Weryfikacja procedury odnawiania parametrów sieciowych pobieranych dynamicznie z serwera DHCP.

Sprawdź swoją wiedzę

Pytanie: Jak odnowić adres DHCP z konsoli?

Odpowiedź: Windows: ipconfig /release && ipconfig /renew. Linux: dhclient -r && dhclient.

Pytanie kontrolne: Jak wymusić odnowienie konfiguracji z serwera DHCP w Windows? Prawidłowa odpowiedź: Wykonując sekwencję ipconfig /release (zwolnienie adresu) a następnie ipconfig /renew (żądanie nowej dzierżawy wg RFC 2131).
ipconfig release renew

Prawidłową odpowiedzią jest sekwencja poleceń ipconfig /release oraz ipconfig /renew. Wykonanie tych poleceń uruchamia standardową procedurę negocjacji protokołu DHCP opisaną w dokumencie RFC 2131.

Pierwsze polecenie (/release) wysyła do serwera DHCP pakiet unicast DHCPRELEASE, informując o rezygnacji ze zwolnionego adresu IP i przestawiając interfejs w stan nieprzypisany. Drugie polecenie (/renew) wysyła pakiet rozgłoszeniowy DHCPREQUEST (lub pełną sekwencję DISCOVER w przypadku braku wcześniejszej dzierżawy), zmuszając serwer DHCP do wygenerowania świeżej oferty adresowej.

W systemach z rodziny Linux analogiczną operację wykonuje się poleceniem klienta DHCP: dhclient -r && dhclient eth0 lub w nowszych dystrybucjach za pośrednictwem menedżera sieci: nmcli connection up id "Nazwa". Procedura ta jest niezastąpiona, gdy stacja robocza pobrała nieprawidłowy adres APIPA (169.254.x.x) z powodu chwilowej niedostępności serwera DHCP w trakcie uruchamiania komputera.

Warto również przeanalizować zachowanie stacji w sytuacji, gdy serwer DHCP nie odpowiada na zapytania: system Windows oraz niektóre dystrybucje Linuksa przypisują wówczas adres z zakresu APIPA (169.254.0.0/16 wg RFC 3927). Adres APIPA pozwala wyłącznie na komunikację z hostami w tym samym segmencie L2, które również pobrały adres APIPA, nie dając możliwości komunikacji z routerem ani Internetem.

30/55
Pytanie – statystyki interfejsu sieci
Cel slajdu: Weryfikacja wiedzy o narzędziach monitorowania liczników błędów ramkowych i pakietowych na interfejsach.

Sprawdź swoją wiedzę

Pytanie: Jak sprawdzić statystyki interfejsu sieciowego?

Odpowiedź: netstat -e (Windows), ip -s link show eth0 (Linux), ethtool -S eth0 (szczegółowe).

Pytanie kontrolne: Za pomocą jakich poleceń można sprawdzić statystyki błędów na interfejsie sieciowym? Prawidłowa odpowiedź: netstat -e w Windows oraz ip -s link lub ethtool w Linux; ujawniają błędy CRC, odrzucone pakiety (drops) i kolizje.
netstat -e

Prawidłowa odpowiedź wskazuje na polecenia inspekcji liczników sprzętowych warstwy łącza danych: netstat -e w systemie Microsoft Windows oraz ip -s link show lub ethtool -S <interfejs> w systemie Linux.

Narzędzia te prezentują szczegółowy rejestr statystyk przesyłania danych (Bytes received/sent) oraz liczników anomalii: - Errors (błędy CRC / Frame alignment): ich obecność jednoznacznie dowodzi problemów w warstwie fizycznej (uszkodzony kabel miedziany, luźna wtyczka RJ-45, zakłócenia elektromagnetyczne EMI lub wadliwy moduł SFP), - Drops / Discards (odrzucone pakiety): informują, że karta sieciowa lub jądro systemu operacyjnego odrzuciło poprawne ramki z powodu przepełnienia buforów odbiorczych (Ring Buffers) pod wpływem gwałtownego przeciążenia ruchem (Microburst), - Collisions (kolizje): ich występowanie w nowoczesnych sieciach z przełącznikami wskazuje na kardynalny błąd konfiguracji dupleksu (Duplex Mismatch: jeden port w trybie Full-Duplex, drugi w Half-Duplex).

Analiza tych liczników pozwala inżynierowi wykryć uszkodzenia infrastruktury kablowej bez konieczności używania drogich mierników fizycznych.

W systemach Linux narzędzie ethtool pozwala na bezpośredni odczyt parametrów fizycznych warstwy L1/L2: polecenie ethtool eth0 wyświetla wynegocjowaną prędkość (np. 1000Mb/s), tryb dupleksu (Full), stan automatycznej negocjacji (Auto-negotiation) oraz fizyczne wykrycie nośnej (Link detected: yes). Weryfikacja tych wartości pozwala natychmiast wykluczyć usterki sprzętowe portu.

31/55
Diagnostyka braku internetu – krok 1
Cel slajdu: Przedstawienie inżynierskiego pierwszego etapu metodyki usuwania usterki braku łączności internetowej zgodnie z modelem warstwowym OSI.

Diagnostyka: „Nie działa internet” – krok 1 (Warstwa fizyczna i lokalny stos)

  1. ping 127.0.0.1 – czy stos TCP/IP działa lokalnie?
  2. ping bramy domyślnej – czy sieć LAN działa?
  3. ping 8.8.8.8 – czy internet działa (połączenie IP)?
  4. ping google.pl – czy DNS działa (rozwiązywanie nazw)?

Jeśli krok 2 działa, ale 3 nie – problem u ISP. Jeśli 3 działa, ale 4 nie – problem z DNS.

Etap 1 diagnostyki: weryfikacja integralności warstwy fizycznej (stan Link Up, diody karty), sprawności lokalnego stosu protokołów (ping 127.0.0.1) oraz poprawności przydziału parametrów adresowych IP.
4 kroki diagnostyczne

Zgłoszenie użytkownika o treści „Nie działa internet” jest najbardziej klasycznym, a zarazem najbardziej niespecyficznym incydentem serwisowym w pracy działu IT. Zgodnie z inżynierską metodyką Bottom-Up (od dołu do góry modelu OSI) profesjonalną diagnostykę rozpoczynamy zawsze od fundamentów, a nie od restartowania routera brzegowego.

Krok 1 obejmuje następującą ścisłą sekwencję działań: 1. Weryfikacja warstwy fizycznej L1: sprawdzenie stanu diod kontrolnych (Link/Activity LED) na karcie sieciowej stacji roboczej oraz porcie przełącznika. W konsoli wykonujemy: ip link show eth0 (w Linux, sprawdzając obecność flagi LOWER_UP) lub Get-NetAdapter (w Windows PowerShell, weryfikując stan Up). Brak połączenia fizycznego oznacza uszkodzenie kabla krosowego, rozłączenie gniazda lub wyłączenie portu na switchu. 2. Weryfikacja integralności lokalnego stosu TCP/IP L3: wykonanie polecenia ping 127.0.0.1 (oraz ping ::1). Pomyślna odpowiedź pętli zwrotnej potwierdza, że sterownik karty sieciowej oraz kod stosu TCP/IP w jądrze systemu są załadowane i sprawne.

3. Weryfikacja parametrów logicznych: poleceniem ipconfig /all lub ip addr show badamy uzyskany adres IP. Jeśli interfejs posiada adres z puli 169.254.x.x (APIPA wg RFC 3927), oznacza to całkowity brak komunikacji z serwerem DHCP i natychmiast zawęża pole poszukiwań do segmentu lokalnego L2.

32/55
Diagnostyka braku internetu – krok 2
Cel slajdu: Przedstawienie drugiego etapu metodyki: testowanie osiągalności bramy domyślnej oraz weryfikacja routingu do zewnętrznej sieci Internet.

Diagnostyka: „Nie działa internet” – krok 2 (Brama domyślna i tranzyt zewnętrzny)

  1. ipconfig /all – sprawdź adres IP, maskę, bramę, DNS
  2. tracert google.pl – gdzie giną pakiety?
  3. nslookup google.pl – czy DNS odpowiada?
  4. ss -tupan (Linux) lub netstat -an (Windows) – czy są nawiązane połączenia?
  5. arp -a – czy brama jest w tablicy ARP?
Etap 2 diagnostyki: badanie łączności L2/L3 z bramą domyślną (Default Gateway), rozwiązywanie problemów w sieci LAN oraz weryfikacja trasowania pakietów do zewnętrznych publicznych adresów IP.
Narzędzia diagnostyczne

Gdy stacja robocza posiada poprawny adres IP i sprawny stos lokalny, kolejnym etapem procedury inżynierskiej jest weryfikacja pierwszego węzła przekazującego pakiety poza sieć lokalną – czyli bramy domyślnej (Default Gateway).

Procedura diagnostyczna etapu 2 przebiega według następującego drzewa decyzyjnego: 1. Test łączności z bramą domyślną: wykonujemy polecenie ping <adres_bramy> (np. ping 192.168.1.1). - Brak odpowiedzi od bramy: oznacza problem zlokalizowany ściśle wewnątrz naszej sieci lokalnej LAN. Sprawdzamy tablicę ARP (arp -a lub ip neigh) – czy stacja potrafi rozwiązać adres MAC bramy? Jeśli wpis ma status FAILED lub Incomplete, przyczyną jest zły numer VLAN na porcie przełącznika, blokada portu przez mechanizm STP (Spanning Tree Protocol) lub awaria routera domyślnego. - Brama odpowiada prawidłowo: łączność wewnątrzsegmentowa LAN funkcjonuje w 100% poprawnie.

2. Test wyjścia poza sieć lokalną (Test tranzytu IP): wykonujemy polecenie ping 8.8.8.8 lub ping 1.1.1.1 (odpytując znany, niezawodny publiczny serwer IP w Internecie). - Jeśli ping 8.8.8.8 nie działa, problem leży w łączu dostawcy internetowego (ISP), konfiguracji translacji NAT/PAT na routerze brzegowym (RFC 3022) lub regułach zapory brzegowej. - Jeśli ping 8.8.8.8 działa bezbłędnie, łącze internetowe jest w pełni sprawne, a awaria dotyczy wyłącznie warstwy aplikacji lub translacji nazw DNS.

33/55
Pomiar opóźnienia i utraty pakietów
Cel slajdu: Przedstawienie narzędzi i metodyki oceny jakości łącza teleinformatycznego ze szczególnym uwzględnieniem programu MTR (My Traceroute).

Pomiar opóźnienia i utraty pakietów

# Długi test ping – 100 pakietów
ping -c 100 8.8.8.8
# mtr – połączenie ping + traceroute w czasie rzeczywistym
mtr 8.8.8.8
mtr (My Traceroute) to doskonałe narzędzie do ciągłego monitorowania trasy i wykrywania, na którym hopie występują problemy.
Zaawansowany pomiar jakości sieci: jednoczesna analiza opóźnienia (Latency RTT), fluktuacji opóźnień (Jitter) oraz procentowej utraty pakietów (Packet Loss) w czasie rzeczywistym za pomocą narzędzi MTR i iperf.
mtr

Ocena stanu sieci teleinformatycznej nie może ograniczać się do binarnego stwierdzenia „działa / nie działa”. Współczesne usługi wrażliwe na jakość transmisji (VoIP, transmisje wideo w standardzie 4K, aplikacje transakcyjne giełd finansowych, systemy sterowania przemysłowego SCADA) wymagają rygorystycznego dotrzymywania parametrów jakości usługi (QoS - Quality of Service).

Niezastąpionym narzędziem każdego inżyniera sieciowego w tym obszarze jest program mtr (My Traceroute), dostępny natywnie w systemach Linux oraz jako WinMTR w środowisku Windows. Narzędzie łączy zalety traceroute i ciągłego ping: w dynamicznie odświeżanym interfejsie konsolowym stale wysyła pakiety do każdego węzła na trasie, prezentując w czasie rzeczywistym liczbę wysłanych pakietów (Snt), procentową utratę (Loss%), ostatni czas RTT (Last), średnią (Avg), minimum (Best), maksimum (Worst) oraz odchylenie standardowe (StDev).

W interpretacji wyników kluczowa jest korelacja zjawisk: jeśli wskaźnik Loss% wzrasta nagle na skoku nr 4 i utrzymuje się na tym samym wysokim poziomie na wszystkich kolejnych przeskokach (skoki 5, 6, 7), dowodzi to trwałej usterki fizycznej lub zatoru (Congestion) na łączu pomiędzy skokiem 3 a 4. Jeśli natomiast utrata występuje wyłącznie na skoku 4, a na skoku 5 wynosi 0%, wynika to wyłącznie z ograniczenia zasobów procesora routera dla generowania komunikatów ICMP.

34/55
Zadanie praktyczne – diagnostyka DNS
Cel slajdu: Przećwiczenie pełnej procedury laboratoryjnej wykrywania i usuwania awarii systemu rozwiązywania nazw domenowych krok po kroku.

Zadanie praktyczne: diagnoza usterki DNS

  1. Wykonaj nslookup google.pl
  2. Wykonaj nslookup -type=MX google.pl
  3. Sprawdź cache DNS: ipconfig /displaydns (Windows)
  4. Wyczyść cache: ipconfig /flushdns
  5. Sprawdź ponownie – czy czas odpowiedzi się zmienił?
Procedura naprawcza DNS: sekwencja inżynierska obejmująca weryfikację adresu resolwera w konfiguracji IP, test translacji nazwy przez narzędzia nslookup/dig, odpytanie alternatywnego serwera publicznego oraz oczyszczenie lokalnego bufora DNS.
nslookup

W ramach niniejszego zadania laboratoryjnego analizujemy typowy scenariusz awarii: stacja robocza nie może otworzyć żadnej witryny internetowej w przeglądarce, zgłaszając błąd DNS_PROBE_FINISHED_BAD_CONFIG, podczas gdy komunikatory sieciowe działające po stałych adresach IP funkcjonują poprawnie.

Procedura postępowania laboratoryjnego krok po kroku: 1. Weryfikacja skonfigurowanego serwera DNS: poleceniem ipconfig /all (Windows) lub inspekcją cat /etc/resolv.conf (Linux) sprawdzamy adresy przypisanych serwerów nazw. Weryfikujemy, czy adres nie wskazuje na nieistniejący serwer lokalny. 2. Test zapytania do serwera domyślnego: wykonujemy polecenie nslookup www.google.com. Jeśli program zgłasza błąd „DNS request timed out”, lokalny serwer DNS jest niedostępny lub zawieszony. 3. Odpytanie zewnętrznego serwera wzorcowego: wykonujemy test nslookup www.google.com 8.8.8.8 lub dig @1.1.1.1 www.google.com. Pomyślny wynik testu definitywnie dowodzi, że problem dotyczy wyłącznie lokalnego serwera DNS naszej organizacji, a nie konfiguracji samej domeny.

4. Usunięcie przestarzałych wpisów: po naprawieniu konfiguracji serwera w DHCP lub statycznie w parametrach karty sieciowej wykonujemy polecenie ipconfig /flushdns (w Windows) lub resolvectl flush-caches (w Linux), aby wyczyścić bufor resolwera ze starych negatywnych wpisów i przywrócić natychmiastowe działanie przeglądarek.

35/55
Znajdowanie adresu MAC bramy
Cel slajdu: Wykształcenie umiejętności pozyskiwania i weryfikacji fizycznego adresu MAC routera domyślnego oraz analizy identyfikatora OUI producenta.

Zadanie: znajdowanie adresu MAC bramy domyślnej

arp -a

Znajdź w tablicy ARP adres bramy domyślnej (zazwyczaj 192.168.1.1 lub 10.0.0.1).

Jaki jest jej adres MAC? Jaki producent (pierwsze 3 pary hex)?

Procedura identyfikacji MAC bramy: technika diagnostyczna polegająca na: 1) odczytaniu IP bramy z tablicy routingu, 2) zainicjowaniu pakietu IP w celu wymuszenia wpisu w tablicy ARP oraz 3) inspekcji tablicy sąsiadów L2 za pomocą arp -a lub ip neigh.
arp -a z bramą

Znajomość fizycznego adresu MAC bramy domyślnej jest kluczowa w audytach bezpieczeństwa sieci lokalnej, konfiguracji filtrów MAC na przełącznikach oraz wykrywaniu ataków podsłuchowych Man-in-the-Middle (MitM ARP Spoofing). W niniejszym ćwiczeniu studenci realizują procedurę precyzyjnego wyznaczenia adresu MAC routera pierwszego skoku.

Procedura inżynierska obejmuje następujące kroki: 1. Ustalenie logicznego adresu IP bramy: w systemie Linux poleceniem ip route show | grep default (np. wynik default via 192.168.1.1 dev eth0), a w systemie Windows za pomocą ipconfig lub route print. 2. Wymuszenie rozwiązania adresu przez ARP: jeśli komputer dopiero został uruchomiony, jego tablica ARP może być pusta. Wysyłamy pojedynczy pakiet: ping -c 1 192.168.1.1 (w Windows: ping -n 1 192.168.1.1), co zmusza kartę do wyemitowania ramki ARP Request i odebrania odpowiedzi z adresem MAC bramy.

3. Odczyt z pamięci podręcznej ARP: - W systemie Linux wykonujemy: ip neigh show 192.168.1.1 (wynik np. 192.168.1.1 dev eth0 lladdr 00:1a:2b:3c:4d:5e REACHABLE). - W systemie Windows wykonujemy: arp -a | findstr 192.168.1.1.

4. Weryfikacja OUI (Organizationally Unique Identifier): pierwsze trzy bajty uzyskanego adresu MAC (np. 00:1A:2B) sprawdzamy w publicznej bazie IEEE OUI. Pozwala to potwierdzić, czy sprzęt rzeczywiście pochodzi od deklarowanego producenta routera (np. Cisco, Juniper, MikroTik), czy jest maszyną wirtualną lub komputerem intruza podszywającego się pod bramę.

36/55
Sprawdzanie otwartych portów
Cel slajdu: Przećwiczenie audytu portów nasłuchujących w systemach Linux i Windows za pomocą narzędzi CLI ss i netstat.

Zadanie: sprawdzanie otwartych portów i usług

ss -tupan# Linux (następca netstat)
netstat -an# Windows

Ile jest aktywnych połączeń TCP? Które porty nasłuchują (LISTENING)?

Czy widzisz jakieś nietypowe połączenia (np. z obcymi IP)?

Audyt gniazd sieciowych: weryfikacja usług nasłuchujących na interfejsach lokalnych i zewnętrznych (0.0.0.0 / ::) w celu oceny podatności systemu na ataki sieciowe i potwierdzenia gotowości demonów serwerowych.
netstat -an

Każda usługa sieciowa (serwer WWW, serwer SSH, baza danych PostgreSQL, demon DNS) w celu przyjmowania połączeń od klientów musi utworzyć gniazdo sieciowe w stanie nasłuchiwania (LISTEN). Przeprowadzenie regularnego audytu otwartych portów jest elementarnym obowiązkiem administratora dążącego do minimalizacji powierzchni ataku (Attack Surface Reduction).

W systemie Linux optymalnym i zalecanym narzędziem jest polecenie: ss -tulpn - -t filtruje gniazda TCP, - -u filtruje gniazda UDP, - -l wyświetla wyłącznie gniazda w stanie LISTEN, - -p wyświetla nazwę programu i numer PID (wymaga uprawnień roota / sudo), - -n prezentuje numery portów zamiast nazw usług.

W analizie wyjścia krytyczne znaczenie ma badany adres lokalny: - Adres 127.0.0.1:3306 (lub [::1]:3306) oznacza, że usługa bazy danych nasłuchuje wyłącznie na interfejsie lokalnym pętli zwrotnej i jest niedostępna z zewnątrz sieci, co jest bezpieczną konfiguracją. - Adres 0.0.0.0:22 (lub :::22) oznacza, że demon SSH nasłuchuje na wszystkich fizycznych interfejsach maszyny i przyjmuje połączenia ze świata zewnętrznego.

W systemie Windows analogiczne badanie wykonujemy poleceniem netstat -ano | findstr LISTENING, a skojarzenie numeru PID z procesem weryfikujemy w PowerShell poleceniem Get-Process -Id <PID>.

37/55
Znajdowanie publicznego adresu IP
Cel slajdu: Przedstawienie technik identyfikacji publicznego adresu IP widzianego z perspektywy globalnego Internetu zza routera z translatorem NAT.

Zadanie: znajdowanie publicznego adresu IP

nslookup myip.opendns.com resolver1.opendns.com
curl ifconfig.me# Linux/macOS z curl

Porównaj z adresem wewnętrznym (ipconfig).

Wykrywanie zewnętrznego IP: metody określania publicznego adresu IPv4/IPv6 stacji roboczej pracującej w prywatnej podsieci RFC 1918 za pomocą zapytań HTTP do serwisów IP-echo (curl ifconfig.me) lub protokołu STUN (RFC 8489).
Publiczny adres IP

Współczesne stacje robocze i serwery w sieciach korporacyjnych oraz domowych niemal bez wyjątku pracują w prywatnych przestrzeniach adresowych (RFC 1918: pule 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16). Lokalne polecenia takie jak ipconfig czy ip addr ujawniają wyłącznie ten adres prywatny. Jednak serwery w globalnym Internecie widzą nas pod publicznym adresem IP routera brzegowego wykonującego translację NAT/NAPT (RFC 3022).

Znajomość publicznego adresu IP jest niezbędna m.in. przy konfigurowaniu zdalnego dostępu VPN, zestawianiu reguł na zaporach sieciowych kontrahentów (IP Whitelisting) czy konfiguracji przekierowań portów (Port Forwarding). Najprostszą metodą konsolową jest odpytanie zaufanego serwisu typu IP-echo za pomocą narzędzia curl:

- W systemie Linux i Windows PowerShell: - curl ifconfig.me - curl icanhazip.com - curl api.ipify.org - Wymuszenie protokołu IPv4 lub IPv6: - curl -4 ifconfig.me (sprawdza publiczny adres IPv4) - curl -6 ifconfig.me (sprawdza publiczny adres IPv6 stacji).

W środowiskach profesjonalnych i aplikacjach VoIP do automatycznego wykrywania zewnętrznego adresu i mapowania portów stosuje się wyspecjalizowany protokół STUN (Session Traversal Utilities for NAT) opisany w standardzie RFC 8489.

38/55
Kompleksowy test łącza
Cel slajdu: Przedstawienie zintegrowanej procedury testowej weryfikującej kompletny łańcuch komunikacyjny od warstwy L1 do L7.

Kompleksowy test łącza sieciowego

  1. ping -c 100 8.8.8.8 – średnie opóźnienie i utrata
  2. tracert google.pl – trasa i opóźnienia na hopach
  3. pathping google.pl – utrata na każdym hopie
  4. nslookup google.pl – czy DNS odpowiada szybko?
Zintegrowany test łącza: ustrukturyzowana procedura łącząca sekwencyjne testy fizyczne, pętlę zwrotną, adres lokalny, bramę domyślną, publiczne IP oraz zapytanie DNS w jeden logiczny ciąg walidacyjny.
Cztery narzędzia

Kompleksowy test łącza sieciowego stanowi zwieńczenie metodyki rozwiązywania problemów teleinformatycznych. Zamiast chaotycznego sprawdzania pojedynczych parametrów, profesjonalny inżynier sieciowy wykonuje zorganizowaną sekwencję walidacyjną obejmującą sześć krytycznych punktów kontrolnych:

Procedura kompleksowego testu łącza: 1. Test 1 (Warstwa fizyczna i stos lokalny): ping -c 2 127.0.0.1 -> potwierdza załadowanie i bezbłędną pracę jądra stosu TCP/IP. 2. Test 2 (Interfejs sieciowy L2/L3): ping -c 2 <nasz_lokalny_IP> -> potwierdza, że karta sieciowa jest w stanie aktywnym i poprawnie przetwarza pakiety. 3. Test 3 (Łączność w segmencie LAN): ping -c 2 <IP_bramy_domyślnej> -> potwierdza sprawność medium transmisyjnego (kabel/Wi-Fi), przełącznika oraz pomyślną wymianę ramek ARP (RFC 826).

4. Test 4 (Routowalność poza sieć lokalną): ping -c 2 8.8.8.8 -> potwierdza poprawne trasowanie pakietów przez bramę brzegową, działanie translacji NAT oraz dostęp do globalnej infrastruktury WAN. 5. Test 5 (Translacja nazw domenowych DNS): nslookup www.google.com -> potwierdza sprawność skonfigurowanego serwera nazw oraz integralność portu UDP 53. 6. Test 6 (Warstwa aplikacji L7): curl -I https://www.google.com -> potwierdza prawidłowe nawiązanie sesji TCP 3-Way Handshake, negocjację szyfrowania TLS oraz odebranie kodu odpowiedzi HTTP 200/301.

Zlokalizowanie pierwszego testu w tej sekwencji, który zakończył się niepowodzeniem, precyzyjnie definiuje warstwę i element sieciowy odpowiedzialny za awarię.

39/55
Zapisywanie wyników do pliku
Cel slajdu: Przedstawienie technik przekierowywania strumieni konsolowych (stdout/stderr) oraz rejestrowania wyników pomiarowych na potrzeby audytu i dokumentacji awarii.

Zapisywanie wyników diagnostycznych do pliku

# Zapis ping do pliku
ping -c 100 8.8.8.8 > ping_results.txt
# Zapis traceroute
tracert google.pl > trace_results.txt
# Zapis konfiguracji
ipconfig /all > ipconfig.txt
Zapisuj wyniki pomiarów do plików z datą w nazwie (np. ping_2024-01-15.txt) – umożliwi to analizę porównawczą.
Archiwizacja wyników CLI: operatory powłoki systemowej (>, >>, 2>&1, tee) umożliwiające jednoczesną prezentację na ekranie i trwały zapis danych diagnostycznych z dokładnym znacznikiem czasu (timestamp).
Zapis do pliku

W pracy inżyniera sieciowego samo wykonanie testów diagnostycznych to dopiero połowa sukcesu; równie ważna jest ich poprawna dokumentacja i archiwizacja. Przedstawienie dostawcy usług telekomunikacyjnych (ISP) roszczenia z tytułu niedotrzymania umowy SLA wymaga twardych, zweryfikowanych dowodów w postaci logów ze znacznikami czasu.

W środowiskach systemowych kluczowe znaczenie mają operatory przekierowania strumieni: - Nadpisanie pliku (>): ping 192.168.1.1 > diagnoza.txt – tworzy nowy plik lub bezpowrotnie czyści istniejący, zapisując standardowy strumień wyjścia (stdout). - Dopisanie do pliku (>>): traceroute 8.8.8.8 >> historia_tras.log – dołącza nowe wyniki na końcu istniejącego pliku, co jest idealne przy cyklicznym monitorowaniu. - Przekierowanie błędów (2>&1): łączy standardowy strumień błędów (stderr, deskryptor 2) ze standardowym wyjściem (stdout, deskryptor 1), gwarantując, że komunikaty o braku łączności nie zostaną utracone.

W systemie Linux niezastąpionym narzędziem jest program tee, który rozdziela strumień danych, wyświetlając wyniki na żywo na ekranie terminala i jednocześnie zapisując je do wskazanego pliku: ping -c 10 8.8.8.8 | tee -a raport_ping.txt W środowisku Windows PowerShell analogiczny mechanizm realizuje polecenie cmdlet: Test-NetConnection -ComputerName 8.8.8.8 | Tee-Object -FilePath C:\logi et_test.txt -Append.

40/55
Skrypt monitorujący połączenie
Cel slajdu: Przedstawienie zasad tworzenia prostych skryptów powłoki (Bash / PowerShell) automatyzujących ciągłe monitorowanie łącza i logowanie incydentów.

Skrypt monitorujący połączenie sieciowe

# PowerShell – ping co minutę z zapisem do CSV
while($true) {
 $result = ping -n 10 8.8.8.8
 $result | Out-File -Append ping_log.csv
 Start-Sleep -Seconds 60
}
Skrypt monitorujący CLI: autonomiczny program powłoki wykonujący cykliczne próbkowanie węzłów referencyjnych w pętli czasowej, rejestrujący czasy RTT i momenty awarii do pliku dziennika wraz z datą i godziną.
Skrypt PowerShell

Częstym problemem w sieciach teleinformatycznych są awarie sporadyczne (tzw. usterki intermittujące) – krótkotrwałe zaniki łącza trwające od kilkunastu sekund do kilku minut, które ustępują samoczynnie przed rozpoczęciem manualnej interwencji administratora. Jedynym skutecznym sposobem ich udokumentowania jest uruchomienie zautomatyzowanego skryptu monitorującego działającego w pętli w tle.

W systemie Linux (powłoka Bash) zwięzły skrypt diagnostyczny opiera się na pętli while z funkcją date:

#!/bin/bash
CEL="8.8.8.8"
LOG="monitoring_lacza.log"
echo "Rozpoczęcie monitoringu węzła : Sat Oct 10 11:42:03 PM CEST 2026" >> 
while true; do
    CZAS=2026-10-10 23:42:03
    if ping -c 1 -W 2  > /dev/null 2>&1; then
        echo " - Połączenie OK" >> 
    else
        echo " - AWARIA ŁĄCZA! Brak odpowiedzi z " >> 
    fi
    sleep 5
done

W środowisku Windows PowerShell analogiczne zadanie realizuje pętla:

while () {
     = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
    if (Test-Connection -TargetName 8.8.8.8 -Count 1 -Quiet) {
        " - OK" | Out-File -Append monitoring.log
    } else {
        " - AWARIA!" | Out-File -Append monitoring.log
    }
    Start-Sleep -Seconds 5
}

Skrypty te stanowią zalążek profesjonalnych systemów monitorowania infrastruktury (NMS) i pozwalają na bezsporne udowodnienie operatorowi występowania mikroawarii na łączu tranzytowym.

41/55
Dobór narzędzia do problemu
Cel slajdu: Przedstawienie inżynierskiej matrycy doboru narzędzi diagnostycznych w zależności od symptomu awarii i warstwy modelu OSI.

Kiedy użyć którego narzędzia? Matryca decyzyjna

ProblemNarzędzie
Brak internetuping, ipconfig, nslookup, tracert
Wolne działanieping -c 100, pathping (tylko Windows), iperf
Nie działa stronanslookup, ping, tracert, ss (następca netstat)
Podejrzenie atakuss -tupan lub netstat -anb, arp -a, Wireshark
Matryca diagnostyczna CLI: usystematyzowany schemat wyboru optymalnego narzędzia wiersza poleceń na podstawie obserwowanych objawów, minimalizujący czas lokalizacji usterki (MTTR - Mean Time to Repair).
Tabela narzędzi

Skuteczność inżyniera sieciowego zależy nie od liczby znanych narzędzi, lecz od umiejętności natychmiastowego doboru właściwego programu do zaistniałego problemu. Przeprowadzanie losowych testów prowadzi do chaosu i niepotrzebnego wydłużenia czasu przestoju (downtime). Poniższa matryca decyzyjna porządkuje proces doboru narzędzi:

Dopasowanie narzędzi do problemów inżynierskich: - Brak jakiejkolwiek łączności (brak IP, odłączony kabel): ip link / ethtool (badanie L1/L2), ip addr / ipconfig (weryfikacja L3 i statusu DHCP). - Brak łączności z lokalnym serwerem lub routerem: ping (weryfikacja L3), arp -a / ip neigh (badanie rozwiązywania adresów L2).

- Brak dostępu do zasobów zewnętrznych przy działającej sieci LAN: ip route / route print (weryfikacja bramy domyślnej), traceroute / tracert (lokalizacja miejsca przerwania tranzytu). - Strony WWW nie otwierają się, lecz IP odpowiada: nslookup / dig (diagnostyka resolwera DNS, badanie rekordów A/AAAA), ipconfig /flushdns. - Niska prędkość, zrywanie sesji, wysokie opóźnienia: mtr / pathping (lokalizacja wąskiego gardła i strat pakietów), iperf3 (test czystej przepustowości łącza L4). - Usługa sieciowa nie przyjmuje połączeń na serwerze: ss -tulpn / netstat -ano (weryfikacja portów LISTEN i procesów PID), curl -I (test warstwy L7).

Zastosowanie tej matrycy pozwala inżynierowi na metodyczną, sekwencyjną eliminację hipotez i precyzyjne wskazanie źródła awarii w ciągu kilku minut.

42/55
Ściągawka narzędzi diagnostycznych
Cel slajdu: Przedstawienie komparatywnego zestawienia kluczowych poleceń diagnostycznych dla systemów Windows i Linux w podziale na funkcje.

Ściągawka narzędzi diagnostycznych: Windows vs Linux

NarzędzieZastosowanieWarstwa
pingOpóźnienie, utrata, łączność3 (ICMP)
ipconfig/ipKonfiguracja IP3
netstatPołączenia, porty, statystyki3–4
tracerouteTrasa pakietów3
pathpingTrasa + utrata na każdym hopie3
nslookup/digZapytania DNS7
arpTablica ARP (IP → MAC)2–3
routeTablica routingu3
Zestawienie komparatywne CLI: przekrojowa tabela narzędzi systemowych mapująca operacje diagnostyczne pomiędzy środowiskami Microsoft Windows a Linux (pakiet iproute2).
Ściągawka

W środowiskach heterogenicznych, gdzie stacje robocze pracują pod kontrolą systemu Microsoft Windows, a infrastruktura serwerowa i zapory ogniowe oparte są na dystrybucjach systemu Linux, inżynier sieciowy musi płynnie operować poleceniami obu platform. Poniższe zestawienie stanowi esencjonalne kompendium odpowiedników:

Zestawienie poleceń diagnostycznych: 1. Konfiguracja IP i interfejsów: - Windows: ipconfig /all, PowerShell: Get-NetIPAddress - Linux: ip addr show (lub ip a), ip link show 2. Zarządzanie dzierżawą DHCP: - Windows: ipconfig /release && ipconfig /renew - Linux: dhclient -r && dhclient eth0 lub nmcli connection up <id> 3. Pamięć podręczna ARP (L2): - Windows: arp -a, arp -d * - Linux: ip neigh show (lub ip n), ip neigh flush dev eth0

4. Tablica routingu (L3): - Windows: route print, route add ... - Linux: ip route show (lub ip r), ip route add ... 5. Test osiągalności i śledzenie trasy: - Windows: ping -n 10 <IP>, tracert -d <IP>, pathping <IP> - Linux: ping -c 10 <IP>, traceroute -n <IP>, mtr <IP> 6. Gniazda i porty sieciowe (L4): - Windows: netstat -ano, PowerShell: Get-NetTCPConnection - Linux: ss -tulpn (Socket Statistics) 7. Diagnostyka DNS: - Windows: nslookup <domena> <serwer>, ipconfig /flushdns - Linux: dig @serwer domena, resolvectl flush-caches.

Opanowanie obu zestawów poleceń jest warunkiem koniecznym do zdania egzaminów certyfikacyjnych (Cisco CCNA, CompTIA Network+, LPIC-1/2) oraz efektywnej pracy w centrach operacji sieciowych (NOC).

43/55
Diagnostyka braku internetu – krok 1
Cel slajdu: Utrwalenie zaleceń inżynieryjnych dotyczących pierwszego etapu usuwania awarii łącza na poziomie stacji roboczej i segmentu lokalnego.

Procedura „Nie działa internet” – podsumowanie etapu 1

  1. ping 127.0.0.1 – czy stos TCP/IP działa?
  2. ping bramy domyślnej – czy sieć LAN działa?
  3. ping 8.8.8.8 – czy internet działa?
  4. ping google.pl – czy DNS działa?
Podsumowanie etapu 1: rygorystyczna sekwencja sprawdzania warstwy fizycznej (kabel, port), pętli zwrotnej 127.0.0.1 oraz poprawności konfiguracji IP eliminująca usterki lokalne stacji.
Schemat 4 kroków

Pierwszy etap rozwiązywania problemu braku łączności ma na celu definitywne potwierdzenie lub wykluczenie awarii wewnątrz samej stacji roboczej oraz na jej bezpośrednim przyłączu fizycznym. Rozpoczynanie diagnostyki od kontaktu z dostawcą Internetu w sytuacji, gdy użytkownik odłączył kabel sieciowy, naraża organizację na niepotrzebne koszty i opóźnienia.

Złote reguły etapu pierwszego: 1. Weryfikacja fizyczna: Czy świeci się dioda Link na karcie sieciowej? Czy kabel RJ-45 jest zatrzaśnięty w gnieździe? Czy moduł Wi-Fi nie został wyłączony przełącznikiem sprzętowym lub w trybie samolotowym? W Linuksie polecenie ip link musi raportować stan state UP.

2. Weryfikacja stosu TCP/IP: Wykonaj ping 127.0.0.1. Brak odpowiedzi świadczy o uszkodzeniu sterownika sieciowego, awarii stosu sieciowego w systemie operacyjnym lub infekcji złośliwym oprogramowaniem modyfikującym filtry NDIS/Winsock. W Windows naprawę realizuje polecenie: netsh int ip reset && netsh winsock reset. 3. Weryfikacja adresu IP: Wykonaj ipconfig lub ip addr. Jeśli adres to 169.254.x.x (APIPA), serwer DHCP jest nieosiągalny. Jeśli adres to 0.0.0.0, karta nie uzyskała konfiguracji. Wykonaj odnowienie dzierżawy DHCP (ipconfig /renew).

Dopiero po upewnieniu się, że stacja posiada prawidłowy adres z puli sieci LAN i sprawny stos lokalny, inżynier przechodzi do badania komunikacji z routerem.

44/55
Diagnostyka braku internetu – krok 2
Cel slajdu: Utrwalenie procedury weryfikacji bramy domyślnej, segmentu sieci LAN oraz zewnętrznego tranzytu do Internetu.

Procedura „Nie działa internet” – podsumowanie etapu 2

  1. ipconfig /all – sprawdź adres IP, bramę, DNS
  2. tracert google.pl – gdzie giną pakiety?
  3. nslookup google.pl – czy DNS odpowiada?
  4. ss -tupan (Linux) lub netstat -an (Windows) – czy są nawiązane połączenia?
Podsumowanie etapu 2: sekwencyjne testowanie bramy domyślnej (ping do Default Gateway), weryfikacja tablicy ARP, test wyjścia poza sieć lokalną (ping do 8.8.8.8) oraz test translacji DNS.
Zrzuty wyników

W drugim etapie procedury inżynier sieciowy weryfikuje zdolność pakietów do opuszczenia lokalnej stacji roboczej i dotarcia do urządzeń dystrybucyjnych oraz węzłów zewnętrznych. Etap ten pozwala jednoznacznie podzielić domenę awarii pomiędzy sieć lokalną LAN, router brzegowy a zewnętrznego dostawcę usług telekomunikacyjnych (ISP).

Kluczowe kroki weryfikacyjne etapu drugiego: 1. Test bramy domyślnej: Wykonaj ping <adres_bramy>. - Jeśli brama nie odpowiada: natychmiast sprawdź arp -a (Windows) lub ip neigh (Linux). Czy adres MAC bramy jest widoczny? Jeśli widnieje Incomplete/FAILED, problem tkwi w infrastrukturze przełączników L2 (błędny VLAN, blokada STP, uszkodzony port switcha). Jeśli MAC jest obecny, sprawdź, czy router nie filtruje ICMP lub nie uległ awarii.

2. Test wyjścia na świat (zewnętrzne IP): Wykonaj ping 8.8.8.8 lub ping 1.1.1.1. - Jeśli pakiet dociera: łącze internetowe, routing brzegowy oraz translacja NAT/PAT (RFC 3022) działają poprawnie. - Jeśli pakiet nie dociera: wykonaj tracert -d 8.8.8.8. Jeśli ślad zatrzymuje się na adresie bramy, problem leży w modemie/routerze brzegowym lub u operatora ISP. 3. Test systemu DNS: Wykonaj nslookup www.google.com. - Jeśli ping do 8.8.8.8 działa, a nslookup zwraca błąd: problem tkwi wyłącznie w konfiguracji serwerów DNS. Zmień tymczasowo serwer DNS na publiczny (1.1.1.1 lub 8.8.8.8) i wyczyść bufor (ipconfig /flushdns).

Dzięki tej dwuetapowej procedurze każda usterka sieciowa zostaje precyzyjnie zdiagnozowana w sposób powtarzalny i w pełni profesjonalny.

45/55
Diagnostyka wolnego łącza
Cel slajdu: Przedstawienie inżynierskiej metodyki badania degradacji przepustowości, saturacji pasma, błędów dupleksu oraz zjawiska Bufferbloat.

Diagnostyka usterki: „Wolne działanie łącza”

Krok 1: ping do bramy = 0,5 ms – LAN OK.

Krok 2: ping do 8.8.8.8 = 250 ms, 15% utraty – problem na WAN.

Krok 3: pathping google.pl – utrata na 3. hopie.

Wniosek: problem u ISP – zgłoszenie do dostawcy.

Diagnostyka degradacji wydajności: wielopłaszczyznowa analiza obejmująca weryfikację trybu dupleksu, liczników błędów CRC/drops, testy przepustowości iperf3 oraz badanie buforowania pakietów (Bufferbloat) przy pełnym obciążeniu.
Wolne łącze

Zgłoszenie „sieć działa bardzo wolno” jest jednym z najtrudniejszych wyzwań diagnostycznych, ponieważ w przeciwieństwie do całkowitego braku łączności, ruch sieciowy jest przesyłany, lecz z nienormatywnymi parametrami. Doświadczony inżynier bada to zjawisko metodycznie, eliminując potencjalne przyczyny warstwa po warstwie.

Typowe źródła degradacji przepustowości i ich wykrywanie: 1. Niezgodność trybu dupleksu (Duplex Mismatch): klasyczny błąd konfiguracji warstwy 2. Jeśli jeden koniec łącza pracuje w trybie Full-Duplex, a drugi w Half-Duplex (np. w wyniku błędu autonegocjacji), łącze przy małym ruchu działa poprawnie, lecz przy próbie transferu prędkość spada do ułamka megabita z powodu lawinowych kolizji (Late Collisions). Weryfikujemy to poleceniem ethtool eth0 lub w statystykach przełącznika.

2. Błędy fizyczne i zakłócenia (CRC Errors): sprawdzamy liczniki poleceniem netstat -e lub ip -s link. Przyrost błędów CRC jednoznacznie wskazuje na uszkodzenie skrętki miedzianej, przekroczenie dopuszczalnej długości 100 m lub uszkodzenie złącza światłowodowego. 3. Saturacja pasma (Bandwidth Exhaustion): jeden z hostów w sieci może wysycać łącze (np. pobieranie aktualizacji, backup, torrent). Badamy to na routerze lub monitorujemy przepływy za pomocą NetFlow/IPFIX. 4. Zjawisko Bufferbloat: nadmierne buforowanie pakietów w buforach routerów brzegowych. Testujemy to wykonując ciągły ping podczas pełnego wysycenia łącza pobieraniem (speedtest). Jeśli RTT wzrasta z 15 ms do 500 ms, w routerze należy aktywować mechanizmy aktywnego zarządzania kolejkami (AQM, np. algorytm CAKE lub FQ-CoDel wg RFC 8290).

46/55
Diagnostyka problemów z DNS
Cel slajdu: Drobiazgowa analiza podręcznikowego scenariusza awarii translacji nazw DNS przy w pełni sprawnym routingu IP.

Studium przypadku: strony nie działają, ale ping do 8.8.8.8 działa

Objaw: ping google.pl – „Ping request could not find host".

Diagnostyka: nslookup google.pl – „DNS request timed out".

Rozwiązanie: zmiana serwera DNS na 8.8.8.8 (Google) lub 1.1.1.1 (Cloudflare).

Awaria usługowa DNS: stan systemu, w którym warstwy L1–L4 funkcjonują prawidłowo, lecz aplikacje użytkownika nie mogą nawiązać sesji z powodu braku translacji nazw FQDN na adresy IP w usłudze DNS.
Problem z DNS

Sytuacja, w której polecenie ping 8.8.8.8 odpowiada natychmiast z doskonałymi czasami RTT, a przeglądarka internetowa zgłasza błąd „Nie można znaleźć witryny” (DNS_PROBE_FINISHED_NXDOMAIN lub SERVER_FAILED), jest klasycznym studium przypadku inżynierii sieciowej. Wynik ten w 100% eliminuje problemy z medium fizycznym, kartą sieciową, przełącznikiem LAN, bramą domyślną, translacją NAT oraz łączem dostawcy ISP.

Procedura szczegółowej diagnostyki i naprawy: 1. Weryfikacja adresu przypisanego resolwera: w konsoli sprawdzamy ipconfig /all (Windows) lub cat /etc/resolv.conf (Linux). Bardzo często okazuje się, że serwer DHCP przydzielił stacji adres serwera DNS, który uległ awarii, został wyłączony lub został błędnie wpisany przez administratora (np. literówka w adresie IP).

2. Test zapytania DNS z pominięciem systemu: wykonujemy nslookup www.google.com <skonfigurowany_DNS>. Jeśli zapytanie wygasa po limicie czasu (timeout), lokalny serwer DNS jest martwy. 3. Weryfikacja blokady portu UDP 53 na zaporze: wykonujemy polecenie nslookup www.google.com 8.8.8.8. Jeśli zapytanie do serwera publicznego również nie działa, mimo że ping do 8.8.8.8 przechodzi, oznacza to, że zapora sieciowa (firewall) na routerze blokuje ruch na porcie UDP/TCP 53! Protokół ICMP jest przepuszczany, ale zapytania DNS są odrzucane.

4. Usunięcie zanieczyszczeń bufora: po przywróceniu poprawnego serwera DNS (np. przez rekonfigurację DHCP lub wpisanie 1.1.1.1) bezwzględnie wykonujemy ipconfig /flushdns, aby usunąć zapamiętane negatywne rekordy z pamięci podręcznej klienta.

47/55
Podsumowanie poznanych narzędzi
Cel slajdu: Syntetyczna rekapitulacja wiedzy o narzędziach konsolowych CLI, protokołach pomocniczych i technikach analizy sieciowej.

Co już wiemy? Podsumowanie poznanych narzędzi

  • ping – test łączności ICMP, mierzy RTT i utratę
  • ipconfig/ip – konfiguracja IP i interfejsów
  • netstat – aktywne połączenia i nasłuchujące porty
  • traceroute – trasa pakietów z opóźnieniami
  • nslookup/dig – zapytania DNS
  • arp – tablica IP ↔ MAC
  • route – tablica routingu
Podsumowanie modułu narzędziowego: zintegrowany przegląd narzędzi weryfikacji L1–L7 (ping, ipconfig, iproute2, ss, netstat, traceroute, pathping, nslookup, dig) oraz reguł analizy wyników pomiarowych.
Mapa myśli

Podsumowując moduł dziesiąty poświęcony narzędziom konsolowym CLI, warto dokonać syntezy wiedzy inżynierskiej, która pozwala na bezbłędne poruszanie się po środowiskach sieciowych przedsiębiorstw. Konsola tekstowa to najszybsze, najbardziej precyzyjne i powszechnie dostępne środowisko diagnostyczne.

Kluczowe pojęcia i kompetencje nabyte w tym module: - Weryfikacja osiągalności: narzędzie ping bazujące na protokole ICMP (RFC 792) weryfikuje warstwę L3, dostarczając wskaźników RTT oraz licznika TTL, pozwalającego wykrywać pętle routingu i identyfikować systemy operacyjne. - Konfiguracja i adresacja: polecenie ipconfig w systemach Windows oraz pakiet iproute2 (polecenie ip) w systemach Linux stanowią współczesny standard zarządzania interfejsami, adresami, pamięcią podręczną ARP oraz trasowaniem.

- Śledzenie ścieżki tranzytu: narzędzia traceroute, tracert oraz pathping manipulują polem TTL, wymuszając generowanie komunikatów ICMP Time Exceeded w celu zmapowania każdego kolejnego routera i zlokalizowania strat pakietów. - Inspekcja gniazd i portów: narzędzia ss oraz netstat pozwalają na pełny audyt maszyny stanów TCP (RFC 793), wykrywanie portów nasłuchujących (LISTEN) oraz identyfikację procesów sieciowych. - Diagnostyka systemu nazw: narzędzia nslookup oraz profesjonalny dig umożliwiają weryfikację każdego rekordu zasobów DNS oraz transparentne śledzenie delegacji stref.

48/55
Dobre praktyki diagnostyki
Cel slajdu: Przedstawienie kanonu dobrych praktyk diagnostycznych, unikania typowych błędów oraz metodyki dokumentowania zmian w infrastrukturze.

Dobre praktyki inżynierskiej diagnostyki sieci

  • Zawsze wykonuj ping co najmniej 10 razy – pojedynczy pomiar jest niemiarodajny
  • Przy problemach z siecią: sprawdzaj warstwa po warstwie (L1 → L2 → L3 → L4 → L7)
  • Używaj pathping do wykrycia, na którym hopie giną pakiety
  • Zapisuj wyniki do pliku – umożliwi analizę trendów
  • Automatyzuj powtarzalne pomiary skryptami
Kanon dobrych praktyk diagnostyki: zbiór zasad operacyjnych: podejście warstwowe (OSI), wprowadzanie jednej modyfikacji na raz, dokumentowanie stanu wyjściowego, weryfikacja hipotez i powtórny test po naprawie.
Lista kontrolna

Rozwiązywanie problemów w sieciach teleinformatycznych wymaga żelaznej dyscypliny metodologicznej. Działanie pod presją czasu i emocji użytkowników często skłania początkujących administratorów do wprowadzania chaotycznych zmian, co zazwyczaj prowadzi do pogłębienia awarii i uniemożliwia ustalenie pierwotnej przyczyny incydentu.

Zasady profesjonalnego inżyniera sieciowego: 1. Stosuj ustrukturyzowane podejście warstwowe: wybierz metodę dopasowaną do sytuacji: - Bottom-Up (od L1 do L7): idealna przy całkowitym braku łączności fizycznej, - Top-Down (od L7 do L1): optymalna, gdy problem dotyczy pojedynczej aplikacji, - Divide-and-Conquer (dziel i zwyciężaj): zaczynamy od testu ping w warstwie L3 – jeśli działa, badamy L4-L7; jeśli nie działa, badamy L1-L2. 2. Wprowadzaj DOKŁADNIE JEDNĄ ZMIANĘ na raz: jeśli zmienisz jednocześnie kabel, adres IP i regułę na zaporze, nigdy nie dowiesz się, co było przyczyną usterki, i możesz wprowadzić nową, ukrytą podatność.

3. Zawsze dokumentuj stan wyjściowy (Baseline): przed modyfikacją pliku konfiguracyjnego wykonaj jego kopię zapasową (np. cp config.conf config.conf.bak). 4. Zawsze wykonaj test weryfikacyjny po naprawie: potwierdź nie tylko, że usługa działa na stacji zgłaszającej, ale również, że wprowadzona zmiana nie zakłóciła pracy innych systemów w organizacji. 5. Zarejestruj incydent w bazie wiedzy (Post-Mortem / RCA): rzetelny opis przyczyny źródłowej (Root Cause Analysis) zapobiega powtórzeniu się awarii w przyszłości.

49/55
Pytania do samodzielnego sprawdzenia
Cel slajdu: Przekrojowa weryfikacja wiedzy studentów z zakresu narzędzi CLI, interpretacji parametrów sieciowych i metodyki rozwiązywania problemów.

Pytania do samodzielnego sprawdzenia

  1. Jaki protokół używa ping?
  2. Czym różni się tracert od pathping?
  3. Do czego służy ipconfig /flushdns?
  4. Co pokazuje netstat -an?
  5. Jak sprawdzić trasę do serwera?
Zestaw pytań kontrolnych: seria pytań sprawdzających zrozumienie różnic między narzędziami, mechanizmu TTL, interpretacji stanów gniazd oraz procedur postępowania w awariach sieciowych.
Pytania

Przed przystąpieniem do egzaminu modułowego lub samodzielnej pracy w laboratorium sieciowym, zachęcamy do weryfikacji wiedzy za pomocą poniższego zestawu pytań problemowych:

Pytania powtórkowe: 1. Mechanizm TTL w diagnostyce: W jaki sposób wartość pola TTL w odebranym pakiecie ICMP Echo Reply pozwala inżynierowi oszacować liczbę routerów na ścieżce powrotnej oraz wstępnie zidentyfikować system operacyjny hosta docelowego? 2. Różnice implementacyjne narzędzi: Dlaczego polecenie traceroute w systemie Linux może pokazywać czasy odpowiedzi na przeskokach, podczas gdy tracert w systemie Windows do tego samego celu zgłasza same gwiazdki (* * *)? Jaka różnica w protokołach transportowych za to odpowiada? 3. Analiza gniazd sieciowych: Czym różni się gniazdo nasłuchujące pod adresem 127.0.0.1:8080 od gniazda nasłuchującego na 0.0.0.0:8080 i jakie ma to konsekwencje dla bezpieczeństwa serwera? 4. Lokalizacja usterki: Użytkownik może nawiązać sesję SSH do serwera po jego adresie IP (ssh 192.168.10.50), ale próba połączenia po nazwie ssh serwer.firma.local kończy się natychmiastowym błędem. Jakie narzędzia konsolowe należy wykorzystać i jaka jest najbardziej prawdopodobna przyczyna?

Zdolność wyczerpującego uzasadnienia odpowiedzi na powyższe pytania potwierdza wysokie kompetencje inżynierskie.

50/55
Odpowiedzi do pytań sprawdzających
Cel slajdu: Przedstawienie autorytatywnych, akademickich odpowiedzi na pytania ze slajdu 49 wraz z uzasadnieniem technicznym.

Odpowiedzi do pytań sprawdzających

  1. ICMP (Echo Request/Reply)
  2. tracert – tylko trasa, pathping – trasa + utrata na hopach
  3. Czyści lokalny cache DNS
  4. Wszystkie aktywne połączenia TCP/UDP z adresami numerycznymi
  5. traceroute (Linux) lub tracert (Windows)
Klucz odpowiedzi do pytań powtórkowych: formalne wyjaśnienia dotyczące początkowych wartości TTL, protokołów próbkowania ICMP vs UDP, wiązania gniazd sieciowych oraz procedury debugowania DNS.
Odpowiedzi

Poniżej przedstawiono autorytatywne odpowiedzi inżynieryjne na pytania kontrolne ze slajdu 49:

Odpowiedź 1 (Wartość TTL): Systemy operacyjne inicjują pole TTL stałymi wartościami bazowymi: Linux/Android zazwyczaj 64, Windows 128, urządzenia sieciowe Cisco 255. Każdy napotkany ruter dekrementuje TTL o 1. Odejmując wartość odebraną od najbliższej wyższej wartości bazowej (np. odebrany TTL=53 oznacza bazę 64, czyli 64 - 53 = 11 przeskoków), inżynier poznaje dokładną liczbę routerów w drodze powrotnej.

Odpowiedź 2 (Różnice traceroute vs tracert): Windowsowy tracert wysyła pakiety ICMP Echo Request, podczas gdy uniksowy traceroute domyślnie wysyła datagramy UDP na wysokie porty. Jeśli zapora brzegowa routera pośredniego filtruje pakiety ICMP Echo, lecz przepuszcza ruch UDP (lub odwrotnie), jedno z narzędzi zarejestruje odpowiedzi, podczas gdy drugie wykaże brak odpowiedzi (gwiazdki).

Odpowiedź 3 (Wiązanie gniazd 127.0.0.1 vs 0.0.0.0): Adres 127.0.0.1 wiąże usługę wyłącznie z wirtualną pętlą zwrotną (loopback) – połączenie z nią może nawiązać wyłącznie proces uruchomiony na tej samej maszynie. Adres 0.0.0.0 (tzw. wildcard / INADDR_ANY) wiąże gniazdo ze wszystkimi fizycznymi i logicznymi interfejsami, wystawiając usługę na całą sieć lokalną i Internet.

Odpowiedź 4 (Lokalizacja usterki): Sukces połączenia po IP przy porażce po nazwie definitywnie dowodzi awarii translacji nazw. Należy użyć nslookup serwer.firma.local lub dig serwer.firma.local w celu weryfikacji rekordu A w lokalnej strefie DNS lub sprawdzić obecność domeny wyszukiwania (DNS Search Suffix) w konfiguracji DHCP.

51/55
Ściągawka narzędzi diagnostycznych
Cel slajdu: Przedstawienie zwięzłego, syntetycznego zestawienia najważniejszych poleceń diagnostycznych wraz z najpopularniejszymi flagami wywołania.

Kompendium narzędzi CLI – szybka ściągawka

NarzędzieZastosowanieWarstwa
pingOpóźnienie, utrata, łączność3 (ICMP)
ipconfig/ipKonfiguracja IP3
netstatPołączenia, porty, statystyki3–4
tracerouteTrasa pakietów3
nslookup/digZapytania DNS7
arpTablica ARP (IP → MAC)2–3
routeTablica routingu3
Podręczne kompendium CLI: zbiór najczęściej stosowanych kombinacji poleceń sieciowych w codziennej pracy inżyniera wsparcia technicznego i administratora systemów.
Tabela z ikonami

Podręczna ściągawka inżynierska podsumowująca najważniejsze polecenia konsolowe i ich flagi, które każdy specjalista sieciowy powinien znać na pamięć:

Zestawienie podręczne: - ping -c 4 <IP> (Linux) / ping -n 4 <IP> (Windows) -> podstawowy test łączności ICMP. - ping -t <IP> (Windows) -> test ciągły (przerwanie przez Ctrl+C). - ping -f -l 1472 <IP> (Windows) / ping -M do -s 1472 <IP> (Linux) -> test MTU bez fragmentacji (DF=1).

- ip a / ip link (Linux) -> weryfikacja adresów IP i stanu łącza. - ipconfig /all (Windows) -> pełny raport konfiguracji kart sieciowych. - ipconfig /release && ipconfig /renew (Windows) -> odnowienie dzierżawy DHCP. - ipconfig /flushdns (Windows) -> czyszczenie pamięci podręcznej resolwera DNS. - ip r (Linux) / route print (Windows) -> inspekcja tablicy trasowania i bramy domyślnej. - ip n (Linux) / arp -a (Windows) -> zawartość pamięci podręcznej ARP (mapowanie IP na MAC). - traceroute -n <IP> (Linux) / tracert -d <IP> (Windows) -> śledzenie trasy bez rozwiązywania nazw. - pathping <IP> (Windows) / mtr <IP> (Linux) -> zaawansowany pomiar utraty pakietów w czasie. - ss -tulpn (Linux) / netstat -ano (Windows) -> aktywne połączenia i porty nasłuchujące wraz z PID. - dig @<DNS> <domena> +short -> zwięzłe zapytanie o rekord A w DNS. - curl -I https://<domena> -> test nagłówków warstwy aplikacji HTTP/HTTPS.

Zapisanie tych kombinacji w podręcznym notatniku administratora znacząco przyspiesza realizację procedur wsparcia technicznego.

52/55
Diagnostyka braku internetu – krok 1
Cel slajdu: Przedstawienie algorytmu postępowania dla zespołów Helpdesk i pierwszej linii wsparcia (L1 Support) przy obsłudze zgłoszeń braku łączności.

Wzorzec procedury: „Nie działa internet” – Krok 1 (Pierwsza linia wsparcia)

  1. ping 127.0.0.1 – czy stos TCP/IP działa?
  2. ping bramy domyślnej – czy sieć LAN działa?
  3. ping 8.8.8.8 – czy internet działa?
  4. ping google.pl – czy DNS działa?
Standard operacyjny L1: ustandaryzowany schemat weryfikacji podstawowych komponentów stacji roboczej (kabel, karta, pętla zwrotna, IP) minimalizujący liczbę nieuzasadnionych eskalacji do inżynierów sieci.
Schemat 4 kroków

W profesjonalnych centrach obsługi zgłoszeń (Service Desk / Helpdesk) procedury pierwszej linii wsparcia (Tier 1 Support) muszą opierać się na jednoznacznych, powtarzalnych instrukcjach roboczych (SOP - Standard Operating Procedures). Poniższy wzorzec definiuje działania w kroku pierwszym:

Algorytm pierwszej linii wsparcia: 1. Instrukcja dla użytkownika / technika: Sprawdź fizyczne podłączenie kabla sieciowego. Czy wtyczka kliknęła w gnieździe? Jeśli Wi-Fi: czy wybrano poprawny identyfikator SSID i wprowadzono poprawne poświadczenia WPA2/WPA3? 2. Uruchomienie konsoli (cmd / terminal): - Wpisz: ping 127.0.0.1. Jeśli błąd -> zrestartuj komputer lub przeinstaluj sterownik karty sieciowej.

3. Odczyt konfiguracji adresowej: - Wpisz: ipconfig. - Scenariusz A: Adres to 169.254.x.x -> wykonaj ipconfig /release i ipconfig /renew. Jeśli brak poprawy, sprawdź kabel do gniazda naściennego. - Scenariusz B: Adres to 0.0.0.0 lub „No adapter found” -> włącz kartę sieciową w Menedżerze Urządzeń. - Scenariusz C: Adres jest poprawny z puli firmowej (np. 10.10.x.x lub 192.168.x.x) -> przejdź do kroku 2 procedury eskalacyjnej.

Standaryzacja tego etapu pozwala na rozwiązanie ponad 60% typowych problemów użytkowników końcowych bez angażowania wyspecjalizowanych inżynierów sieciowych.

53/55
Diagnostyka braku internetu – krok 2
Cel slajdu: Przedstawienie procedury zaawansowanej diagnostyki dla inżynierów drugiej linii wsparcia (L2/NOC) w przypadku potwierdzenia sprawności stacji lokalnej.

Wzorzec procedury: „Nie działa internet” – Krok 2 (Eskalacja i zaawansowana analiza L2/L3)

  1. ipconfig /all – sprawdź adres IP, bramę, DNS
  2. tracert google.pl – gdzie giną pakiety?
  3. nslookup google.pl – czy DNS odpowiada?
  4. ss -tupan (Linux) lub netstat -an (Windows) – czy są nawiązane połączenia?
Standard operacyjny L2/NOC: zaawansowana analiza segmentu przełączanego, stanu portów dostępowych, integralności tablicy ARP bramy oraz weryfikacji routingu tranzytowego i usług brzegowych.
Zrzuty wyników

Gdy pierwsza linia wsparcia potwierdzi, że stacja robocza posiada poprawny adres IP i sprawny stos lokalny, sprawa zostaje przekazana do inżynierów sieciowych (NOC / Network Operations Center). Na tym etapie diagnostyka wkracza w obszar urządzeń aktywnych sieci LAN i WAN.

Zaawansowana procedura inżynierska: 1. Weryfikacja warstwy 2 w segmencie dostępowym: - Inżynier sprawdza na przełączniku zarządzalnym stan portu klienta: show interface status, show mac address-table interface .... Weryfikuje przypisany numer VLAN oraz stan protokołu Spanning Tree (port w stanie Forwarding czy zablokowany przez BPDU Guard?).

2. Weryfikacja łączności z bramą: - Test ping <IP_bramy>. Jeśli brak odpowiedzi, inżynier weryfikuje interfejs SVI / HSRP / VRRP na przełączniku dystrybucyjnym lub routerze. 3. Weryfikacja translacji NAT i tablic routingu brzegowego: - Test ping 8.8.8.8. Jeśli pakiety giną na routerze brzegowym, inżynier sprawdza tablicę sesji translacji NAT (np. czy pula adresów publicznych nie uległa wysyceniu – Port Exhaustion) oraz stan łącza WAN/BGP do operatora ISP. 4. Weryfikacja infrastruktury DNS: - Sprawdzenie logów lokalnego serwera nazw (np. BIND, Microsoft DNS, Unbound) pod kątem zablokowania zapytań rekurencyjnych lub problemów z walidacją stref DNSSEC.

Precyzyjne odnotowanie wyników każdego kroku w systemie zgłoszeń (Ticket System) gwarantuje przejrzystość działań i szybką likwidację awarii.

54/55
Zadanie praktyczne diagnostyki
Cel slajdu: Przećwiczenie zintegrowanej analizy i usunięcia wieloetapowej awarii sieciowej w realistycznym środowisku laboratoryjnym.

Kompleksowe zadanie praktyczne: symulacja awarii sieciowej

  1. Wykonaj ping do bramy i do 8.8.8.8 – porównaj opóźnienia
  2. Wykonaj traceroute do google.pl
  3. Sprawdź tablicę ARP – kto jest w twojej sieci?
  4. Sprawdź, jakie porty są otwarte na twoim komputerze (ss -tupan lub netstat -an)
  5. Wykonaj nslookup dla 3 różnych domen
Zadanie laboratoryjne: odtworzenie scenariusza awarii korporacyjnej, w której stacja ma dostęp do sieci lokalnej, lecz nie może otworzyć usług chmurowych z powodu błędnej konfiguracji maski, braku trasy i usterki resolwera DNS.
Zadania

W ramach wieńczącego moduł zadania laboratoryjnego studenci stają przed wyzwaniem usunięcia złożonej awarii sieciowej na maszynie testowej. Środowisko laboratoryjne zostało celowo skonfigurowane z wieloma subtelnymi błędami, odzwierciedlającymi realne błędy konfiguracyjne spotykane w przedsiębiorstwach.

Opis symptomów zgłoszonych przez użytkownika: Komputer laboratoryjny może wymieniać pliki z serwerem plików w tym samym pokoju, lecz próba połączenia z systemem ERP w centrali firmy oraz przeglądanie Internetu kończy się niepowodzeniem.

Kroki realizacji zadania przez studenta: 1. Audyt parametrów IP: użyj ipconfig /all lub ip a. Zwróć uwagę na maskę podsieci – czy podsieć lokalna nie nakłada się na adresację centrali (błąd nakładających się podsieci / Overlapping Subnets)? 2. Audyt tablicy trasowania: użyj route print lub ip r. Czy trasa domyślna 0.0.0.0/0 wskazuje na właściwy adres bramy w podsieci, czy posiada poprawną metrykę? 3. Audyt DNS: wykonaj zapytanie nslookup erp.firma.local oraz nslookup www.google.com. Wykorzystaj narzędzie dig do zbadania, który serwer nazw odrzuca zapytanie i z jakim kodem błędu (RCODE).

4. Naprawa i walidacja: skoryguj konfigurację w menedżerze sieci, odnów dzierżawę DHCP, oczyść bufor DNS i udokumentuj pełny raport naprawczy zawierający logi przed i po interwencji.

55/55
Zakończenie części dziesiątej
Cel slajdu: Formalne podsumowanie modułu dziesiątego poświęconego narzędziom CLI i diagnostyce sieci oraz zapowiedź części jedenastej dotyczącej cyberbezpieczeństwa.

Koniec części 10

Następna część: Bezpieczeństwo pomiarów – etyka, RODO, prawne aspekty monitorowania ruchu.

Praca własna: wykonaj pełną diagnostykę swojego połączenia internetowego – ping, traceroute, nslookup, netstat, arp. Zapisz wyniki do pliku.

Zakończenie części dziesiątej: podsumowanie wiedzy o narzędziach CLI i metodyce diagnostycznej oraz wprowadzenie do tematyki części 11 poświęconej bezpieczeństwu sieci teleinformatycznych (zapory sieciowe, VPN, IDS/IPS, AAA).
Zapowiedź części 11

Gratulacje! Zakończyli Państwo dziesiątą część kursu „Podstawy i Diagnostyka Sieci Komputerowych”, poświęconą w całości narzędziom wiersza poleceń (CLI), technikom pomiarowym oraz formalnej metodyce rozwiązywania problemów teleinformatycznych. Narzędzia takie jak ping, traceroute, iproute2, ss, mtr, dig czy pathping to podstawowy oręż każdego inżyniera sieciowego, pozwalający na precyzyjną, naukową analizę stanu łącza bez opierania się na domysłach.

W kolejnej, jedenastej części kursu – „Bezpieczeństwo sieci komputerowych: architektura ochrony i mechanizmy obronne” – przejdziemy do jednego z najbardziej newralgicznych obszarów nowoczesnej teleinformatyki. Szczegółowej analizie poddane zostaną:

Główne zagadnienia części 11: - Architektura zapór sieciowych (Firewalls): filtry pakietów, zapory stanowe (Stateful Inspection), zapory aplikacji (WAF) oraz systemy nowej generacji (NGFW). - Wirtualne Sieci Prywatne (VPN): protokoły tunelowania i szyfrowania IPsec (IKEv1/IKEv2, ESP, AH), protokoły SSL/TLS VPN (OpenVPN, WireGuard). - Systemy wykrywania i zapobiegania włamaniom: mechanizmy IDS (Intrusion Detection System) oraz IPS (Intrusion Prevention System) bazujące na sygnaturach i analizie behawioralnej anomalii (Snort, Suricata). - Architektura uwierzytelniania, autoryzacji i rozliczalności: model AAA, protokoły RADIUS (RFC 2865) i TACACS+, standard kontroli dostępu do portu IEEE 802.1X.

Dziękuję za zaangażowanie i zapraszam do części jedenastej!