Jak skonfigurować sieć w Ubuntu 16.04: Kompletny przewodnik krok po kroku
Sieć jest jednym z najważniejszych aspektów każdego systemu Linux. Niezależnie od tego, czy zarządzasz serwerem produkcyjnym, uruchamiasz maszynę wirtualną, czy konfigurujesz środowisko pulpitu, prawidłowe ustawienie sieci jest niezbędne dla łączności, bezpieczeństwa i wydajności. W Ubuntu 16.04 sieć jest obsługiwana przez narzędzie ifupdown, które odczytuje konfigurację z pliku /etc/network/interfaces — proste, ale potężne podejście do zarządzania siecią.
Ten przewodnik przeprowadzi Cię przez każdy krok wymagany do skonfigurowania sieci w Ubuntu 16.04, od otwarcia pliku konfiguracyjnego do weryfikacji aktywnego połączenia. Niezależnie od tego, czy uruchamiasz Ubuntu na maszynie lokalnej, czy na planie VPS Hosting, te instrukcje mają bezpośrednie zastosowanie do Twojego środowiska.
Wymagania wstępne
Przed rozpoczęciem upewnij się, że masz:
- Działający system Ubuntu 16.04 (fizyczny, wirtualny lub oparty na chmurze)
- Dostęp sudo lub root do maszyny
- Podstawową znajomość terminala Linux
- Gotowe szczegóły sieci: pożądany adres IP, maskę podsieci, bramę i serwery DNS
Zrozumienie sposobu zarządzania siecią w Ubuntu 16.04
W przeciwieństwie do nowszych wydań Ubuntu, które używają Netplan (wprowadzony w Ubuntu 17.10), Ubuntu 16.04 opiera się na klasycznym frameworku ifupdown. Główny plik konfiguracyjny to:
/etc/network/interfacesPlik ten definiuje zachowanie każdego interfejsu sieciowego podczas uruchamiania i gdy jest ręcznie włączany lub wyłączany. Obsługuje zarówno konfiguracje DHCP (automatyczne przydzielanie adresów IP), jak i statyczne IP, co czyni go elastycznym dla szerokiego zakresu przypadków użycia — od laboratoriów domowych do serwerów korporacyjnych.
Krok 1: Identyfikacja nazwy interfejsu sieciowego
Przed edycją jakiejkolwiek konfiguracji musisz znać dokładną nazwę interfejsu sieciowego. Ubuntu 16.04 może używać tradycyjnych nazw takich jak eth0 lub nowszych przewidywalnych nazw takich jak enp0s3, w zależności od sprzętu i konfiguracji systemu.
Uruchom następujące polecenie, aby wyświetlić listę wszystkich dostępnych interfejsów sieciowych:
ip link showPrzykładowe wyjście:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
link/ether 08:00:27:xx:xx:xx brd ff:ff:ff:ff:ff:ffW tym przykładzie aktywnym interfejsem jest enp0s3. Zanotuj nazwę interfejsu — będziesz jej potrzebować w całym tym przewodniku.
Alternatywnie możesz użyć:
ifconfig -a> Uwaga: Jeśli ifconfig nie jest dostępne, zainstaluj je za pomocą sudo apt install net-tools.
Krok 2: Otwórz plik konfiguracji sieci
Plik /etc/network/interfaces jest centralnym punktem konfiguracji sieci w Ubuntu 16.04. Otwórz go za pomocą edytora tekstu z podwyższonymi uprawnieniami:
sudo nano /etc/network/interfacesZazwyczaj zobaczysz konfigurację domyślną podobną do tej:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s3
iface enp0s3 inet dhcpLinia inet dhcp oznacza, że interfejs jest obecnie ustawiony do automatycznego uzyskania adresu IP za pośrednictwem DHCP. W następnych krokach pokażemy Ci, jak skonfigurować zarówno konfiguracje DHCP, jak i statyczne IP.
Krok 3: Skonfiguruj statyczny adres IP
Statyczny adres IP jest niezbędny dla serwerów, urządzeń sieciowych i każdego systemu, który potrzebuje spójnego, przewidywalnego adresu. Jeśli hostujesz witryny, bazy danych lub usługi na Serwerze dedykowanym lub VPS, zdecydowanie zaleca się statyczne IP.
3.1 Zastąp konfigurację DHCP
Zlokalizuj sekcję dla głównego interfejsu i zastąp linię dhcp blokiem konfiguracji statycznej. Oto pełna składnia:
auto enp0s3
iface enp0s3 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.43.2 Zrozumienie każdej dyrektywy
| Dyrektywa | Opis |
|---|---|
auto enp0s3 | Automatycznie włącza interfejs podczas uruchamiania |
iface enp0s3 inet static | Deklaruje statyczną konfigurację IPv4 |
address | Statyczny adres IP, który chcesz przypisać |
netmask | Definiuje maskę podsieci (np. /24 = 255.255.255.0) |
gateway | Brama domyślna (zwykle adres IP routera) |
dns-nameservers | Lista adresów resolwerów DNS oddzielonych spacjami |
3.3 Przykład z niestandardowymi wartościami
Zastąp przykładowe wartości rzeczywistymi szczegółami sieci:
auto enp0s3
iface enp0s3 inet static
address 203.0.113.50
netmask 255.255.255.0
gateway 203.0.113.1
dns-nameservers 1.1.1.1 8.8.8.8> Wskazówka: Użyj publicznego DNS Google (8.8.8.8, 8.8.4.4) lub Cloudflare (1.1.1.1, 1.0.0.1) dla niezawodnego rozpoznawania nazw. Prawidłowa konfiguracja DNS jest szczególnie ważna, jeśli zarządzasz rejestracją domen lub uruchamiasz serwery poczty.
Po dokonaniu zmian zapisz plik, naciskając Ctrl + O, następnie Enter i wyjdź za pomocą Ctrl + X.
Krok 4: Skonfiguruj DHCP (opcjonalnie)
Jeśli wolisz automatyczne przydzielanie adresów IP — powszechne w środowiskach programistycznych lub konfiguracjach pulpitu — skonfiguruj interfejs do używania DHCP:
auto enp0s3
iface enp0s3 inet dhcpTo jest domyślna konfiguracja w większości instalacji Ubuntu 16.04. DHCP jest wygodny, ale nie nadaje się dla serwerów lub systemów, które potrzebują stałego adresu.
Krok 5: Skonfiguruj wiele interfejsów sieciowych (opcjonalnie)
Jeśli Twój system ma więcej niż jeden interfejs sieciowy — na przykład interfejs publiczny i prywatny wewnętrzny — możesz zdefiniować oba w tym samym pliku:
# Public interface (static)
auto enp0s3
iface enp0s3 inet static
address 203.0.113.50
netmask 255.255.255.0
gateway 203.0.113.1
dns-nameservers 8.8.8.8 8.8.4.4
# Private/internal interface (static)
auto enp0s8
iface enp0s8 inet static
address 10.0.0.10
netmask 255.255.255.0Ta konfiguracja jest szczególnie przydatna w środowiskach chmurowych i zwirtualizowanych, gdzie serwer może mieć zarówno publiczny adres IP, jak i prywatny adres IP do komunikacji wewnętrznej.
Krok 6: Uruchom ponownie usługę sieciową
Po zapisaniu zmian w pliku /etc/network/interfaces musisz uruchomić ponownie usługę sieciową, aby nowa konfiguracja weszła w życie.
Metoda 1: Używanie systemctl (zalecane)
sudo systemctl restart networkingMetoda 2: Wyłączenie i włączenie interfejsu
Dla bardziej ukierunkowanego podejścia, które unika zakłócania innych interfejsów:
sudo ifdown enp0s3 && sudo ifup enp0s3> Ostrzeżenie: Jeśli jesteś połączony z serwerem zdalnie za pośrednictwem SSH, ponowne uruchomienie sieci może tymczasowo przerwać połączenie — szczególnie jeśli przechodzisz z DHCP na statyczne IP. Upewnij się, że masz dostęp do konsoli lub dostęp poza pasmem, lub użyj multipleksera terminala, takiego jak tmux lub screen, aby chronić sesję.
Krok 7: Weryfikacja konfiguracji sieci
Po ponownym uruchomieniu usługi sieciowej sprawdź, czy ustawienia zostały prawidłowo zastosowane.
7.1 Sprawdź przypisany adres IP
ip addr show enp0s3Oczekiwane wyjście (przykład statycznego IP):
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
inet 192.168.1.100/24 brd 192.168.1.255 scope global enp0s37.2 Weryfikacja bramy domyślnej
ip route showPowinieneś zobaczyć linię taką jak:
default via 192.168.1.1 dev enp0s37.3 Testowanie rozpoznawania DNS
ping -c 4 google.comPomyślna odpowiedź potwierdza, że zarówno łączność sieciowa, jak i rozpoznawanie DNS działają prawidłowo:
PING google.com (142.250.185.46) 56(84) bytes of data.
64 bytes from lga34s32-in-f14.1e100.net: icmp_seq=1 ttl=117 time=12.3 ms7.4 Testowanie łączności z bramą
ping -c 4 192.168.1.1Jeśli to się powiedzie, ale ping google.com się nie powiedzie, problem jest prawdopodobnie z konfiguracją DNS, a nie z samą łącznością sieciową.
Rozwiązywanie typowych problemów sieciowych
Nawet przy prawidłowej konfiguracji mogą pojawić się problemy. Oto najczęstsze problemy i sposoby ich rozwiązania:
Interfejs nie włącza się po ponownym uruchomieniu
- Dokładnie sprawdź, czy dyrektywa
autojest obecna przed liniąiface - Sprawdź, czy nie ma błędów w nazwie interfejsu (użyj
ip link showdo potwierdzenia) - Sprawdź dzienniki systemowe:
sudo journalctl -u networking
Błąd „RTNETLINK answers: File exists”
Ten błąd występuje podczas próby włączenia interfejsu, który jest już skonfigurowany. Najpierw go wyłącz:
sudo ifdown enp0s3
sudo ifup enp0s3DNS nie rozwiązuje
- Potwierdź, że
dns-nameserversjest prawidłowo ustawiony w/etc/network/interfaces - Sprawdź
/etc/resolv.conf, aby zobaczyć, czy zawiera prawidłowe wpisy serwera nazw - Zainstaluj
resolvconf, jeśli wpisy DNS nie są stosowane:sudo apt install resolvconf
Nie można pingować bramę
- Sprawdź, czy adres IP bramy jest prawidłowy dla Twojej sieci
- Upewnij się, że interfejs jest WŁĄCZONY:
ip link show enp0s3 - Sprawdź konflikty adresów IP w sieci
