Einrichten der IP-Adressierung

LinuxBeginner
Jetzt üben

Einführung

In der Computervernetzung ist eine IP-Adresse (Internet Protocol) eine numerische Kennzeichnung, die jedem Gerät zugewiesen wird, das mit einem Computernetzwerk verbunden ist. Diese Adresse wird für zwei Hauptfunktionen verwendet: die Identifizierung von Hosts oder Netzwerkschnittstellen und die Standortadressierung.

Es gibt zwei primäre Methoden, wie eine IP-Adresse zugewiesen werden kann:

  • DHCP (Dynamic Host Configuration Protocol): Eine IP-Adresse wird automatisch von einem Server im Netzwerk zugewiesen. Dies ist die gängigste Methode für Client-Geräte.
  • Statische IP (Static IP): Die IP-Adresse wird manuell konfiguriert und ändert sich nicht. Dies wird häufig für Server, Drucker oder andere Geräte verwendet, die eine konsistente Adresse benötigen.

In modernen Ubuntu-Systemen wird die Netzwerkkonfiguration durch ein Dienstprogramm namens netplan verwaltet. netplan verwendet einfache YAML-Dateien, um Netzwerkschnittstellen zu beschreiben.

In diesem Lab lernen Sie, wie Sie von einer dynamischen (DHCP) IP-Adresse auf eine statische IP-Adresse umstellen und die Änderungen anschließend rückgängig machen. Dies ist eine grundlegende Fähigkeit für jeden Linux-Systemadministrator.

Überprüfung der aktuellen Netzwerkkonfiguration

Im realen Betrieb kann das Ändern der primären IP-Adresse eines Remote-Servers zu einem Ausschluss führen (Lockout). Um dies zu vermeiden, ist es üblich, die bestehende, per DHCP zugewiesene IP-Adresse in eine statische Adresse umzuwandeln. In diesem Schritt ermitteln Sie die aktuellen Netzwerkeinstellungen Ihrer virtuellen Maschine.

Zeigen Sie zuerst die Netzwerkkonfiguration für die Schnittstelle eth0 mit dem Befehl ip an:

ip addr show eth0

Sie sehen eine Ausgabe, die dieser ähnelt. Beachten Sie die Zeile inet, die Ihre aktuelle IPv4-Adresse und das Subnetzpräfix (die Zahl nach dem /) enthält.

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0d:25:f1 brd ff:ff:ff:ff:ff:ff
    altname enp0s5
    altname ens5
    inet 172.16.50.173/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
       valid_lft 1892159962sec preferred_lft 1892159962sec
    inet6 fe80::216:3eff:fe0d:25f1/64 scope link
       valid_lft forever preferred_lft forever

Als Nächstes finden Sie Ihr Standard-Gateway (Default Gateway). Dies ist der Router, den Ihre VM verwendet, um mit anderen Netzwerken zu kommunizieren.

ip route show

Die Zeile, die mit default via beginnt, zeigt Ihnen die Gateway-Adresse an.

default via 172.16.50.253 dev eth0 proto dhcp src 172.16.50.173 metric 100
172.16.50.0/24 dev eth0 proto kernel scope link src 172.16.50.173 metric 100

Aus der obigen Ausgabe sind die IP-Adresse 172.16.50.173, das Präfix 24 und das Gateway 172.16.50.253. Ihre Werte können abweichen. Stellen Sie daher sicher, dass Sie im nächsten Schritt die Werte aus Ihrer eigenen Terminalausgabe verwenden.

Konfigurieren einer statischen IP-Adresse

Nun werden Sie die Netzwerkkonfigurationsdatei ändern, um eine statische IP-Adresse zuzuweisen. Dies beinhaltet das Deaktivieren von DHCP und das manuelle Festlegen der IP-Adresse, des Gateways und der DNS-Server unter Verwendung der Werte, die Sie gerade ermittelt haben.

Öffnen Sie zuerst die Konfigurationsdatei mit nano:

