GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-IP-Befehl mit Beispielen

Die ip Der Befehl ist ein leistungsstarkes Tool zum Konfigurieren von Netzwerkschnittstellen, das jeder Linux-Systemadministrator kennen sollte. Es wird verwendet, um Schnittstellen hoch- oder herunterzufahren, Adressen und Routen zuzuweisen und zu entfernen, den ARP-Cache zu verwalten und vieles mehr.

Dieser Artikel erklärt die Verwendung des ip-Befehls anhand praktischer Beispiele und detaillierter Erläuterungen der gängigsten Optionen.

So verwenden Sie den IP-Befehl #

Die ip Das Dienstprogramm ist Teil des iproute2-Pakets, das auf allen modernen Linux-Distributionen installiert ist.

Die Syntax für die ip Befehl lautet wie folgt:

ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJEKT ist der Objekttyp, den Sie verwalten möchten. Die am häufigsten verwendeten Objekte (oder Unterbefehle) sind:

  • link (l ) - Netzwerkschnittstellen anzeigen und ändern.
  • address (a ) - IP-Adressen anzeigen und ändern.
  • route (r ) - Anzeigen und Ändern der Routing-Tabelle.
  • neigh (n ) - Anzeige und Manipulation von Nachbarobjekten (ARP-Tabelle).

Das Objekt kann vollständig oder abgekürzt (kurz) geschrieben werden. Um eine Liste mit Befehlen und Argumenten für jedes Objekt anzuzeigen, geben Sie ip OBJECT help ein .

Beim Konfigurieren von Netzwerkschnittstellen müssen Sie die Befehle als Root oder Benutzer mit sudo-Privilegien ausführen. Andernfalls gibt der Befehl RTNETLINK answers: Operation not permitted .

Die mit ip eingestellten Konfigurationen Befehl sind nicht persistent. Nach einem Systemneustart gehen alle Änderungen verloren. Um die Änderungen dauerhaft zu machen, müssen Sie die distributionsspezifischen Konfigurationsdateien bearbeiten oder die Befehle zu einem Startskript hinzufügen.

IP-Adressen anzeigen und ändern #

Beim Betrieb mit der addr Objekt haben die Befehle die folgende Form:

ip addr [ COMMAND ] ADDRESS dev IFNAME

Die am häufigsten verwendeten BEFEHLE der addr Objekt sind:show , add , und del .

Informationen zu allen IP-Adressen anzeigen #

Geben Sie den folgenden Befehl ein, um eine Liste aller Netzwerkschnittstellen und der zugehörigen IP-Adresse anzuzeigen:

ip addr show

Die Ausgabe sieht in etwa so aus:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 2900sec preferred_lft 2900sec
    inet6 fe80::5054:ff:fe8c:6244/64 scope link 
       valid_lft forever preferred_lft forever

Sie erhalten dieselbe Ausgabe, wenn Sie show weglassen Befehl und geben Sie Folgendes ein:ip addr .

Wenn Sie nur IPv4 anzeigen möchten oder IPv6 IP-Adressen verwenden Sie ip -4 addr oder ip -6 addr .

Anzeigen von Informationen über eine einzelne Netzwerkschnittstelle #

Um Informationen über eine bestimmte Netzwerkschnittstelle zu erhalten, verwenden Sie ip addr show dev gefolgt vom Gerätenamen. Zum Beispiel, um eth0 abzufragen , würden Sie Folgendes eingeben:

ip addr show dev eth0

IP-Adressen einer Schnittstelle zuweisen #

Um einer Schnittstelle eine IP-Adresse zuzuweisen, verwenden Sie die folgende Syntax:

ip addr add ADDRESS dev IFNAME

Wobei IFNAME ist der Schnittstellenname und ADDRESS ist die IP-Adresse, die Sie der Schnittstelle zuweisen möchten.

Zum Hinzufügen der Adresse 192.168.121.45 mit Netzmaske 24 an Gerät eth0 , würden Sie Folgendes eingeben:

sudo ip address add 192.168.121.45/24 dev eth0

Bei Erfolg zeigt der Befehl keine Ausgabe an. Wenn die Schnittstelle nicht vorhanden ist, erhalten Sie Cannot find device "eth0" .

Weise mehrere IP-Adressen derselben Schnittstelle zu #

Mit ip , können Sie derselben Schnittstelle mehrere Adressen zuweisen. Zum Beispiel:

sudo ip address add 192.168.121.241/24 dev eth0sudo ip address add 192.168.121.45/24 dev eth0

Um zu bestätigen, dass die IPs zugewiesen wurden, geben Sie ip -4 addr show dev eth0 ein oder ip -4 a show dev eth0 :

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 3515sec preferred_lft 3515sec
    inet 192.168.121.45/24 scope global secondary eth0
       valid_lft forever preferred_lft forever

Entfernen/löschen Sie eine IP-Adresse von der Schnittstelle #

Die Syntax zum Entfernen einer IP-Adresse von einer Schnittstelle lautet wie folgt:

ip addr dev ADDRESS dev IFNAME

IFNAME ist der Schnittstellenname und ADRESSE ist die IP-Adresse, die Sie von der Schnittstelle entfernen möchten.

Zum Entfernen der Adresse 192.168.121.45/24 vom Gerät eth0 geben Sie ein:

sudo ip address del 192.168.121.45/24 dev eth0

Anzeigen und Ändern von Netzwerkschnittstellen #

Verwenden Sie den link, um den Status der Netzwerkschnittstellen zu verwalten und anzuzeigen Objekt.

Beim Arbeiten mit dem link Objekte sind die am häufigsten verwendeten Befehle:show , set , add , und del .

Informationen zu Netzwerkschnittstellen # anzeigen

Um eine Liste aller Netzwerkschnittstellen anzuzeigen, geben Sie den folgenden Befehl ein:

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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

Im Gegensatz zu ip addr show , ip link show druckt keine Informationen über die mit dem Gerät verknüpften IP-Adressen.

Um Informationen über eine bestimmte Netzwerkschnittstelle zu erhalten, verwenden Sie ip link show dev gefolgt vom Gerätenamen. Zum Beispiel, um eth0 abzufragen Sie würden Folgendes eingeben:

ip link show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

Ändern Sie den Status der Schnittstelle UP/DOWN #

Um Schnittstellen nach oben oder unten zu bringen, verwenden Sie den ip link set dev gefolgt vom Gerätenamen und dem gewünschten Zustand:

ip link set dev {DEVICE} {up|down}

Zum Beispiel, um die Schnittstelle eth0 zu bringen online würden Sie Folgendes eingeben:

ip link set eth0 up

Und zu bringen, wenn offline

ip link set eth0 down

Anzeigen und Ändern der Routing-Tabelle #

Um die Kernel-Routing-Tabelle zuzuweisen, zu entfernen und anzuzeigen, verwenden Sie route Objekt. Die am häufigsten verwendeten Befehle bei der Arbeit mit den Routenobjekten sind:list , add , und del .

Routing-Tabelle Nr. anzeigen

Verwenden Sie einen der folgenden Befehle, um eine Liste der Kernel-Route-Einträge zu erhalten:

ip route
ip route list
ip route list SELECTOR

Bei Verwendung ohne SELECTOR Der Befehl listet alle Routeneinträge im Kernel auf:

ip route list
default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 
192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 
192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100 

Um nur das Routing für ein bestimmtes Netzwerk anzuzeigen, zum Beispiel 172.17.0.0/16 Sie würden Folgendes eingeben:

ip r list 172.17.0.0/16
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 

Neue Route hinzufügen #

Um der Routing-Tabelle einen neuen Eintrag hinzuzufügen, verwenden Sie den route add Befehl gefolgt vom Netzwerk- oder Gerätenamen.

Fügen Sie über das Gateway unter 192.168.121.1 eine Route zu 192.168.121.0/24 hinzu

ip route add 192.168.121.0/24 via 192.168.121.1

Fügen Sie eine Route zu 192.168.121.0/24 hinzu, die auf dem Gerät eth0 erreicht werden kann.

ip route add 192.168.121.0/24 dev eth0

Um eine Standardroute hinzuzufügen, verwenden Sie das Schlüsselwort default . Der folgende Befehl fügt eine Standardroute über das lokale Gateway 192.168.121.1 hinzu die auf dem Gerät eth0 erreichbar ist .

ip route add default via 192.168.121.1 dev eth0

Lösche eine Route #

Um einen Eintrag aus der Routing-Tabelle zu löschen, verwenden Sie den route add Befehl. Die Syntax zum Löschen einer Route ist dieselbe wie beim Hinzufügen.

Der folgende Befehl löscht die Standardroute:

ip route del default

Löschen Sie eine Route für 192.168.121.0/24 über das Gateway bei 192.168.121.1

ip route add 192.168.121.0/24 via 192.168.121.1

Schlussfolgerung #

Inzwischen sollten Sie ein gutes Verständnis für die Verwendung der Linux-ip haben Befehl. Für weitere Informationen über die andere ip Optionen, besuchen Sie die Manpage für den ip-Befehl oder geben Sie man ip ein in Ihrem Terminal.

Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.


Linux
  1. wc Linux-Befehl mit Beispielen

  2. Linux-Sortierungsbefehl mit Beispielen

  3. Linux Tee-Befehl mit Beispielen

  4. Linux-Kopfbefehl mit Beispielen

  5. JQ-Befehl in Linux mit Beispielen

Linux-Uhrbefehl mit Beispielen

Wartebefehl in Linux mit Beispielen

Linux-Exportbefehl mit Beispielen

Neustartbefehl unter Linux mit Beispielen

Linux-PS-Befehl mit Beispielen

Linux-IP-Befehl mit Beispielen