Der IP-Befehl ist Teil des iproute-Pakets, das standardmäßig in modernen Linux-Distributionen installiert ist. Unter Linux wird der IP-Befehl verwendet, um Netzwerkschnittstellen, IP-Adressen, IP-Routing-Tabellen und IP-Nachbareinträge zu verwalten und anzuzeigen. Es wird häufig verwendet, um einer Netzwerkschnittstelle eine IP-Adresse zuzuweisen und die Netzwerkschnittstelleneinstellungen zu konfigurieren.
In diesem Tutorial lernen wir den Linux-IP-Befehl kennen mit Anwendungsbeispielen.
Verwendung des Linux-IP-Befehls
Das Folgende ist die Syntax des IP-Befehls.
$ ip [ OPTIONS ] OBJECT { COMMAND | help }
$ ip help
OBJEKT ist der Objekttyp, den Sie verwalten möchten, einschließlich:
- link (l):Es zeigt und modifiziert Netzwerkschnittstellen.
- address (a):Es zeigt und ändert IP-Adressen.
- route (r):Es zeigt und ändert die Routing-Tabelle.
- neigh (n):Es zeigt und modifiziert die ARP-Tabelle.
Sie können die vollständige oder die Kurzform verwenden, um den Befehl auszuführen. Verwenden Sie zum Beispiel ip addr
oder ip address
wird dieselbe Ausgabe anzeigen.
1. IP-Adressen anzeigen und verwalten
Mit dem Befehl ip addr können Sie IP-Adressen in einem Linux-System anzeigen, zuweisen und löschen. Das IP-Adresse-Objekt verwendet die folgende Syntax.
ip addr [ COMMAND ] ADDRESS dev IFNAME
Verwenden Sie den Hilfebefehl, um mehr über Adressbefehle zu erfahren.
ip addr help
Eine Liste aller Netzwerkschnittstellen anzeigen
Die Befehlsliste ip addr zeigt alle Netzwerkschnittstellen und zugewiesenen IP-Adressen an.
Zum Beispiel:
ip addr show
Verwenden Sie den folgenden Befehl, um die Ausgabe nur für IPv4 oder IPv6 anzuzeigen.
To display IPv4 ip addressip -4 addr
To display IPv6 ip addressip -6 addr
Informationen zu bestimmten Netzwerkschnittstellen anzeigen
Verwenden Sie die folgende Syntax, um Informationen zu einer bestimmten Schnittstelle anzuzeigen.
ip addr show dev [Device Name]
Um beispielsweise Informationen zu ens33 anzuzeigen, geben Sie Folgendes ein.
ip addr show dev ens33
Einer Schnittstelle eine IP-Adresse zuweisen
Verwenden Sie den Befehl ip addr add, um einer Schnittstelle eine IP-Adresse zuzuweisen.
Syntax:
ip addr add [ ADDRESS ] dev [Interface Name]
Die [ADRESSE] ist die Adresse, die Sie dem [Schnittstellennamen] zuweisen möchten.
Um beispielsweise die Adresse 192.168.239.140 mit der Subnetzmaske 24 zum Gerät ens33 hinzuzufügen:
ip addr add 192.168.239.140/24 dev ens33
Wenn die IP-Adresse zum Gerät hinzugefügt wird, erfolgt keine Ausgabe oder es wird ein Fehler angezeigt.
Einer Schnittstelle mehrere IP-Adressen hinzufügen
Um einer Schnittstelle mehrere IP-Adressen hinzuzufügen, müssen Sie denselben Befehl wie oben mehrmals verwenden.
Um beispielsweise die Adressen 192.168.239.140 und 192.168.239.135 mit der Subnetzmaske 24 zum Gerät ens33 hinzuzufügen, geben Sie Folgendes ein.
ip addr add 192.168.239.140/24 dev ens33
ip addr add 192.168.239.135/24 dev ens33
IP-Adresse von einer Schnittstelle löschen
Um eine IP-Adresse von einer Schnittstelle zu löschen, verwenden Sie die folgende Syntax.
ip addr del [ ADDRESS ] dev [ Interface Name ]
Um beispielsweise die Adresse 192.168.30.12 mit der Subnetzmaske 24 vom Gerät ens33 zu löschen, geben Sie Folgendes ein.
ip addr del 192.168.239.140/24 dev ens33
Wird die IP-Adresse vom Gerät gelöscht, erfolgt keine Ausgabe oder es wird ein Fehler angezeigt.
2. Netzwerkschnittstellen anzeigen und verwalten
Der Befehl ip link wird verwendet, um den Status aller Netzwerkschnittstellen zu verwalten und anzuzeigen. Sie können TCP/IP-Stack-Netzwerkschnittstellenwerte wie txqueuelen, Interface up/down und MTU festlegen. Wir können ip link set
verwenden Befehl dafür.
Um eine Liste der Verknüpfungsobjektbefehle anzuzeigen, können Sie den Hilfebefehl wie folgt verwenden.
$ ip link help
Informationen zur Netzwerkschnittstelle erhalten
Der Befehl ip link show zeigt Informationen für alle Netzwerkschnittstellen an.
$ ip link show
Um Informationen zu einem bestimmten Gerät anzuzeigen, verwenden Sie die folgende Syntax.
$ ip link show dev [Device Name]
Um beispielsweise Netzwerkinformationen über ens33 anzuzeigen, würden Sie Folgendes verwenden.
$ ip link show dev ens33
Stellen Sie den Schnittstellenstatus auf UP oder DOWN ein
Verwenden Sie die folgende Syntax, um die Schnittstelle nach oben oder unten zu setzen.
ip link set dev [ Device Name ] [ up/down ]
Um beispielsweise ens33 online zu schalten, verwenden Sie den folgenden Befehl.
ip link set dev ens33 up
Bei eingeschaltetem Gerät erfolgt keine Ausgabe oder es wird ein Fehler angezeigt.
Verwenden Sie auf ähnliche Weise den folgenden Befehl, um ens33 herunterzufahren.
ip link set dev ens33 down
Bei abgeschaltetem Gerät erfolgt keine Ausgabe oder es wird ein Fehler angezeigt.
txqueuelen des Geräts ändern
Um die Übertragungswarteschlange eines Geräts zu ändern, verwenden Sie die folgende Syntax.
ip link set txqueuelen [ Number ] dev [ Interface Name ]
Verwenden Sie beispielsweise den folgenden Befehl, um die Übertragungswarteschlange 5 des ens33-Geräts festzulegen.
ip link set txqueuelen 5 dev ens33
Es erfolgt keine Ausgabe, wenn die Sendewarteschlange gesetzt ist oder ein Fehler angezeigt wird.
MTU ändern
Um die MTU (Maximum Transmit Unit) zu ändern, verwenden Sie die folgende Syntax.
ip link set mtu [ Number ] dev [ Interface Name ]
Setzen Sie beispielsweise die MTU des Geräts ens33 auf 1400, verwenden Sie den folgenden Befehl.
ip link set mtu 1400 dev ens33
Es wird keine Ausgabe angezeigt, wenn die MTU geändert wird, oder es wird ein Fehler angezeigt, wenn der Gerätename nicht existiert oder die MTU auf einen niedrigeren Wert als das Geräteminimum eingestellt ist.
MAC-Adresse ändern
Um die MAC-Adresse eines Geräts zu ändern, verwenden Sie die folgende Syntax.
ip link set dev [ Device Name ] address [ MAC ADDRESS ]
Virtuelle Schnittstelle löschen
Sie können den Befehl ip link delete verwenden, um die virtuelle Schnittstelle zu löschen. Zum Beispiel
ip link delete vip
Dadurch wird die virtuelle Schnittstelle namens vip.
gelöschtBrücke und virtuelle Schnittstelle hinzufügen
Das Hinzufügen von IP-Links ermöglicht das Hinzufügen von Bridge, virtueller Maschine und VLAN.
Syntax:
ip link add [ link DEVICE ] type TYPE [ ARGS ]
TYPE := [ bridge | can | dummy | ifb | ipoib | macvlan | vcan | veth | vlan | vxlan |
ip6tnl | ipip | sit | gre | gretap | ip6gre | ip6gretap ]
Zum Beispiel:
ip link add br0 type bridge
Dadurch wird eine Brücke namens br0 erstellt.
3. IP-Routing-Tabelle anzeigen und verwalten
Das route-Objekt dient zur Anzeige und Verwaltung der IP-Routing-Tabelle.
Um eine Liste der IP-Route-Befehle anzuzeigen, verwenden Sie den Befehl help wie folgt.
ip route help
Routing-Tabelle anzeigen
Um eine Liste aller Routeneinträge zu erhalten, verwenden Sie einen der folgenden Befehle.
ip route
ip route list
Die oben angezeigte Ausgabe sind alle Routeneinträge im Kernel. Um es einzugrenzen, fügen Sie das SELECTOR-Objekt wie folgt hinzu.
ip route list SELECTOR
Um das Routing für ein bestimmtes Netzwerk anzuzeigen, verwenden Sie die folgende Syntax.
ip route list [ IP ADDRESS ]
Neue Route hinzufügen
Verwenden Sie die folgende Syntax, um der Routingtabelle eine neue Route hinzuzufügen.
ip route add [ IP ADDRESS ] dev [ Interface Name ]
Mit der folgenden Syntax können Sie eine neue Route über das Gateway hinzufügen.
ip route add [ IP ADDRESS ] via [ Gateway ]
Um beispielsweise eine neue Route 192.168.239.0/24 über das Gateway 192.168.239.1 hinzuzufügen, verwenden Sie den folgenden Befehl.
ip route add 132.168.239.0/24 via 192.168.239.1
Eine Route löschen
Verwenden Sie die folgende Syntax, um einen vorhandenen Eintrag in der Routing-Tabelle zu löschen.
ip route del [ IP ADDRESS ]
Verwenden Sie den folgenden Befehl, um die Standardroute zu löschen.
ip route del default
Sie können eine Route über das Gateway mit der folgenden Syntax löschen.
ip route del [ IP ADDRESS ] dev [ Interface Name ]
4. IP-Nachbareinträge anzeigen und ändern
Um IP-Nachbareinträge anzuzeigen und zu modifizieren, wird ein Nachbarobjekt verwendet. Um eine Liste aller Neigh-Befehle anzuzeigen, verwenden Sie den Befehl help wie folgt.
ip neigh help
Nachbar-/ARP-Cache anzeigen
Verwenden Sie den folgenden Befehl, um einen Nachbar/arp-Cache anzuzeigen.
ip neigh show
Fügen Sie einen ARP-Eintrag hinzu
Um einen ARP-Eintrag hinzuzufügen, verwenden Sie die folgende Syntax.
ip neigh add [ IP ADDRESS ] dev [ Interface Name ]
Um beispielsweise 192.168.239.140 zum Gerät ens33 hinzuzufügen, verwenden Sie den folgenden Befehl.
ip neigh add 192.168.239.140 dev ens33
ARP-Eintrag löschen
Um einen ARP-Eintrag hinzuzufügen, verwenden Sie die folgende Syntax.
ip neigh del [ IP ADDRESS ] dev [ Interface Name ]
Um beispielsweise 192.168.239.140 vom Gerät ens33 zu löschen, verwenden Sie den folgenden Befehl.
ip neigh del 192.168.239.140 dev ens33
ARP-Eintrag leeren
Der Befehl flush oder f löscht den ARP-Eintrag. Um einen ARP-Eintrag zu löschen, verwenden Sie die folgende Syntax.
ip -s -s n flush [ IP ADDRESS ]
Um beispielsweise den Arp-Eintrag für 192.168.239.140 zu löschen, verwenden Sie den folgenden Befehl.
ip -s -s n flush 192.168.239.140
Schlussfolgerung
In diesem Tutorial haben wir den Linux-IP-Befehl mit seinen Verwendungsbeispielen behandelt. Weitere Informationen finden Sie auf der Handbuchseite des Befehls ip.
Vielen Dank fürs Lesen. Bitte geben Sie Ihr Feedback und Ihre Vorschläge weiter.