sudo nano /etc/netplan/01-netcfg.yaml

Ändern Sie nun die Datei so, dass sie Ihre aktuelle IP, Ihr Präfix und Ihr Gateway als statische Werte verwendet. YAML-Dateien reagieren sehr empfindlich auf Einrückungen (Indentation). Stellen Sie daher sicher, dass Sie Leerzeichen und keine Tabs verwenden und das Einrückungsniveau exakt wie gezeigt beibehalten.

Ersetzen Sie die Platzhalter YOUR_IP/PREFIX und YOUR_GATEWAY durch die tatsächlichen Werte, die Sie im vorherigen Schritt gefunden haben.

## This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - YOUR_IP/PREFIX
      routes:
        - to: default
          via: YOUR_GATEWAY
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]
  version: 2

Wenn Ihre IP beispielsweise 172.16.50.173/24 und Ihr Gateway 172.16.50.253 war, würde Ihre Datei wie folgt aussehen:

## This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 172.16.50.173/24
      routes:
        - to: default
          via: 172.16.50.253
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]
  version: 2

Hier ist eine Aufschlüsselung der Konfiguration:

  • dhcp4: false: Dies deaktiviert den automatischen DHCP-Client für IPv4.
  • addresses: Dies legt die statische IP-Adresse und das Subnetz fest.
  • routes: Dieser Abschnitt definiert das Standard-Gateway.
  • nameservers: Dies legt die DNS-Server fest. Hier verwenden wir die öffentlichen DNS-Server von Google.

Nachdem Sie die Änderungen vorgenommen haben, speichern Sie die Datei, indem Sie Ctrl+O drücken, und dann Enter, um den Dateinamen zu bestätigen. Schließlich beenden Sie nano, indem Sie Ctrl+X drücken.

Änderungen mit dem Befehl netplan apply übernehmen

In diesem Schritt werden Sie die neue Netzwerkkonfiguration übernehmen (anwenden). Das bloße Speichern der Konfigurationsdatei reicht nicht aus; Sie müssen netplan anweisen, die neue Konfiguration einzulesen und auf das System anzuwenden.

Dies geschieht mit dem Befehl netplan apply. Dieser Befehl analysiert alle .yaml-Dateien in /etc/netplan/, übersetzt sie in ein vom System verständliches Format und aktiviert die Änderungen sofort.

Da dieser Befehl den Netzwerkstatus des Systems modifiziert, sind sudo-Rechte erforderlich.

Führen Sie den folgenden Befehl in Ihrem Terminal aus:

sudo netplan apply

Hinweis: Nachdem Sie diesen Befehl ausgeführt haben, wird Ihre Verbindung zur LabEx VM möglicherweise kurzzeitig unterbrochen und dann automatisch wiederhergestellt. Sollte die Verbindung nicht von selbst wiederhergestellt werden, aktualisieren Sie bitte Ihre Browserseite.

Wenn der Befehl erfolgreich ist und Ihre YAML-Syntax korrekt ist, wird er ohne jegliche Ausgabe ausgeführt. Wenn Sie eine Fehlermeldung sehen, liegt dies wahrscheinlich an einem Einrückungs- oder Syntaxfehler in Ihrer Datei 01-netcfg.yaml. Falls dies geschieht, öffnen Sie die Datei erneut und überprüfen Sie Ihre Änderungen sorgfältig anhand des Beispiels im vorherigen Schritt.

Statische IP-Konfiguration überprüfen

In diesem Schritt überprüfen Sie, ob die statische IP-Adresse erfolgreich übernommen wurde. Da wir dieselbe IP-Adresse verwendet haben, die die VM bereits besaß, sollte Ihre Verbindung nicht unterbrochen worden sein.

Der beste Weg, die aktuellen IP-Adressen auf einem Linux-System zu überprüfen, ist der Befehl ip. Führen Sie den Befehl ip addr show erneut für die Schnittstelle eth0 aus.

