poradniki

Sieć w terminalu: Jak sprawdzić IP, otwarte porty i testować połączenie?

wpis_header_img
Zrozumienie, jak zarządzać siecią z poziomu terminala, to kluczowa umiejętność dla każdego administratora, programisty czy pasjonata Raspberry Pi. W tym artykule zebraliśmy najważniejsze polecenia Linux, które pomogą Ci błyskawicznie zdiagnozować problemy z połączeniem.

1. Zarządzanie adresacją i routingiem (Warstwa 3)

Zamiast prostego sprawdzenia adresu, zaawansowani użytkownicy analizują statystyki błędów i tabele routingu dla konkretnych polityk.

  • Statystyki błędów ramek i pakietów: ip -s -s link show eth0 – podwójna flaga -s pokazuje szczegółowe liczniki błędów (dropped, overruns, carrier errors).
  • Diagnostyka wyboru trasy: ip route get 8.8.8.8 – pozwala sprawdzić, przez który interfejs, bramę i z jakim adresem źródłowym (src) system wyśle pakiet do celu.
  • Monitorowanie zmian w czasie rzeczywistym: ip monitor all – uruchamia nasłuch na zdarzenia sieciowe (zmiany stanów interfejsów, nowe wpisy ARP, zmiany tras).

2. Głęboka analiza gniazd za pomocą ss

Polecenie ss (Socket Statistics) pozwala na bezpośrednie odpytywanie jądra o stan TCP/UDP, co jest kluczowe przy analizie wydajności serwera.

  • Filtrowanie po stanie TCP: ss -t state established – wyświetla tylko aktywne połączenia.
  • Identyfikacja wąskich gardeł (Memory Usage): ss -tm – pokazuje użycie pamięci przez konkretne gniazda TCP.
  • Filtrowanie zaawansowane (BPF-like syntax): ss -t '( dport = :http or dport = :https )' – wyświetla ruch tylko dla konkretnych usług.

3. Diagnostyka DNS i analiza ścieżki

Standardowy ping to często za mało, by wykryć fluktuacje na trasie lub problemy z propagacją DNS.

  • MTR (My Traceroute): mtr --report-wide google.com – łączy ping i traceroute, generując statystyki strat pakietów na każdym węźle (hop).
  • Śledzenie rekurencji DNS: dig +trace blog.example.com – przechodzi przez całą ścieżkę od serwerów root, przez TLD, aż do autorytatywnych serwerów nazw.

4. Przechwytywanie pakietów: tcpdump

Dla administratorów debugujących protokoły aplikacyjne, tcpdump jest narzędziem ostatecznym.

Wyłapywanie flag TCP (np. tylko pakiety SYN):
sudo tcpdump -i eth0 'tcp[tcpflags] & (tcp-syn) != 0'

Zapis do pliku pcap dla Wireshark:
sudo tcpdump -i any -w capture_file.pcap port 80

Tabela podsumowująca

Zadanie Polecenie Zastosowanie zaawansowane
Analiza ARP ip neigh Sprawdzanie konfliktów MAC w sieci lokalnej.
Testowanie portu nc -zv [ip] [port] Szybki skan bez overheadu nmapa.
Przepustowość iperf3 Pomiar realnej wydajności między dwoma punktami.
Analiza ruchu iftop Podgląd „top” dla procesów generujących ruch sieciowy.
Przewijanie do góry