Ip (Befehl): Unterschied zwischen den Versionen
Änderungen von Dirkwagner (Diskussion) wurden auf die letzte Version von Kamalalhassan zurückgesetzt Markierungen: Zurücksetzung Zurückgesetzt |
|||
Zeile 1: | Zeile 1: | ||
=Syntax= | |||
Der Befehl '''''ip''''' wird verwendet, um einer Netzwerkschnittstelle eine Adresse zuzuweisen und / oder Netzwerkschnittstellenparameter unter Linux-Betriebssystemen zu konfigurieren. Dieser Befehl ersetzt den alten guten und jetzt veralteten Befehl '''''ifconfig''''' auf modernen Linux-Distributionen. | |||
# ip OBJECT COMMAND | # ip OBJECT COMMAND | ||
# ip [options] OBJECT COMMAND | # ip [options] OBJECT COMMAND | ||
# ip OBJECT help | # ip OBJECT help | ||
=Grundlegendes zur OBJECTS-Syntax= | |||
OBJEKTE können eine der folgenden sein und können in vollständiger oder abgekürzter Form geschrieben sein: | |||
{| class="wikitable" | |||
|+ | |||
{| class="wikitable | |||
|- | |- | ||
! Objekt !! Kurzform !! Zweck | ! Objekt !! Kurzform !! Zweck | ||
Zeile 48: | Zeile 40: | ||
|} | |} | ||
Informationen zu | Um Informationen zu jedem Objekt abzurufen, verwenden Sie den Hilfebefehl wie folgt: | ||
# ip OBJECT help | # ip OBJECT help | ||
# ip OBJECT h | # ip OBJECT h | ||
Zeile 55: | Zeile 48: | ||
# ip r help | # ip r help | ||
=== | =Beispiele IP-Befehl= | ||
ip | |||
== Zeigt Informationen zu allen Netzwerkschnittstellen an == | |||
# ip a | |||
OR | |||
# ip addr | |||
Sample outputs: | |||
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 | |||
inet6 ::1/128 scope host | |||
valid_lft forever preferred_lft forever | |||
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 | |||
link/ether d4:3d:7e:cb:10:46 brd ff:ff:ff:ff:ff:ff | |||
inet 192.168.1.115/24 brd 192.168.1.255 scope global dynamic noprefixroute enp2s0 | |||
valid_lft 3561sec preferred_lft 3561sec | |||
inet6 2001::7213:7947:5dc7:71d0/64 scope global dynamic noprefixroute | |||
valid_lft 86107sec preferred_lft 14107sec | |||
inet6 fe80::9d6c:75be:55cb:d0fc/64 scope link noprefixroute | |||
valid_lft forever preferred_lft forever | |||
== Eine iP-Adresse in der Schnittstelle setzen == | |||
# ip a add {ip_addr/mask} dev {interface} | |||
To assign 192.168.1.200/255.255.255.0 to eth0, enter: | |||
# ip a add 192.168.1.200/255.255.255.0 dev eth0 | |||
OR | |||
# ip a add 192.168.1.200/24 dev eth0 | |||
== Broadcast-Adresse auf der Schnittstelle Hinzufügen == | |||
# ip addr add brd {ADDDRESS-HERE} dev {interface} | |||
# ip addr add broadcast {ADDDRESS-HERE} dev {interface} | |||
# ip addr add broadcast 172.20.10.255 dev dummy0 | |||
Fügen Sie der Schnittstelle eth0 die Adresse 192.168.1.50 mit der Netzmaske 255.255.255.0 (/ 24) mit Standardübertragung und der Bezeichnung „eth0Home“ hinzu: | |||
# ip addr add 192.168.1.50/24 brd + dev eth0 label eth0Home | |||
Sie können die Loopback-Adresse für das Loopback-Gerät lo wie folgt einstellen: | |||
# ip addr add 127.0.0.1/8 dev lo brd + scope host | |||
== Entfernen / Löschen der IP-Adresse von der Schnittstelle == | |||
# ip a del {ipv6_addr_OR_ipv4_addr} dev {interface} | |||
To delete 192.168.1.200/24 from eth0, enter: | |||
# ip a del 192.168.1.200/24 dev eth0 | |||
== Flush die IP-Adresse von der Schnittstelle == | |||
Mit dem folgenden Befehl können Sie alle IP-Adressen aus dem privaten Netzwerk 192.168.2.0/24 löschen: | |||
# ip -s -s a f to 192.168.2.0/24 | |||
Sample outputs: | |||
2: eth0 inet 192.168.2.201/24 scope global secondary eth0 | |||
2: eth0 inet 192.168.2.200/24 scope global eth0 | |||
*** Round 1, deleting 2 addresses *** | |||
*** Flush is complete after 1 round *** | |||
Sie können die IP-Adresse auf allen ppp-Schnittstellen (Punkt-zu-Punkt) deaktivieren: | |||
# ip -4 addr flush label "ppp*" | |||
Hier ist ein weiteres Beispiel für alle Ethernet-Schnittstellen: | |||
# ip -4 addr flush label "eth*" | |||
== Wie ändere ich den Status des Geräts auf UP oder DOWN? == | |||
# ip link set dev {DEVICE} {up|down} | |||
Geben Sie Folgendes ein, um den Status des Geräts eth1 zu verringern: | |||
# ip link set dev eth1 down | |||
Geben Sie Folgendes ein, um den Status des Geräts eth1 zu ermitteln: | |||
# ip link set dev eth1 up | |||
== Wie ändere ich die Txqueuelen des Geräts? == | |||
# ip link set txqueuelen {NUMBER} dev {DEVICE} | |||
Ändern Sie in diesem Beispiel die Standardeinstellung txqueuelen für eth0 von 1000 auf 10000: | |||
# ip link set txqueuelen 10000 dev eth0 | |||
# ip a list eth0 | |||
== Wie ändere ich die MTU des Geräts? == | |||
Für Gigabit-Netzwerke können Sie die maximale Größe der Übertragungseinheiten (MTU) festlegen: | |||
# ip link set mtu {NUMBER} dev {DEVICE} | |||
Geben Sie Folgendes ein, um die MTU des Geräts eth0 auf 9000 zu ändern: | |||
# ip link set mtu 9000 dev eth0 | |||
# ip a list eth0 | |||
Sample outputs: | |||
2: eth0: mtu 9000 qdisc pfifo_fast state UP qlen 1000 | |||
link/ether 00:08:9b:c4:30:30 brd ff:ff:ff:ff:ff:ff | |||
inet 192.168.1.10/24 brd 192.168.1.255 scope global eth1 | |||
inet6 fe80::208:9bff:fec4:3030/64 scope link | |||
valid_lft forever preferred_lft forever | |||
== Anzeige neighbour/arp cache == | |||
# ip n show | |||
# ip neigh show | |||
Beispielausgaben: | |||
74.xx.yy.zz dev eth1 lladdr 00:30:48:yy:zz:ww REACHABLE | |||
10.10.29.66 dev eth0 lladdr 00:30:48:c6:0a:d8 REACHABLE | |||
74.ww.yyy.xxx dev eth1 lladdr 00:1a:30:yy:zz:ww REACHABLE | |||
10.10.29.68 dev eth0 lladdr 00:30:48:33:bc:32 REACHABLE | |||
74.fff.uu.cc dev eth1 lladdr 00:30:48:yy:zz:ww STALE | |||
74.rr.ww.fff dev eth1 lladdr 00:30:48:yy:zz:ww DELAY | |||
10.10.29.65 dev eth0 lladdr 00:1a:30:38:a8:00 REACHABLE | |||
10.10.29.74 dev eth0 lladdr 00:30:48:8e:31:ac REACHABLE | |||
1.STALE – Der Nachbar ist gültig, aber wahrscheinlich schon nicht erreichbar. | |||
2.DELAY – Ein Paket wurde an den veralteten Nachbarn gesendet und der Kernel wartet auf Bestätigung. | |||
3.REACHABLE – Der Nachbar ist gültig und anscheinend erreichbar. | |||
== Fügen Sie einen neuen ARP-Eintrag hinzu == | |||
# ip neigh add {IP-HERE} lladdr {MAC/LLADDRESS} dev {DEVICE} nud {STATE} | |||
Fügen Sie einen permanenten ARP-Eintrag für den Nachbarn 192.168.1.5 auf dem Gerät eth0 hinzu: | |||
# ip neigh add 192.168.1.5 lladdr 00:1a:30:38:a8:00 dev eth0 nud perm | |||
{| class="wikitable" | |||
|| | |+ | ||
|- | |- | ||
! neighbour state (nud) !! Bedeutung | |||
|- | |- | ||
|| | | permanent || Der Nachbareintrag ist für immer gültig und kann nur administrativ entfernt werden | ||
| | |||
|- | |- | ||
| | | noarp || Der Nachbareintrag ist gültig. Es werden keine Versuche unternommen, diesen Eintrag zu validieren. Er kann jedoch nach Ablauf seiner Lebensdauer entfernt werden | ||
|| | |||
|- | |- | ||
|| | | stale || Der Nachbareintrag ist gültig, aber verdächtig. Diese Option zum IP-Nachbarn ändert den Nachbarstatus nicht, wenn er gültig war und die Adresse durch diesen Befehl nicht geändert wird | ||
| | |||
|- | |- | ||
| reachable || Der Nachbareintrag ist gültig, bis das Erreichbarkeitszeitlimit abgelaufen ist | |||
|} | |} | ||
== Löschen Sie einen ARP-Eintrag == | |||
===Alt vs Neu= | # ip neigh del {IPAddress} dev {DEVICE} | ||
Veralteter Linux-Befehl und deren Ersetzung | # ip neigh del 192.168.1.5 dev eth1 | ||
Änderungen sind Status für den Nachbarn 192.168.1.100 auf dem Gerät eth1 erreichbar | |||
# ip neigh chg 192.168.1.100 dev eth1 nud reachable | |||
== Flush ARP entry == | |||
# ip -s -s n f {IPAddress} | |||
flush neighbour/arp table: | |||
# ip -s -s n f 192.168.1.5 | |||
oder: | |||
# ip -s -s n flush 192.168.1.5 | |||
=Alt vs Neu= | |||
Veralteter Linux-Befehl und deren Ersetzung: | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
|- | |- | ||
! Alter Befehl !! Neuer Befehl | |||
|- | |- | ||
| | | ifconfig -a || ip a | ||
| | |||
|- | |- | ||
| ip | | ifconfig enp6s0 down || ip link set enp6s0 down | ||
|- | |- | ||
| ip | | ifconfig enp6s0 up || ip link set enp6s0 up | ||
|- | |- | ||
| | | ifconfig enp6s0 192.168.2.24 || ip addr add 192.168.2.24/24 dev enp6s0 | ||
| | |||
|- | |- | ||
| | | ifconfig enp6s0 netmask 255.255.255.0 || ip addr add 192.168.1.1/24 dev enp6s0 | ||
| | |||
|- | |- | ||
| ip | | ifconfig enp6s0 mtu 9000 || ip link set enp6s0 mtu 9000 | ||
|- | |- | ||
| ip | | ifconfig enp6s0:0 192.168.2.25 || ip addr add 192.168.2.25/24 dev enp6s0 | ||
|- | |- | ||
| | | netstat || ss | ||
| | |||
| | |||
|- | |- | ||
| | | netstat -tulpn || ss -tulpn | ||
| | |||
| | |||
|- | |- | ||
| | | netstat -neopa || ss -neopa | ||
| | |||
| | |||
|- | |- | ||
| | | netstat -g || ip maddr | ||
| | |||
|ip | |||
|- | |- | ||
| | | route || ip r | ||
| | |||
|ip | |||
|- | |- | ||
| | | route add -net 192.168.2.0 netmask 255.255.255.0 dev enp6s0 || ip route add 192.168.2.0/24 dev enp6s0 | ||
| | |||
|ip | |||
|- | |- | ||
| | | route add default gw 192.168.2.254 || ip route add default via 192.168.2.254 | ||
| | |||
|ip | |||
|- | |- | ||
| | | arp -a || ip neigh | ||
| | |||
|ip | |||
|- | |- | ||
| | | arp -v || ip -s neigh | ||
| | |||
|ip | |||
|- | |- | ||
| | | arp -s 192.168.2.33 1:2:3:4:5:6 || ip neigh add 192.168.3.33 lladdr 1:2:3:4:5:6 dev enp6s0 | ||
|ip neigh | |||
|- | |- | ||
| | | arp -i enp6s0 -d 192.168.2.254 || ip neigh del 192.168.2.254 dev wlp7s0 | ||
| | |||
| | |||
|} | |} | ||
= | =Links= | ||
== | == Siehe auch == | ||
[[ | # [[Linux:Befehl:ping]] | ||
== | == Extern == | ||
# https://www.cyberciti.biz/faq/linux-ip-command-examples-usage-syntax/ | # https://www.cyberciti.biz/faq/linux-ip-command-examples-usage-syntax/ | ||
[[Category:Linux:Netzwerke]] | |||
Version vom 13. Juni 2024, 20:08 Uhr
Syntax
Der Befehl ip wird verwendet, um einer Netzwerkschnittstelle eine Adresse zuzuweisen und / oder Netzwerkschnittstellenparameter unter Linux-Betriebssystemen zu konfigurieren. Dieser Befehl ersetzt den alten guten und jetzt veralteten Befehl ifconfig auf modernen Linux-Distributionen.
# ip OBJECT COMMAND
# ip [options] OBJECT COMMAND # ip OBJECT help
Grundlegendes zur OBJECTS-Syntax
OBJEKTE können eine der folgenden sein und können in vollständiger oder abgekürzter Form geschrieben sein:
Objekt | Kurzform | Zweck |
---|---|---|
link | l | Network device |
address | a / addr | Protocol (IP or IPv6) address on a device |
addrlabel | addrl | Etikettenkonfiguration für die Auswahl der Protokolladresse |
neighbour | n / neigh | ARP or NDISC cache entry |
route | r | Routing-Tabelleneintrag |
rule | ru | Regel in der Routing-Richtliniendatenbank |
maddress | m / maddr | Multicast address |
mroute | mr | Multicast-Routing-Cache-Eintrag |
tunnel | t | Tunnel over IP |
xfrm | x | Framework für das IPSec-Protokoll |
Um Informationen zu jedem Objekt abzurufen, verwenden Sie den Hilfebefehl wie folgt:
# ip OBJECT help # ip OBJECT h # ip a help # ip r help
Beispiele IP-Befehl
Zeigt Informationen zu allen Netzwerkschnittstellen an
# ip a
OR
# ip addr
Sample outputs:
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 inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether d4:3d:7e:cb:10:46 brd ff:ff:ff:ff:ff:ff inet 192.168.1.115/24 brd 192.168.1.255 scope global dynamic noprefixroute enp2s0 valid_lft 3561sec preferred_lft 3561sec inet6 2001::7213:7947:5dc7:71d0/64 scope global dynamic noprefixroute valid_lft 86107sec preferred_lft 14107sec inet6 fe80::9d6c:75be:55cb:d0fc/64 scope link noprefixroute valid_lft forever preferred_lft forever
Eine iP-Adresse in der Schnittstelle setzen
# ip a add {ip_addr/mask} dev {interface}
To assign 192.168.1.200/255.255.255.0 to eth0, enter:
# ip a add 192.168.1.200/255.255.255.0 dev eth0
OR
# ip a add 192.168.1.200/24 dev eth0
Broadcast-Adresse auf der Schnittstelle Hinzufügen
# ip addr add brd {ADDDRESS-HERE} dev {interface} # ip addr add broadcast {ADDDRESS-HERE} dev {interface} # ip addr add broadcast 172.20.10.255 dev dummy0
Fügen Sie der Schnittstelle eth0 die Adresse 192.168.1.50 mit der Netzmaske 255.255.255.0 (/ 24) mit Standardübertragung und der Bezeichnung „eth0Home“ hinzu:
# ip addr add 192.168.1.50/24 brd + dev eth0 label eth0Home
Sie können die Loopback-Adresse für das Loopback-Gerät lo wie folgt einstellen:
# ip addr add 127.0.0.1/8 dev lo brd + scope host
Entfernen / Löschen der IP-Adresse von der Schnittstelle
# ip a del {ipv6_addr_OR_ipv4_addr} dev {interface}
To delete 192.168.1.200/24 from eth0, enter:
# ip a del 192.168.1.200/24 dev eth0
Flush die IP-Adresse von der Schnittstelle
Mit dem folgenden Befehl können Sie alle IP-Adressen aus dem privaten Netzwerk 192.168.2.0/24 löschen:
# ip -s -s a f to 192.168.2.0/24
Sample outputs:
2: eth0 inet 192.168.2.201/24 scope global secondary eth0 2: eth0 inet 192.168.2.200/24 scope global eth0
*** Round 1, deleting 2 addresses *** *** Flush is complete after 1 round ***
Sie können die IP-Adresse auf allen ppp-Schnittstellen (Punkt-zu-Punkt) deaktivieren:
# ip -4 addr flush label "ppp*"
Hier ist ein weiteres Beispiel für alle Ethernet-Schnittstellen:
# ip -4 addr flush label "eth*"
Wie ändere ich den Status des Geräts auf UP oder DOWN?
# ip link set dev {DEVICE} {up|down}
Geben Sie Folgendes ein, um den Status des Geräts eth1 zu verringern:
# ip link set dev eth1 down
Geben Sie Folgendes ein, um den Status des Geräts eth1 zu ermitteln:
# ip link set dev eth1 up
Wie ändere ich die Txqueuelen des Geräts?
# ip link set txqueuelen {NUMBER} dev {DEVICE}
Ändern Sie in diesem Beispiel die Standardeinstellung txqueuelen für eth0 von 1000 auf 10000:
# ip link set txqueuelen 10000 dev eth0 # ip a list eth0
Wie ändere ich die MTU des Geräts?
Für Gigabit-Netzwerke können Sie die maximale Größe der Übertragungseinheiten (MTU) festlegen:
# ip link set mtu {NUMBER} dev {DEVICE}
Geben Sie Folgendes ein, um die MTU des Geräts eth0 auf 9000 zu ändern:
# ip link set mtu 9000 dev eth0 # ip a list eth0
Sample outputs:
2: eth0: mtu 9000 qdisc pfifo_fast state UP qlen 1000 link/ether 00:08:9b:c4:30:30 brd ff:ff:ff:ff:ff:ff inet 192.168.1.10/24 brd 192.168.1.255 scope global eth1 inet6 fe80::208:9bff:fec4:3030/64 scope link valid_lft forever preferred_lft forever
Anzeige neighbour/arp cache
# ip n show # ip neigh show
Beispielausgaben:
74.xx.yy.zz dev eth1 lladdr 00:30:48:yy:zz:ww REACHABLE 10.10.29.66 dev eth0 lladdr 00:30:48:c6:0a:d8 REACHABLE 74.ww.yyy.xxx dev eth1 lladdr 00:1a:30:yy:zz:ww REACHABLE 10.10.29.68 dev eth0 lladdr 00:30:48:33:bc:32 REACHABLE 74.fff.uu.cc dev eth1 lladdr 00:30:48:yy:zz:ww STALE 74.rr.ww.fff dev eth1 lladdr 00:30:48:yy:zz:ww DELAY 10.10.29.65 dev eth0 lladdr 00:1a:30:38:a8:00 REACHABLE 10.10.29.74 dev eth0 lladdr 00:30:48:8e:31:ac REACHABLE
1.STALE – Der Nachbar ist gültig, aber wahrscheinlich schon nicht erreichbar.
2.DELAY – Ein Paket wurde an den veralteten Nachbarn gesendet und der Kernel wartet auf Bestätigung.
3.REACHABLE – Der Nachbar ist gültig und anscheinend erreichbar.
Fügen Sie einen neuen ARP-Eintrag hinzu
# ip neigh add {IP-HERE} lladdr {MAC/LLADDRESS} dev {DEVICE} nud {STATE}
Fügen Sie einen permanenten ARP-Eintrag für den Nachbarn 192.168.1.5 auf dem Gerät eth0 hinzu:
# ip neigh add 192.168.1.5 lladdr 00:1a:30:38:a8:00 dev eth0 nud perm
neighbour state (nud) | Bedeutung |
---|---|
permanent | Der Nachbareintrag ist für immer gültig und kann nur administrativ entfernt werden |
noarp | Der Nachbareintrag ist gültig. Es werden keine Versuche unternommen, diesen Eintrag zu validieren. Er kann jedoch nach Ablauf seiner Lebensdauer entfernt werden |
stale | Der Nachbareintrag ist gültig, aber verdächtig. Diese Option zum IP-Nachbarn ändert den Nachbarstatus nicht, wenn er gültig war und die Adresse durch diesen Befehl nicht geändert wird |
reachable | Der Nachbareintrag ist gültig, bis das Erreichbarkeitszeitlimit abgelaufen ist |
Löschen Sie einen ARP-Eintrag
# ip neigh del {IPAddress} dev {DEVICE} # ip neigh del 192.168.1.5 dev eth1
Änderungen sind Status für den Nachbarn 192.168.1.100 auf dem Gerät eth1 erreichbar
# ip neigh chg 192.168.1.100 dev eth1 nud reachable
Flush ARP entry
# ip -s -s n f {IPAddress}
flush neighbour/arp table:
# ip -s -s n f 192.168.1.5
oder:
# ip -s -s n flush 192.168.1.5
Alt vs Neu
Veralteter Linux-Befehl und deren Ersetzung:
Alter Befehl | Neuer Befehl |
---|---|
ifconfig -a | ip a |
ifconfig enp6s0 down | ip link set enp6s0 down |
ifconfig enp6s0 up | ip link set enp6s0 up |
ifconfig enp6s0 192.168.2.24 | ip addr add 192.168.2.24/24 dev enp6s0 |
ifconfig enp6s0 netmask 255.255.255.0 | ip addr add 192.168.1.1/24 dev enp6s0 |
ifconfig enp6s0 mtu 9000 | ip link set enp6s0 mtu 9000 |
ifconfig enp6s0:0 192.168.2.25 | ip addr add 192.168.2.25/24 dev enp6s0 |
netstat | ss |
netstat -tulpn | ss -tulpn |
netstat -neopa | ss -neopa |
netstat -g | ip maddr |
route | ip r |
route add -net 192.168.2.0 netmask 255.255.255.0 dev enp6s0 | ip route add 192.168.2.0/24 dev enp6s0 |
route add default gw 192.168.2.254 | ip route add default via 192.168.2.254 |
arp -a | ip neigh |
arp -v | ip -s neigh |
arp -s 192.168.2.33 1:2:3:4:5:6 | ip neigh add 192.168.3.33 lladdr 1:2:3:4:5:6 dev enp6s0 |
arp -i enp6s0 -d 192.168.2.254 | ip neigh del 192.168.2.254 dev wlp7s0 |