Wie man Netzwerkschnittstellen mit NMCLI auf Centos 7.6 konfiguriert
Das erste, was nach der Installation eines Linux-Betriebssystems als Server geschieht, ist die Konfiguration der Netzwerkschnittstelle für den Fernzugriff, und von Ihrer Workstation/Laptop und einer Tasse Kaffee können Sie Ihren Server bequem verwalten.
In diesem Tutorial verwenden wir nmcli, was für Network Manager Command Line Tool steht, um unsere Netzwerkschnittstellen zu konfigurieren.
Vorbemerkung
Die Besonderheit dieses Befehls ist, dass Sie keine Anforderungen benötigen, er wird jedoch als Root ausgeführt.
Das Grundformat von nmcli:
nmcli [OPTIONS] OBJECT { COMMAND | help }
OBJECT könnte eine dieser Optionen sein: Verbindung, Gerät, allgemein, Netzwerk, Funk, Agent und Monitor, und wir können ein Präfix dieser Optionen verwenden:
nmcli -p Vorrichtung –> nmcli -p dev –> nmcli -p d
Hinweis: -p steht für –pretty ist eine Option
In diesem Teil des Tutorials werden wir zwei Objekte behandeln: Anschluss und Gerät
Netzwerk-Gerät
Wir können dieses Objekt mit den am häufigsten verwendeten Befehlen verwenden: status, show und set
Wir werden mit der Anzeige unserer Schnittstellen (Geräte) beginnen, wenn wir viele mit ihrem Status haben:
nmcli device status
Ausgabe:
Die erste Spalte ist der Name der Schnittstellen, meine physische Schnittstelle ist ens33 sie kann sich von Ihrer Umgebung unterscheiden, die letzte Spalte ist der Name des Profils, das auch „Verbindungsprofil“ genannt wird.
Ein anderer Weg:
nmcli -p device
Die Option -p steht für Pretty (hübsch) ist eine von Menschen lesbare Ausgabe.
Ausgabe :
Wir verwenden nmcli dev show, um alle Informationen über alle Schnittstellen aufzulisten (es sind eine Menge Informationen), also werden wir eine Schnittstelle angeben, die wir ens33 verwenden werden:
nmcli dev show ens33
Ausgabe:
Alle Informationen hier sind sehr explizit, wir müssen diese Ausgabe nicht durchgehen.
Wir könnten alle Geräte, die mit nmcli verwaltet werden sollen oder nicht, mit dem set-Befehl einstellen.
Um unsere Geräte aufzulisten und zu überprüfen, ob sie verwaltet werden oder nicht.
nmcli device status
Ausgabe:
Beachten Sie die Spalte STATE.
Nun werde ich ens33 auf eine nicht verwaltete Schnittstelle umstellen.
sudo nmcli device set ens33 managed no
Ausgabe:
Beachten Sie, dass wir die ens33-Schnittstelle nicht mehr mit NetworkManager verwalten können, das Gerät aber immer noch angeschlossen ist.
Lassen Sie uns die Verwaltung der Schnittstelle ens33 ermöglichen:
sudo nmcli device set ens33 managed yes
Überprüfen Sie den Status meiner Schnittstellen:
nmcli device status
Ausgabe :
Schließlich werden wir sehen, wie wir unsere Geräte (Schnittstellen) mit Trennungs- und Verbindungsbefehlen aktivieren und deaktivieren können.
sudo nmcli dev disconnect ens33
Sie sollten eine erfolgreiche Nachricht haben: Gerät „ens33“ erfolgreich getrennt.
Zeigen Sie den Status der Geräte an:
nmcli dev status
Ausgabe:
Beachten Sie, dass das Gerät ens33 rot markiert ist, der Status ist getrennt und es ist kein Verbindungsprofil angebracht. Das Gerät wird nach einem Neustart automatisch aktiviert oder wir können es manuell aktivieren.
Um unsere Geräte zu aktivieren:
sudo nmcli dev connect ens33
Ausgabe:
Die Nachricht mit erfolgreicher Aktivierung und einer UUID der Profilverbindung am Ende.
Status unserer Schnittstellen:
nmcli dev status
Ausgabe:
Die Schnittstelle ist nicht mehr deaktiviert.
Profil-Verbindung
Nun wollen wir uns auf das Profil konzentrieren, indem wir die Informationen zeigen:
nmcli connection show
Ausgabe:
Die erste Spalte ist der Name der Verbindung (nicht der Gerätename), die zweite Spalte ist die UUID oder Universal Unique Identifier und die letzte Spalte ist der Name des Geräts.
Profile sind die gespeicherte Konfiguration von Schnittstellen, die in /etc/sysconfig/network-scripts/ gespeichert ist und mit einem Präfix ifcfg- und dann dem Namen des Profils benannt wird, mal sehen:
Die Profile mit den Namen der Geräte werden automatisch generiert, ifcfg-amine wird manuell erstellt.
Nun wollen wir einige Profile erstellen.
Hinweis: Ich habe zwei physische Schnittstellen, die an meine virtuelle Maschine ens33 und ens37 angeschlossen sind.
Wir werden ein Ethernet-Konfigurationsprofil mit einer dynamischen IP-Adresse erstellen.
sudo nmcli con add type ethernet con-name HomeDHCP ifname ens37
Die Schnittstelle ist vom Typ Ethernet, HomeDHCP ist der Name des Profils, ens37 ist die Schnittstelle, an die das Profil angeschlossen ist.
Ausgabe:
Lassen Sie sich jetzt Profile anzeigen:
Beachten Sie, dass das Profil hier zwar erstellt, aber nicht an die Schnittstelle von ens37 angehängt ist, wir müssen unser neues Profil aktivieren, indem wir es aktivieren:
sudo nmcli con up HomeDHCP
Bei der Bezeichnung des Profils ist die Groß- und Kleinschreibung zu beachten.
Ausgabe:
Lassen Sie noch einmal sehen:
Beachten Sie, dass die erste Spalte NAME HomeDHCP an die Schnittstelle von ens37 angehängt ist. Und das Profil ens37 (automatisch generiert) ist an keine der Schnittstellen gebunden.
Schauen wir mal in das Profil hinein:
nmcli con show HomeDHCP
Und überprüfen Sie die in /etc/sysconfig/network-scripts/ifcfg-HomeDHCP erstellte Datei
Deaktivieren wir das HomeDHCP-Profil über die ens37-Schnittstelle.
sudo nmcli con down HomeDHCP
Ausgabe :
Beachten Sie, dass das Standardprofil an die ens37-Schnittstelle angehängt ist.
Lassen Sie uns das HomeDHCP-Profil löschen:
sudo nmcli con delete HomeDHCP
Ausgabe:
Kein HomeDHCP-Profil mehr.
Lassen Sie uns nun ein Ethernet-Konfigurationsprofil mit dem Namen HomeStatic mit statischer IP-Adresse erstellen.
sudo nmcli con add type ethernet con-name HomeStatic ifname ens37 ip4 192.168.0.10/24 gw4 192.168.0.1
Ausgabe:
Prüfen Sie unsere Schnittstellenverbindung:
nmcli con s
Ausgabe:
Denken Sie daran, dass wir das Profil an die Schnittstelle anhängen müssen, indem wir das Profil aktivieren:
sudo nmcli con up HomeStatic
Ausgabe:
Zeigen Sie die Profilkonfiguration an:
nmcli dev show ens33
Ausgabe:
Ein anderer Weg, aber es gibt viele Informationen, so dass wir uns auf das konzentrieren werden, was wir sehen wollen.
Ausgabe:
Beachten Sie, dass wir hier keine Informationen über DNS-Server haben, daher werden wir einen dns-Server mit einem anderen Befehl hinzufügen:
sudo nmcli con modify HomeStatic ipv4.dns "8.8.8.8 8.8.4.4"
prüfen :
nmcli c s HomeStatic
Eine weitere Möglichkeit, eine dns-Server-Adresse hinzuzufügen:
sudo nmcli c mod HomeStatic +ipv4.dns "192.168.0.1"
Und natürlich eine dns-Server-Adresse zu löschen:
sudo nmcli c mod HomeStatic -ipv4.dns "192.168.0.1"
Bis jetzt gehen wir die grundlegenden Operationen des Netzwerkes durch, um mit unseren Servern mit diesen beiden Objekten zu kommunizieren, und im nächsten Tutorial werden wir weitermachen und versuchen, mit einem Skript zu enden, das zusammenfasst, was wir getan haben.