Netzwerkschnittstellen sind heutzutage ein absolut wichtiger Bestandteil jedes Unternehmens. Von Tante-Emma-Läden bis hin zu Fortune-100-Unternehmen nutzen alle das Netzwerk für Logistik und Kommunikation. Die meisten, wenn nicht alle dieser Unternehmen können ihren Gewinn auf irgendeine Weise direkt mit ihrem Netzwerk in Verbindung bringen – wenn das Netzwerk ausfällt oder jemand versehentlich die falsche Schnittstelle einschaltet, ist Geld auf dem Tisch. Aus diesem Grund muss der System-/Netzwerkadministrator bei jeder Arbeit an oder in der Nähe der Netzwerkschnittstellen sorgfältig aufpassen.
Eine der grundlegendsten und manchmal übersehenen Aufgaben kann die Namenskonvention für die verschiedenen Schnittstellen sein, auf die Sie sich täglich verlassen. Ich habe mit kleinen Unternehmen gearbeitet, die nur ein oder zwei Schnittstellen für ihre gesamte Umgebung hatten. In diesem Fall ist eine Namenskonvention weniger problematisch. In größeren Unternehmensumgebungen ist die Benennung Ihrer Netzwerkschnittstellen jedoch für den langfristigen Erfolg von entscheidender Bedeutung. Stellen Sie sich vor, wie einfach es wäre, einen Fehler zu machen, weil alle Ihre Schnittstellen ähnlich benannt sind.
Aber kein Grund zur Panik! Die brillante Linux/Unix-Community sah dieses Problem kommen und entwickelte mehrere Möglichkeiten, es zu vermeiden. Ich möchte einen Blick auf drei verschiedene Befehle werfen:nameif
, ip link
, und ifrename
. Sie können jedes dieser Tools verwenden, um Ihre Schnittstellen auf verschiedene Weise zu benennen und mit ihnen zu interagieren.
nameif
Der nameif
command ist ein älterer Befehl, der offiziell veraltet ist. Es gibt jedoch immer noch diejenigen, die es für bestimmte Aufgaben verwenden. Das einzige Ziel dieses Befehls ist es, eine Schnittstelle gemäß der MAC-Adresse des/der Geräte(s) zu benennen. Zum Beispiel:
[root@rhel ~]# nameif -c /etc/mactab -s 08:00:27:30:52:a7
Das -c
Mit der Option können Sie angeben, aus welcher Konfigurationsdatei Sie lesen möchten. Standardmäßig wird /etc/mactab
verwendet . Das -s
Flag teilt dem System einfach mit, dass Fehlermeldungen an das Syslog gesendet werden sollen. Geben Sie ihm dann die MAC-Adresse der Schnittstelle, die Sie umbenennen. Leichter Tag.
Beachten Sie, dass Sie nameif
ausführen müssen bevor Sie die Schnittstelle aufrufen, sonst schlägt sie fehl.
ifrename
Netzwerkschnittstellennamen sind standardmäßig dynamisch und werden nach dem Prinzip „Wer zuerst kommt, mahlt zuerst“ zugewiesen: eth0
, eth1
, eth2
, und so weiter. Der ifrename
Mit dem Tool können Sie Ihren Schnittstellen einen einheitlichen Namen zuweisen. Sie können dies auf verschiedene Arten einrichten. Die häufigste Verwendung hier ist jedoch, den Namen basierend auf – Sie haben es erraten – der MAC-Adresse festzulegen. Dies ist sinnvoll, da MAC-Adressen für das Gerät eindeutig sind. Ähnlich wie nameif
müssen Sie ifrename
ausführen bevor die Schnittstellen hochgefahren werden, um Ausfälle zu vermeiden. Dieses Tool zieht auch Daten aus Konfigurationsdateien; diesmal verwenden wir jedoch /etc/iftab
(Falls nicht anders angegeben). Schauen wir uns an, wie man es benutzt.
Syntax:[root@rhel ~]# ifrename [-c Konfigurationsdatei] [-i Schnittstelle] [-n neuer Name]
-c
- ermöglicht es Ihnen, eine andere Konfigurationsdatei als /etc/iftab
anzugeben
-i
- ermöglicht es Ihnen, nur eine bestimmte Schnittstelle statt aller Systemschnittstellen umzubenennen
-n
- ermöglicht es Ihnen, den neuen Namen der Schnittstelle anzugeben (mit -i
verwenden )
-D
- Ermöglicht dem Benutzer, in den "Trockenlauf"-Modus zu wechseln. Hier, ifrename
ändert den Namen der Schnittstelle nicht. Es druckt nur den neuen Namen und zurück. Dies ist eine großartige Möglichkeit, um sicherzustellen, dass Sie den richtigen Befehl haben, bevor Sie ihn wirklich ausführen.
-V
- gibt eine ausführliche Ausgabe mit zusätzlichen Informationen, die zum Debuggen von Problemen verwendet werden.
IP-Link
Die ip
command ist das Schweizer Taschenmesser unter den Linux-Netzwerkbefehlen. Wir betrachten speziell ip link
, der Befehl zum Benennen und Ändern von Netzwerkschnittstellen.
Verwenden Sie Folgendes, um alle Schnittstellen aufzulisten:
[tcarrigan@rhel ~]$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:30:52:a7 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether 52:54:00:b7:7b:c7 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN mode DEFAULT group default qlen 1000
link/ether 52:54:00:b7:7b:c7 brd ff:ff:ff:ff:ff:ff
Beachten Sie, dass mit diesem Befehl keine IP-Adressinformationen angegeben werden. Sie müssen die ip addr
verwenden Befehl, diesen Bedarf zu decken. Verwenden Sie für spezifische Schnittstelleninformationen Folgendes:
[tcarrigan@rhel ~]$ ip link show dev enp0s3
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:30:52:a7 brd ff:ff:ff:ff:ff:ff
Um den Namen einer Schnittstelle zu ändern, verwenden wir Folgendes:
[tcarrigan@rhel ~]$ ip link set eth0 name eth123
Beachten Sie, dass Sie die Schnittstelle deaktivieren, den Namen ändern und sie dann wieder aktivieren müssen, damit die Änderungen wirksam werden. Sie müssen auch /etc/sysconfig/network-scripts/ifcfg_old_device_name
sowohl im Titel als auch im Inhalt der Datei auf den neuen Gerätenamen.
Schluß
Ich hatte einen Vorgesetzten, der immer sagte:"Es gibt mehr als eine Möglichkeit, einer Katze das Fell abzuziehen." Obwohl es ausgefeiltere Möglichkeiten gibt, es auszudrücken, ist der Punkt, dass es immer eine alternative Möglichkeit gibt, eine Aufgabe zu erledigen. Dies hat sich bei fast jeder Operation bewährt, die ein Administrator ausführen muss. Sogar etwas so Einfaches wie das Benennen von Schnittstellen bietet dem Administrator Auswahlmöglichkeiten. Was sind deine Gedanken? Welchen dieser Befehle würden Sie in dieser Situation verwenden, um die Arbeit zu erledigen?
[ Sie wollen mehr für Ihr Netzwerk? Laden Sie ein kostenloses E-Book zur Netzwerkautomatisierung mit Ansible herunter. ]