CodeGym /Kursy /Docker SELF /Konfiguracja tras: komendy `ip route`, `netstat`, `ss`

Konfiguracja tras: komendy `ip route`, `netstat`, `ss`

Docker SELF
Poziom 4 , Lekcja 1
Dostępny

Konfiguracja tras: komendy ip route, netstat, ss

1. Pojęcie routingu

Dzisiaj zanurkujemy jeszcze głębiej: będziemy konfigurować trasy, analizować połączenia sieciowe i ogarniać porty. Tu zaczyna się prawdziwa magia administrowania siecią – dowiemy się, dokąd i jak biegają pakiety, i dlaczego warto być "szefem tras".

Routing – to nie tylko coś brzmiącego skomplikowanie, to podstawa nowoczesnych sieci. Wyobraź sobie: twój komputer to turysta, który chce dotrzeć do innego komputera (hotelu), a trasy to drogi i znaki. Jeśli tras nie ma, turysta będzie błądzić, pytać przechodniów o drogę (a przechodniami mogą być serwery DNS, ale o tym kiedy indziej) albo w ogóle zostanie w domu.

Po co nam trasy

Każde urządzenie w sieci musi wiedzieć, jak dotrzeć do innych urządzeń. Na przykład, jeśli twój komputer chce wysłać zapytanie do strony example.com, musi wiedzieć:

  1. Gdzie wysyłać pakiety.
  2. Przez którą bramkę lub interfejs to zrobić.

Trasy dzielą się na dwa typy:

  • Trasy lokalne: wskazówki dla urządzeń w twojej podsieci (na przykład twój komputer i drukarka).
  • Trasy zewnętrzne: wskazówki dla urządzeń spoza twojej podsieci (na przykład dla zasobu w internecie).

2. Tabela routingu

Tablica routingu to tabela z regułami, które określają, dokąd wysyłać pakiety w oparciu o adresy IP. To takie Google Maps dla twojego komputera: "Jeśli chcesz tam dotrzeć, idź przez tę bramę".

Sprawdź swoją tablicę tras:

ip route show

Przykładowy wynik:

default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100 metric 100

Co to znaczy:

  • default via 192.168.1.1: jeśli dla pakietu nie jest określone, dokąd ma zmierzać, wysyłaj go przez bramę o adresie 192.168.1.1.
  • dev eth0: używamy interfejsu eth0.
  • 192.168.1.0/24: to trasa dla całej podsieci 192.168.1.0/24. Pakiety pozostają "w domu" w lokalnej sieci.
  • proto i metric – dodatkowe parametry, o nich trochę później.

3. Komenda ip route

Przegląd tras

Do przeglądania tabeli routingu używaliśmy już ip route show. Można dodać filtry, na przykład aby określić trasę tylko dla sieci lokalnej:

ip route show match 192.168.1.0/24

Dodawanie tras

Możesz dodać trasę statyczną – to jakbyś sam postawił znak drogowy. Na przykład, aby przekierować wszystkie żądania do podsieci 10.0.0.0/24 przez określony gateway:

sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0

Wyjaśnijmy:

  • 10.0.0.0/24 – docelowa podsieć.
  • via 192.168.1.1 – gateway, przez który wysyłane są pakiety.
  • dev eth0 – interfejs, przez który pakiety wychodzą.

Usuwanie tras

Jeśli nie chcesz już, aby trasa istniała, usuń ją komendą:

sudo ip route del 10.0.0.0/24

4. Praktyka: Konfiguracja statycznej trasy

  1. Sprawdź, czy masz dostęp do innej podsieci.
  2. Dodaj trasę:
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
  1. Sprawdź tabelę routingu:
ip route show
  1. Usuń trasę, jeśli nie jest już potrzebna.

5. Komenda netstat

Jeśli chodzi o analizę bieżących połączeń, netstat to stary dobry przyjaciel administratora systemu (choć już istnieje bardziej współczesna alternatywa – ss, o której porozmawiamy później).

Sprawdzanie aktywnych połączeń

netstat -tun

Co to oznacza:

  • -t – pokazujemy połączenia TCP.
  • -u – pokazujemy połączenia UDP.
  • -n – używamy adresów liczbowych (zamiast nazw hostów).

Przykład wyniku:

Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 192.168.1.100:22        192.168.1.50:50240      ESTABLISHED

Co to oznacza:

  • Lokalny adres 192.168.1.100:22 – to Twój komputer słucha portu 22 (SSH).
  • Zdalny adres 192.168.1.50:50240 – to zdalny host, który połączył się z Twoim portem.
  • ESTABLISHED – to aktywne połączenie, dane są przesyłane.

Słuchanie portów

Aby zobaczyć, jakie porty są "nasłuchiwane" na Twoim komputerze:

netstat -ltn

Flaga -l pokazuje tylko nasłuchiwane porty, a -t i -n już omówiliśmy.


6. Komenda ss

Jeśli netstat to dinozaur, to ss jest niczym DeLorean z przyszłości: działa szybciej i dostarcza więcej informacji.

Sprawdzanie aktywnych połączeń

ss -tun

Przykład wyniku jest podobny do netstat, ale z większą prędkością i szczegółowością.

Nasłuchiwanie portów

ss -tln

To samo, co przy netstat, ale praca z ss jest wygodniejsza i nowocześniejsza.


7. Monitorowanie połączeń

  1. Użyj netstat lub ss, aby sprawdzić, które porty nasłuchuje twój komputer.
  2. Otwórz połączenie SSH na innym urządzeniu i sprawdź, czy pojawia się na liście połączeń.
  3. Spróbuj zinterpretować wynik poleceń.

Zanurzyliśmy się w świat routingu i monitorowania połączeń: teraz możesz używać ip route, aby zarządzać tabelą tras, oraz netstat/ss do analizy połączeń sieciowych. Te narzędzia to twój szwajcarski scyzoryk do rozwiązywania najbardziej zagmatwanych problemów sieciowych. Chcesz pomóc znajomemu, który narzeka, że "internet nie działa"? Wyciągnij swoje nowe umiejętności i pokaż klasę!

Na następnym wykładzie będzie jeszcze ciekawiej: zajmiemy się DNS-em i jego magią. A na razie – poćwicz z ip route i zobacz, jak pakiety znajdują swoją drogę do domu.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION