15%

Zaoszczędź 15% na wszystkich usługach hostingowych

Sprawdź swoje umiejętności i zdobądź Rabat na dowolny plan hostingowy

Użyj kodu:

Skills
Rozpocznij
30.10.2024
1 +1

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/interfaces

Plik 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 show

Przykł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:ff

W 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/interfaces

Zazwyczaj 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 dhcp

Linia 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.4

3.2 Zrozumienie każdej dyrektywy

DyrektywaOpis
auto enp0s3Automatycznie włącza interfejs podczas uruchamiania
iface enp0s3 inet staticDeklaruje statyczną konfigurację IPv4
addressStatyczny adres IP, który chcesz przypisać
netmaskDefiniuje maskę podsieci (np. /24 = 255.255.255.0)
gatewayBrama domyślna (zwykle adres IP routera)
dns-nameserversLista 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 dhcp

To 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.0

Ta 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 networking

Metoda 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 enp0s3

Oczekiwane 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 enp0s3

7.2 Weryfikacja bramy domyślnej

ip route show

Powinieneś zobaczyć linię taką jak:

default via 192.168.1.1 dev enp0s3

7.3 Testowanie rozpoznawania DNS

ping -c 4 google.com

Pomyś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 ms

7.4 Testowanie łączności z bramą

ping -c 4 192.168.1.1

Jeś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 auto jest obecna przed linią iface
  • Sprawdź, czy nie ma błędów w nazwie interfejsu (użyj ip link show do potwierdzenia)
  • Sprawdź dzienniki systemowe: sudo journalctl -u networking

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 enp0s3

DNS nie rozwiązuje

  • Potwierdź, że dns-nameservers jest 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

Zaawansowana konfiguracja: dodawanie pomocniczego adresu IP

15%

Zaoszczędź 15% na wszystkich usługach hostingowych

Sprawdź swoje umiejętności i zdobądź Rabat na dowolny plan hostingowy

Użyj kodu:

Skills
Rozpocznij