ip addr show eth0

Sie sollten eine Ausgabe sehen, die nahezu identisch mit der in Schritt 1 ist. Achten Sie auf die Zeile inet, die die IPv4-Adresse anzeigt. Beachten Sie, dass Schlüsselwörter wie dynamic und metric nun fehlen und valid_lft auf forever gesetzt ist.

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0d:25:f1 brd ff:ff:ff:ff:ff:ff
    altname enp0s5
    altname ens5
    inet 172.16.50.173/24 brd 172.16.50.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::216:3eff:fe0d:25f1/64 scope link
       valid_lft forever preferred_lft forever

Der wesentliche Unterschied besteht darin, dass die IP-Adresse nun statisch von netplan konfiguriert wird und nicht mehr von einem DHCP-Server geleast wird. Dies bestätigt, dass Ihre statische IP-Konfiguration erfolgreich war.

Zurück zu DHCP wechseln

In diesem letzten Schritt werden Sie die Netzwerkkonfiguration wieder auf die Verwendung von DHCP umstellen. Dies ist nützlich, wenn Sie keine statische IP-Adresse mehr benötigen oder möchten, dass das Netzwerk Adressen automatisch verwaltet. Der Vorgang ist die Umkehrung dessen, was Sie zuvor getan haben.

Öffnen Sie zunächst die Konfigurationsdatei erneut mit nano:

sudo nano /etc/netplan/01-netcfg.yaml

Löschen Sie nun die Zeilen der statischen Konfiguration und setzen Sie dhcp4 wieder auf true. Die gesamte Datei sollte wie die einfache, ursprüngliche Version aussehen:

## This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: true
  version: 2

Speichern Sie die Datei (Strg+O, Enter) und beenden Sie nano (Strg+X).

Wenden Sie als Nächstes die Änderungen genauso an, wie Sie es zuvor getan haben:

sudo netplan apply

Hinweis: Nachdem Sie diesen Befehl ausgeführt haben, wird Ihre Verbindung zur LabEx VM möglicherweise kurzzeitig unterbrochen und dann automatisch wiederhergestellt. Sollte die Verbindung nicht von selbst wiederhergestellt werden, aktualisieren Sie bitte Ihre Browserseite.

Überprüfen Sie abschließend, ob das System nun eine vom DHCP zugewiesene IP-Adresse verwendet. Führen Sie erneut den Befehl ip addr show eth0 aus:

ip addr show eth0

Die Ausgabe zeigt nun dieselbe inet-Adresse wie zuvor, aber dieses Mal wurde sie automatisch vom DHCP-Server des Netzwerks zugewiesen, was durch die Rückkehr des Schlüsselworts dynamic und eine spezifische Lease-Zeit (valid_lft) angezeigt wird. Dies bestätigt, dass Sie erfolgreich auf DHCP zurückgeschaltet haben.

Zusammenfassung

Herzlichen Glückwunsch zum Abschluss des Labs! Sie haben erfolgreich Netzwerkeinstellungen auf einem modernen Ubuntu-System konfiguriert.

In diesem Lab haben Sie gelernt, wie Sie:

  • Die netplan-Konfigurationsdatei unter /etc/netplan/ lokalisieren.
  • Den nano-Editor mit sudo verwenden, um Systemkonfigurationsdateien zu bearbeiten.
  • Die grundlegende YAML-Syntax für die Einstellung einer statischen IP-Adresse im Vergleich zur Verwendung von DHCP verstehen.
  • Neue Netzwerkkonfigurationen mit dem Befehl sudo netplan apply anwenden.
  • Die aktuelle IP-Adresse einer Netzwerkschnittstelle mit dem Befehl ip addr show überprüfen.

Dies sind wesentliche Fähigkeiten für die Verwaltung jedes Linux-Servers oder Desktops, die Ihnen die Kontrolle darüber geben, wie sich Ihr System in einem Netzwerk identifiziert.