Statische IP-Adressen mit NetworkManager unter RHEL/CentOS konfigurieren
Konfigurieren Sie eine dauerhafte statische IP unter RHEL oder CentOS mit `nmcli`, einschließlich Gateway, DNS, Aktivierung und Rollback-Überprüfungen.
Statische IP-Adressen mit NetworkManager unter RHEL/CentOS konfigurieren
Netzwerke sind eine der ersten Dinge, die Sie auf einem Server richtig einrichten müssen. Unter RHEL und CentOS kann NetworkManager eine dauerhafte statische IP-Adresse konfigurieren, ohne dass Sie Schnittstellendateien manuell bearbeiten müssen, was bei neueren Enterprise Linux-Versionen sicherer ist.
Diese Anleitung führt durch die nmcli-Befehle zum Festlegen einer Adresse, eines Gateways und von DNS-Servern, zum Aktivieren des Profils und zur Überprüfung, ob die Änderung einen Neustart übersteht.
NetworkManager und nmcli verstehen
Bevor wir in die Konfigurationsschritte eintauchen, klären wir die Kernkomponenten, die wir verwenden werden:
Was ist NetworkManager?
NetworkManager ist ein Daemon, der Netzwerkeinstellungen verwaltet und die Verwaltung von Netzwerkverbindungen erleichtert. Er kann verschiedene Verbindungstypen verwalten, darunter Ethernet, WLAN, mobiles Breitband und VPNs. Er erkennt und konfiguriert Netzwerkgeräte automatisch und versucht, eine aktive Netzwerkverbindung aufrechtzuerhalten, wobei er bei Bedarf zwischen verfügbaren Verbindungen wechselt. Für Server stellt er sicher, dass Ihre Netzwerkschnittstellen korrekt konfiguriert sind und über Neustarts hinweg bestehen bleiben.
Was ist nmcli?
nmcli ist der Befehlszeilen-Client für NetworkManager. Er ermöglicht es Ihnen, NetworkManager zu steuern und Netzwerkverbindungen über das Terminal zu konfigurieren. Dies ist besonders in headless Serverumgebungen nützlich, in denen keine grafische Oberfläche verfügbar ist. nmcli-Befehle sind intuitiv und bieten eine robuste Möglichkeit, mit dem gesamten Funktionsumfang von NetworkManager zu interagieren, von der Anzeige des Netzwerkgerätestatus bis hin zum Erstellen und Ändern komplexer Verbindungsprofile.
Voraussetzungen
Um dieser Anleitung zu folgen, stellen Sie sicher, dass Sie Folgendes haben:
- Root-Rechte: Sie benötigen
sudo-Zugriff oder müssen als Root-Benutzer angemeldet sein, um Netzwerkkonfigurationsänderungen vorzunehmen. - Systeminformationen: Die statische IP-Adresse, Subnetzmaske (oder CIDR-Notation), das Standard-Gateway und die DNS-Server-IP-Adressen, die Sie verwenden möchten.
- Identifizierte Netzwerkschnittstelle: Kenntnis des Netzwerkschnittstellennamens (z. B.
enp0s3,eth0), den Sie konfigurieren möchten. Wir werden zeigen, wie Sie dies finden.
Schritt-für-Schritt-Konfiguration einer statischen IP-Adresse
Hier erfahren Sie, wie Sie eine statische IP-Adresse mit nmcli konfigurieren.
Schritt 1: Identifizieren Sie Ihre Netzwerkschnittstelle
Zunächst müssen Sie den Namen der Netzwerkschnittstelle kennen, die Sie konfigurieren möchten. Sie können alle aktiven Netzwerkgeräte und deren Status mit nmcli device oder nmcli device status auflisten:
nmcli device status
Beispielausgabe:
DEVICE TYPE STATE CONNECTION
enp0s3 ethernet connected System enp0s3
lo loopback unmanaged --
In diesem Beispiel ist enp0s3 unsere Ethernet-Schnittstelle. Notieren Sie sich Ihren Schnittstellennamen.
Schritt 2: Erstellen Sie ein neues Netzwerkverbindungsprofil
Es ist im Allgemeinen eine gute Praxis, ein neues Verbindungsprofil für Ihre statische IP-Konfiguration zu erstellen, anstatt ein vorhandenes DHCP-verwaltetes direkt zu ändern, insbesondere wenn Sie möglicherweise einfach zurückkehren möchten. Ein Verbindungsprofil speichert alle Einstellungen für eine bestimmte Netzwerkverbindung.
Um ein neues Ethernet-Verbindungsprofil zu erstellen, verwenden Sie den Befehl nmcli connection add. Sie geben den Verbindungstyp, einen beschreibenden Verbindungsnamen (con-name) und den Schnittstellennamen (ifname) an.
sudo nmcli connection add type ethernet con-name my-static-eth ifname enp0s3
type ethernet: Gibt eine Ethernet-Verbindung an.con-name my-static-eth: Weist diesem neuen Verbindungsprofil einen Namen zu. Wählen Sie etwas Beschreibendes.ifname enp0s3: Verknüpft dieses Verbindungsprofil mit der physischen Netzwerkschnittstelleenp0s3.
Alternative: Ändern eines vorhandenen Profils
Wenn Sie eine vorhandene Verbindung ändern möchten (z. B. System enp0s3 aus der nmcli device status-Ausgabe), würden Sie nmcli connection modify mit dem vorhandenen con-name verwenden.
sudo nmcli connection modify "System enp0s3" # Ersetzen Sie dies mit Ihrem Verbindungsnamen
Hinweis: Der Einfachheit und Klarheit halber geht diese Anleitung davon aus, dass Sie ein neues Verbindungsprofil mit dem Namen my-static-eth erstellt haben.
Schritt 3: Konfigurieren Sie IPv4-Einstellungen (IP, Gateway, DNS)
Konfigurieren wir nun die statische IP-Adresse, das Gateway und die DNS-Server für unser Verbindungsprofil my-static-eth. Es ist entscheidend, die IPv4-Methode auf manual zu setzen, um DHCP zu deaktivieren.
Festlegen der IP-Adresse und des Gateways
Verwenden Sie die Eigenschaften ipv4.addresses und ipv4.gateway. Die IP-Adresse sollte in CIDR-Notation angegeben werden (z. B. 192.168.1.100/24).
sudo nmcli connection modify my-static-eth ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1
ipv4.addresses 192.168.1.100/24: Setzt die statische IP-Adresse auf192.168.1.100mit einer 24-Bit-Subnetzmaske (255.255.255.0).ipv4.gateway 192.168.1.1: Setzt das Standard-Gateway für das Netzwerk.
Festlegen von DNS-Servern
Geben Sie eine oder mehrere DNS-Server-IP-Adressen an. Trennen Sie mehrere Adressen durch Kommas.
sudo nmcli connection modify my-static-eth ipv4.dns "1.1.1.1,8.8.8.8"
Wenn Ihre Organisation interne DNS verwendet, verwenden Sie stattdessen diese Resolver-IPs. Ein privater Server könnte beispielsweise 192.168.1.10 und 192.168.1.11 verwenden.
Deaktivieren Sie DHCP für IPv4
Setzen Sie die IPv4-Methode auf manual; andernfalls versucht NetworkManager möglicherweise weiterhin DHCP für dieses Profil.
sudo nmcli connection modify my-static-eth ipv4.method manual
Wenn der Server IPv6 für diese Verbindung nicht verwenden soll, deaktivieren Sie es explizit:
sudo nmcli connection modify my-static-eth ipv6.method disabled
Tun Sie dies nur, wenn Ihr Netzwerk nicht auf IPv6 angewiesen ist.
Schritt 4: Aktivieren Sie das statische Profil
Bringen Sie die neue Verbindung hoch. Wenn Sie über SSH arbeiten, führen Sie dies von der Konsolenverbindung aus oder planen Sie ein Rollback, bevor Sie die aktive Schnittstelle ändern.
sudo nmcli connection up my-static-eth
Wenn ein älteres DHCP-Profil noch auf derselben Schnittstelle aktiv ist, schalten Sie es nach Bestätigung des statischen Profils aus:
sudo nmcli connection down "System enp0s3"
Ersetzen Sie "System enp0s3" durch den tatsächlichen alten Verbindungsnamen aus nmcli connection show.
Schritt 5: Überprüfen Sie Adresse, Route und DNS
Überprüfen Sie die aktive Verbindung:
nmcli connection show --active
Bestätigen Sie die IP-Adresse:
ip addr show enp0s3
Bestätigen Sie die Standardroute:
ip route
Sie sollten eine Route ähnlich der folgenden sehen:
standard via 192.168.1.1 dev enp0s3
Überprüfen Sie die von NetworkManager verwalteten DNS-Einstellungen:
nmcli device show enp0s3 | grep DNS
Testen Sie dann die tatsächliche Konnektivität:
ping -c 3 192.168.1.1
ping -c 3 1.1.1.1
getent hosts example.com
Der erste Befehl überprüft das Gateway, der zweite die ausgehende IP-Konnektivität und der dritte die DNS-Auflösung.
Sicherere Remote-Änderungen
Statische IP-Änderungen können Ihre SSH-Sitzung trennen, wenn Sie die Adresse oder das Gateway falsch eingeben. Bevor Sie das Profil remote anwenden, halten Sie eine zweite Sitzung offen und erwägen Sie, ein Rollback zu planen:
sudo shutdown -r +5 "Netzwerk-Rollback-Neustart"
Wenn die neue statische IP funktioniert, brechen Sie den Neustart ab:
sudo shutdown -c
Auf Systemen, auf denen ein Neustart nicht akzeptabel ist, erstellen Sie einen temporären at-Job oder verwenden Sie Out-of-Band-Konsolenzugriff, damit Sie sich erholen können, wenn die Route falsch ist.
Fazit
Verwenden Sie nmcli-Verbindungsprofile für dauerhafte statische IP-Konfiguration unter RHEL und CentOS. Der minimale Arbeitssatz ist ipv4.addresses, ipv4.gateway, ipv4.dns und ipv4.method manual; der sicherste Arbeitsablauf besteht darin, das Profil zu aktivieren, das Route- und DNS-Verhalten zu überprüfen und dann das alte DHCP-Profil erst zu entfernen oder zu deaktivieren, nachdem der Server unter seiner neuen Adresse erreichbar ist.