Konfiguracja interfejsu sieciowego Debiana

Debian Network Interface Setup



Wiedza na temat konfiguracji interfejsu sieciowego w dystrybucji Debian GNU/Linux i związanych z Debianem jest niezbędna dla każdego inżyniera Linuksa. W tym artykule wyjaśnimy, gdzie znaleźć odpowiednie informacje i jak skonfigurować je pod kątem IPv4 IPv4 [2] oraz IPv6 [3] . Liczba opcji jest dość długa, ale zapewnia dużą elastyczność w konkretnej sytuacji.

Konfiguracja sieci Debiana

Cała konfiguracja interfejsów sieciowych jest przechowywana w plikach tekstowych w jednym katalogu o nazwie /etc/network. Ten katalog zawiera wiele plików i podkatalogów, które obejmują zarówno konfigurację IPv4, jak i IPv6.







  • interfaces i interfaces.d: ogólna konfiguracja na interfejs
  • if-down.d: skrypty uruchamiane w przypadku awarii interfejsu
  • if-post-down.d: skrypty uruchamiane po wyłączeniu interfejsu
  • if-up.d: skrypty uruchamiane, gdy interfejs idzie w górę
  • if-pre-up.d: skrypty uruchamiane przed uruchomieniem interfejsu

Konkretna konfiguracja odbywa się na interfejsie sieciowym. Wszystko to można przechowywać w pojedynczym pliku o nazwie interfaces lub jako osobne pliki w katalogu interfaces.d. Poniżej przedstawiono typową konfigurację IPv4 z urządzenia przenośnego. Składa się z jednego interfejsu pętli zwrotnej |_+_|, interfejsu Ethernet |_+_| i interfejsu bezprzewodowego |_+_|. Linia 1 odnosi się do uwzględnienia wszystkich skryptów, które są przechowywane w katalogu |_+_|. Linie 3 do 5 konfigurują |_+_|, linie 7 do 9 /dev/eth0, a wiersz 11 interfejs /dev/wlan0. Poniżej podano szczegółowe wyjaśnienie poszczególnych poleceń.



1 źródło /itp/sieć/interfejsy.d/ *
2
3 # Interfejs sieciowy pętli zwrotnej
4samochód to
5iface lo inet sprzężenie zwrotne
6
7 # Główny interfejs sieciowy
8Zezwalaj na hotplug eth0
9iface eth0 inet dhcp
10
jedenaścieiface wlan0 inet dhcp

W przypadku innych wydań Debiana GNU/Linux lub opartych na nim dystrybucji interfejsy plików mogą wyglądać podobnie, ale z innymi nazwami urządzeń sieciowych. Od Debiana 9 Rozciągnij stare nazwy sieci, takie jak |_+_| i |_+_| zniknęły, ponieważ nazwa urządzenia może się zmienić. Nowe nazwy są podobne do tych — |_+_|, |_+_|, |_+_| i |_+_| [1] . Dostępne interfejsy sieciowe znajdziesz w pliku /sys/class/net — w naszym przypadku interfejsy nazywają się |_+_| i |__+_|.



Lista dostępnych interfejsów sieciowych:


Konfiguracja tych interfejsów wygląda następująco. Poniższy obraz pochodzi z systemu Debian GNU/Linux 9.5.’





Podstawowa konfiguracja sieci w systemie Debian GNU/Linux 9.5:


W następnym kroku przyjrzymy się pojedynczym wyrażeniom, które konfigurują żądany interfejs.

Szczegóły konfiguracji sieci Debiana

Automatyczne włączanie interfejsu przy starcie

Podczas uruchamiania systemu skrypty instalacyjne przechodzą przez pliki konfiguracyjne interfejsów sieciowych. Aby automatycznie włączyć interfejs, dodaj słowo kluczowe auto (skrót od allow-auto), a następnie logiczną nazwę interfejsu(ów). Skrypty instalacyjne wywołają polecenie ifup -a (skrót od –all), które aktywuje wspomniane interfejsy. Poniższy wiersz spowoduje wyświetlenie interfejsu pętli zwrotnej /dev/lo, tylko:



samochód to

Interfejsy sieciowe są wyświetlane w kolejności, w jakiej są wymienione. Poniższa linia wywołuje /dev/lo, a następnie /dev/wlan0 i ostatecznie /dev/eth0.

auto lo wlan0 eth0

Aktywuj interfejs, jeśli kabel sieciowy jest podłączony

Słowo kluczowe allow-hotplug prowadzi do zdarzenia opartego na fizycznym połączeniu. Nazwany interfejs sieciowy jest aktywowany, gdy tylko kabel sieciowy zostanie podłączony, i dezaktywowany, gdy tylko kabel sieciowy zostanie odłączony. Następna linia pokazuje to dla interfejsu Ethernet /dev/eth0 (podobnie do linii 8 z listingu 1).

Zezwalaj na hotplug eth0

Konfiguracja interfejsu statycznego

W celu komunikacji z innymi komputerami w sieci interfejsowi przypisywany jest adres IP. Adres ten jest uzyskiwany dynamicznie (poprzez DHCP) lub ustawiany w sposób stały (konfiguracja statyczna). Dlatego deklaracja interfejsu zaczyna się od słowa kluczowego iface, po którym następuje nazwa logiczna interfejsu sieciowego, typ połączenia i metoda użyta do uzyskania adresu IP. Następny przykład pokazuje to dla interfejsu sieciowego /dev/eth0 ze statycznym adresem IPv4 192.168.1.5.

