Dieses Tutorial erklärt, wie Sie eine statische IP-Adresse auf einem Ubuntu-System über die Befehlszeile einrichten. Es deckt die Netzwerkkonfiguration für alle aktuellen Versionen von Ubuntu ab und enthält Anweisungen zum Konfigurieren einer statischen IP-Adresse, zum Festlegen des Hostnamens und zum Konfigurieren der Namensauflösung.
Netzwerkkonfiguration auf Ubuntu 20.04 LTS und Ubuntu 18.04 LTS
Die Netzwerkkonfiguration in Ubuntu wird mit einem Tool namens netplan vorgenommen, es ersetzt die traditionelle Datei /etc/network/interfaces.
Konfiguriere eine statische IP-Adresse mit Netplan auf Ubuntu
Hier die Schritte zum Konfigurieren einer statischen IP-Adresse mit Netplan. Die Netplan-Konfigurationsdateien befinden sich im Verzeichnis /etc/netplan/ . Die Standardkonfigurationsdatei ist /etc/netplan/01-netcfg.yaml .
Öffnen Sie die Netzwerkkonfigurationsdatei mit einem Editor. Der Dateiname der Netplan-Konfiguration unterscheidet sich je nach Ubuntu-Version.
Ubuntu 20.04 :
sudo nano /etc/netplan/00-installer-config.yaml
Ubuntu 18.04 :
sudo nano /etc/netplan/01-netcfg.yaml
Die Konfigurationssyntax ist in der Programmiersprache Python (.yaml-Format), daher ist die Einrückung der Zeilen wichtig!
Der Inhalt der Datei ist unter Ubuntu 20.04 und 18.04 gleich.
Hier ist ein Beispiel für eine statische IPv4-Adresse 192.168.1.100 auf der ersten Netzwerkschnittstelle ens33 und Gateway-IP 192.168.1.1 . Der Server verwendet die kostenlosen Google-DNS-Server 8.8.8.8 und 8.8.4.4 bis zur Namensauflösung.
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
Oder als Screenshot von einem Ubuntu-Server:
Eine IPv6-Adresse kann in den Adressen hinzugefügt werden Zeile, getrennt durch ein Komma. Beispiel:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24, '2001:1::1/64']
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
Es ist wichtig, dass Sie die IPv6-Adresse in einfache Anführungszeichen setzen, sonst erhalten Sie einen Syntaxfehler.
Um die Änderungen zu übernehmen, führen Sie Folgendes aus:
sudo netplan apply
Oder verwenden Sie es mit dem Schalter --debug, um eine nützliche Ausgabe zu erhalten, wenn das Parsen der Netplan-Konfigurationsdatei erfolgreich war.
sudo netplan --debug apply
Konfiguriere eine DHCP-Adresse mit Netplan
Hier ist die Konfiguration zum Abrufen der Netzwerkkonfiguration für IPv4 und IPv6 von einem DHCP-Server.
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: yes
dhcp6: yes
Um die Änderungen zu übernehmen, führen Sie Folgendes aus:
sudo netplan apply
Weitere Netplan-Konfigurationsoptionen
Netplan ist ein komplexes neues Konfigurationssystem zur Konfiguration von Netzwerkkarten, virtuellen Geräten, VLANs und Bridges in Ubuntu 18.04. Weitere Beispiele und eine ausführliche Erläuterung der Syntax finden Sie auf der Manpage.
Netzwerkkonfiguration auf Ubuntu 12.04–17.04 (inkl. Ubuntu 16.04 LTS)
Schritt 1:Netzwerkschnittstelle konfigurieren
In diesem Schritt konfigurieren Sie Ihre Netzwerkschnittstelle manuell, indem Sie die folgenden Dateien mit Ihrem bevorzugten Texteditor (nano gedit vi) bearbeiten. Für dieses Beispiel verwende ich den „nano“-Editor. Sie können die entsprechende Datei bearbeiten, indem Sie den folgenden Befehl in das Terminal eingeben:
Sie können direkt aus dieser Zeile kopieren und einfügen.
sudo nano /etc/network/interfaces
Geben Sie Ihr Root-Passwort ein, sobald Ihr bevorzugter Editor die Datei öffnet, können Sie dies auf älteren Ubuntu-Versionen sehen:
auto lo eth0 iface lo inet loopback iface eth0 inet dynamic
Ubuntu-Systeme mit systemd (wie Ubuntu 16.04 und neuer), die Netzwerkschnittstelle heißt jetzt ens33 statt eth0 und das Wort „dynamisch“ wurde durch „dhcp“ ersetzt.
Eine Konfiguration, bei der die IP-Adresse automatisch per DHCP zugewiesen wird, sieht folgendermaßen aus:
# 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 ens33
iface ens33 inet dhcp
Statisch konfigurierte Netzwerkkarten haben in älteren Ubuntu-Versionen einen Abschnitt wie diesen:
auto lo eth0 iface lo inet loopback iface eth0 inet static address xxx.xxx.xxx.xxx(enter your ip here) netmask xxx.xxx.xxx.xxx gateway xxx.xxx.xxx.xxx(enter gateway ip here,usually the address of the router)
Hier ist ein Beispiel für eine ältere Ubuntu-Version:
auto lo eth0 iface lo inet loopback iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1
Und hier ein Beispiel für Ubuntu 16.04 und neuer:
# 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
# test
# The primary network interface
auto ens33
iface ens33 inet static
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
Und hier die komplette Netzwerkkonfigurationsdatei von einem Ubuntu 16.04 System.
Wenn Sie den „nano“-Editor verwenden, um die Konfigurationsdatei zu bearbeiten, geben Sie Strg+x ein, um die Änderungen zu speichern.
Modifizierten Puffer speichern (ANTWORT "Nein" WIRD ÄNDERUNGEN ZERSTÖREN) ?
<---Geben Sie "y" ein
Zu schreibender Dateiname:Interfaces
<---ENTER
Schritt 2:DNS-Server konfigurieren
Änderungen in /etc/resolv.conf sind nur auf Systemen mit Ubuntu <14.04 erforderlich, für neuere Ubuntu-Versionen werden die Nameserver in der /etc/network/interfaces-Datei oder der netplan-Konfigurationsdatei konfiguriert.
a) Ubuntu 20.04
Öffnen Sie die Netzplan-Konfigurationsdatei mit einem Editor. In diesem Beispiel verwende ich den Nano-Editor:
sudo nano /etc/netplan/00-installer-config.yaml
Ich habe die IP-Adressen der DNS-Server fett markiert:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
b) Ubuntu 18.04
Öffnen Sie die Netzplan-Konfigurationsdatei mit dem Nano-Editor:
sudo nano /etc/netplan/01-netcfg.yaml
Ich habe die IP-Adressen der DNS-Server fett markiert:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
c) Ubuntu-Versionen 14.04 und 16.04
Öffnen Sie die Datei /etc/network/interfaces erneut und fügen Sie direkt nach der Gateway-Zeile eine Zeile dns-nameservers 8.8.8.8 hinzu.
sudo nano /etc/network/interfaces
auto lo iface lo inet loopback iface ens33 inet static address xxx.xxx.xxx.xxx(enter your ip here) netmask xxx.xxx.xxx.xxx gateway xxx.xxx.xxx.xxx(enter gateway ip here,usually the address of the router) dns-nameservers 8.8.8.8
Die Nameserver 8.8.8.8 und 8.8.4.4 werden von Google zur öffentlichen Nutzung bereitgestellt, sodass Sie sie in Ihrer Netzwerkkonfiguration verwenden können.
Wenn Sie den „nano“-Editor verwenden, geben Sie Strg+x ein, um die Änderungen zu speichern.
Modifizierten Puffer speichern (ANTWORT "Nein" WIRD ÄNDERUNGEN ZERSTÖREN) ?
<---Geben Sie "y" ein
Zu schreibender Dateiname:Interfaces
<---ENTER
d) Ubuntu-Versionen <14.04
In diesem Schritt konfigurieren Sie Ihre DNS-Konfigurationsdatei manuell.
sudo nano /etc/resolv.conf
Sobald Ihr Editor die Datei öffnet, möchten Sie die folgenden Informationen eingeben...
nameserver xxx.xxx.xxx.xxx(enter your dns server ip) nameserver xxx.xxx.xxx.xxx(enter your alt dns server ip)
Wenn Sie den „nano“-Editor verwenden, geben Sie Strg+x ein, um die Änderungen zu speichern.
Modifizierten Puffer speichern (ANTWORT "Nein" WIRD ÄNDERUNGEN ZERSTÖREN) ?
<---Geben Sie "y" ein
Zu schreibender Dateiname:resolv.conf
<---ENTER
Hier ist ein Beispiel:
nameserver 8.8.8.8 nameserver 8.8.4.4
Schritt 3:Netzwerk neu starten
Starten Sie Ihre Netzwerkschnittstelle manuell mit den neuen Einstellungen neu.
Für Ubuntu 20.04 und 18.04 verwenden Sie den Befehl netplan, um die Änderungen zu übernehmen und das Netzwerk neu zu starten. Der Befehl lautet:
sudo netplan apply
Für die Ubuntu-Versionen 14.04 und 16.04 verwenden wir stattdessen systemctl:
systemctl restart [email protected]
An dieser Stelle können Sie überprüfen, ob die Einstellungen korrekt sind:
ifconfig
Wenn alles korrekt ist, erhalten Sie dieses Ergebnis.
eth0 Link encap:Ethernet direcciónHW 00:33:27:46:2v:34
Direc. inet:192.168.1.101 Difus.:0.0.0.0 Másc:255.255.255.0
...
Verwenden Sie für Ubuntu <14.04 das Netzwerk-Init-Skript:
sudo /etc/init.d/networking restart
Dies sollte ein Ergebnis zurückgeben, das wie folgt aussieht:
*Reconfiguring network interfaces… [OK]
Hostnamen konfigurieren
Der Hostname eines Ubuntu Servers oder Desktops wird in den Dateien /etc/hostname konfiguriert und /etc/hosts . Die Datei /etc/hostname legt den tatsächlichen System-Hostnamen fest, während /etc/hosts für die lokale Namensauflösung verwendet wird.
In diesem Beispiel ändere ich den Hostnamen meines Systems in obelix.example.com.
Bearbeiten Sie zunächst die Datei /etc/hostname
sudo nano /etc/hostname
Die Hostnamendatei enthält nur den lokalen Teil des Hostnamens. Der lokale Teil hier ist "obelix". Ändern Sie den Inhalt der Datei /etc/hostname in:
obelix
und speichern Sie die Datei. Die Hostnamen-Datei, wie sie nach der Bearbeitung in nano aussieht:
Öffnen Sie dann die Datei /etc/hosts mit einem Editor:
sudo nano /etc/hosts
und ändern Sie die Zeile, die mit der IP-Adresse des Systems beginnt, wie folgt:
192.168.1.100 obelix.example.com obelix
Hier ein Screenshot der /etc/hosts Datei.
Das Format ist wie folgt:
[IP-Adresse] [vollständiger Hostname inkl. domain] [lokaler Teil des Hostnamens]
Starten Sie abschließend das System neu, um die Änderung des Hostnamens zu übernehmen.