1. Wprowadzenie do pojęć sieciowych: trochę teorii
Na dzisiejszym wykładzie omówimy podstawy pracy z narzędziami sieciowymi Linux. Dowiesz się, jak sprawdzać dostępność hostów sieciowych, analizować stan interfejsów sieciowych i konfiguracji, a także pracować z ustawieniami sieciowymi.
Sieci to układ nerwowy świata IT. Jeśli kiedykolwiek zastanawiałeś się, jak twoja przeglądarka otwiera stronę internetową, oto krótka odpowiedź: dzięki sieci. Niezależnie od roli, jaką będziesz pełnił (deweloper, administrator czy inżynier), zrozumienie podstaw sieci to kluczowa umiejętność.
Czym właściwie jest sieć? To zbiór komputerów połączonych w celu wymiany danych. W kontekście Linuxa administracja sieci zaczyna się od zrozumienia podstawowych pojęć:
- Adres IP: to unikalny identyfikator urządzenia w sieci. Wyobraź sobie, że to jest adres pocztowy twojego komputera.
- Podsieć: logiczne połączenie urządzeń w sieci. To jak dzielnica, w której są domy z adresami.
- Brama: to „wyjście na świat”, przez które urządzenia w twojej lokalnej sieci mogą łączyć się z Internetem lub innymi podsieciami.
Istnieją dwa typy adresów IP: IPv4 (na przykład, 192.168.1.1) i IPv6 (na przykład, 2001:0db8:85a3:0000:0000:8a2e:0370:7334). IPv4 jest prostszy i to właśnie z nim będziemy pracować w tym wykładzie. IPv6 to fajny i długoterminowy standard, ale omówimy go później.
2. Komenda ping: sprawdzanie dostępności węzła
Co robi ping?
ping to narzędzie, które sprawdza, czy inny węzeł w sieci jest dostępny. Wysyła mały „list z powitaniem” na docelowy serwer (zapytanie ICMP) i czeka na odpowiedź. Jeśli węzeł odpowie, to wszystko gra; jeśli nie, coś może być nie tak (albo serwer postanowił cię zignorować, cham!).
Jak używać ping?
Spróbujmy użyć komendy ping. Otwórz terminal i wpisz następującą komendę:
ping 8.8.8.8
Ta komenda wyśle zapytania do publicznego serwera DNS Google. Zobaczysz coś takiego:
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=10.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=10.2 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=10.3 ms
Oto co oznaczają te linie:
- icmp_seq: numer wysłanego zapytania.
- ttl: „czas życia” pakietu (ile „skoków” sieciowych może wykonać).
- time: czas (w milisekundach) potrzebny na wysłanie i odebranie odpowiedzi.
Aby ograniczyć liczbę wysyłanych zapytań, możesz użyć flagi -c:
ping -c 4 8.8.8.8
Ta komenda wyśle tylko 4 zapytania zamiast nieskończonego strumienia.
Praktyka: sprawdzanie połączenia z lokalnym hostem i internetem
Spróbuj ping z adresem IP twojego routera (zwykle coś w stylu 192.168.1.1) oraz z 8.8.8.8. To pomoże ci zrozumieć, czy działa lokalna sieć oraz czy masz dostęp do internetu.
3. Komenda ip addr: sprawdzamy interfejsy sieciowe
Co to jest interfejs sieciowy?
Interfejs sieciowy — to sposób, w jaki twój komputer „komunikuje się” z siecią. Może to być interfejs dla Ethernet (połączenie kablowe), WLAN (połączenie bezprzewodowe) lub wirtualne interfejsy, stworzone do specyficznych zadań.
Komenda ip addr wyświetla bieżącą konfigurację interfejsów sieciowych. Spróbujmy jej użyć:
ip addr
Wynik będzie wyglądał mniej więcej tak:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic enp0s3
inet6 fe80::1a2b:3c4d:5e6f:f7g8/64 scope link
Co tutaj widzimy:
lo— to lokalny interfejs (localhost). Jego adres to zawsze127.0.0.1.enp0s3— to nazwa interfejsu sieciowego twojego adaptera Ethernet.inet— adres IPv4 interfejsu.inet6— adres IPv6 interfejsu.
Jak tymczasowo ustawić adres IP?
Jeśli masz uprawnienia superużytkownika (przez sudo), możesz tymczasowo ustawić adres IP:
sudo ip addr add 192.168.1.101/24 dev enp0s3
Ten adres IP będzie działał do momentu restartu.
4. Komenda ifconfig: starsze, ale wciąż popularne narzędzie
Kiedyś do zarządzania interfejsami sieciowymi używano ifconfig. Teraz stopniowo wychodzi z użycia (zastąpiło je ip addr), ale czasem nadal można na nie trafić w starszych dystrybucjach.
Sprawdzanie stanu interfejsów
Aby zobaczyć stan interfejsów za pomocą ifconfig, wykonaj:
ifconfig
Wynik będzie podobny do wyniku komendy ip addr.
Włączanie/wyłączanie interfejsu
Możesz włączyć lub wyłączyć interfejs za pomocą:
sudo ifconfig enp0s3 down
sudo ifconfig enp0s3 up
Jednak pamiętaj, że ifconfig nie działa na wszystkich nowoczesnych dystrybucjach. Jeśli komenda nie zostanie znaleziona, spróbuj zainstalować pakiet net-tools, lub od razu przejdź na ip addr.
5. Przykład: sprawdzamy dostępność i sieć
Teraz połączmy zdobytą wiedzę w małym praktycznym przykładzie.
Sprawdź dostępność lokalnego interfejsu:
ping 127.0.0.1Sprawdź adres IP swojej sieci:
ip addrSpróbuj tymczasowo skonfigurować nowy adres IP:
sudo ip addr add 192.168.1.102/24 dev enp0s3 ip addr show enp0s3Sprawdź dostępność publicznego hosta:
ping -c 3 8.8.8.8Jeśli używasz starszej dystrybucji, spróbuj przełączyć interfejs:
sudo ifconfig enp0s3 down sudo ifconfig enp0s3 up
Teraz masz podstawowe narzędzia do diagnozowania sieci w Linux. Polecenia ping, ip addr i ifconfig — to Twoje pierwsze kroki w świat administracji sieciowej. A potem będzie tylko ciekawiej!
GO TO FULL VERSION