iface eth0 inet statyczne
adres 192.168.1.5
maska ​​sieci 255.255.255.0
brama 192.168.1.1

Po deklaracji interfejsu zostaniesz poproszony o określenie kilku opcji (nazwa opcji w nawiasach). Obejmuje to takie wartości, jak adres IP (adres), maska ​​sieci (maska ​​sieci), zakres rozgłaszania (rozgłaszanie), metryka routingu dla bramy domyślnej (pomiar), brama domyślna (brama), adres drugiego punktu końcowego (pointtopoint), adres lokalny łącza (hwaddress), rozmiar pakietu (mtu) oraz zakres ważności adresu (scope). Następny przykład pokazuje konfigurację dla IPv6 dla interfejsu sieciowego /dev/enp0s3 [4] .

iface enp0s3 inet6 statyczny
adres fd4e:a32c:3873:9e59:0004::254
maska ​​sieci80
brama fd4e:a32c:3873:9e59:0004::1

Dynamiczna konfiguracja interfejsu przez DHCP

Połączenie z różnymi sieciami wymaga elastyczności. Protokół dynamicznej kontroli hosta ( DHCP ) [5] umożliwia tę elastyczność, a skrypty sieciowe przypisują adres IP interfejsowi sieciowemu, który jest przekazywany z serwera DHCP. Poniższy wiersz pokazuje to dla interfejsu wlan o nazwie /dev/wlan0:

iface wlan0 inet dhcp

#Dla IPv6 użyj tej linii, zamiast:
iface wlan0 inet6 dhcp

Podobnie jak w przypadku konfiguracji statycznej z góry, można ustawić szereg opcji. Te opcje zależą od konfiguracji DHCP. Lista zawiera m.in. żądaną nazwę hosta (nazwa hosta), metrykę dodanych tras (metryka), preferowany czas dzierżawy w godzinach lub sekundach (godziny dzierżawy, czas dzierżawy), identyfikator klienta (klient) czy adres sprzętowy (hwaddress ).

Inne opcje

Plik konfiguracyjny /etc/interfaces umożliwia również ustawienia dla protokołu Bootstrap ( BOOT ) [6] (bootp), PPP (ppp) oraz IPX [7].

Pokazywanie konfiguracji interfejsu

Do wydania 8 systemu Debian GNU/Linux używaj polecenia /sbin/ifconfig, aby wyświetlić konfigurację interfejsu. Zobacz konfigurację pierwszego interfejsu Ethernet poniżej.

Konfiguracja interfejsu za pomocą ifconfig :

Począwszy od wydania 9 polecenie ifconfig nie jest już preinstalowane i zastąpione jego poprzednikiem ip. Zamiast tego użyj polecenia ip addr show.

Konfiguracja interfejsu za pomocą ip:

Włączanie i wyłączanie interfejsu

Jak już opisano powyżej, opcja auto automatycznie włącza interfejs podczas uruchamiania. Istnieją dwa polecenia umożliwiające ręczne włączanie i wyłączanie interfejsu. Do Debiana 8 używaj ifconfig eth0 up lub ifup eth0, aby włączyć interfejs. Od Debiana 9 używaj tylko ifup eth0. Odpowiednikami są ifconfig eth0 down i ifdown eth0. Poniższy obrazek pokazuje domyślne dane wyjściowe podczas włączania interfejsu.

Aktywacja interfejsu za pomocą ifup:

Dodawanie kolejnych opcji

Możliwe jest dodanie dalszych działań w przypadku aktywacji lub dezaktywacji interfejsu. Skrypty te są nazywane skryptami if-pre-up i if-post-down i wchodzą w grę przed włączeniem i po wyłączeniu interfejsu.

Następny przykład pokazuje to w połączeniu z zaporą, która jest aktywna w przypadku, gdy interfejs jest również aktywny. W linii 3 skrypt /usr/local/sbin/firewall-enable.sh jest wywoływany przed aktywacją interfejsu (stąd tag pre-up, aw linii 4 skrypt /usr/local/sbin/firewall-disable.sh jest wywoływana po dezaktywacji interfejsu.

1Zezwalaj na hotplug eth0
2iface eth0 inet dhcp
3pre-up/usr/lokalny/sbin/zapora-włącz.sh
4post-down/usr/lokalny/sbin/firewall-wyłącz.sh

Wniosek

Podstawowa konfiguracja interfejsów sieciowych w systemie Debian GNU/Linux jest porównywalnie łatwa — kilka linijek kodu i gotowe. Więcej informacji na temat dodatkowych opcji można znaleźć w poniższych zasobach.

Linki i referencje

[1] Debian Wiki, konfiguracja sieci
[2] IPv4, Wikipedia
[3] IPv6, Wikipedia
[4] Statyczny adres IP Debiana IPv4 i IPv6
[5] Protokół dynamicznej kontroli hosta (DHCP), Wikipedia
[6] Protokół Bootstrap (BOOTP), Wikipedia
[7] Internetowa wymiana pakietów (IPX), Wikipedia

Dziękuję

Autor dziękuje Axelowi Beckertowi za pomoc i krytyczne uwagi podczas przygotowywania tego artykułu.