Ip/Befehl/Anwendung: Unterschied zwischen den Versionen
| (158 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
'''Ip/Befehl/Anwendung''' | |||
=== | === Beschreibung === | ||
<syntaxhighlight lang="bash" highlight="1" line> | === Hilfe === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip help | ip help | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== | == Link == | ||
=== Status === | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu | ; Alle Schnittstellen | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip link | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN | |||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | |||
2: irda0: <NOARP> mtu 2048 qdisc noop state DOWN qlen 8 | |||
link/irda 00:00:00:00 brd ff:ff:ff:ff | |||
3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN qlen 1000 | |||
link/ether 00:05:4e:4f:65:e5 brd ff:ff:ff:ff:ff:ff | |||
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | |||
</syntaxhighlight> | |||
=== | ==== ip link show ==== | ||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip link show | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | |||
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 pfifo_fast state UP qlen 1000 | |||
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff | |||
</syntaxhighlight> | |||
=== | === Statistik === | ||
; Alle Schnittstellen | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip -s link | |||
</syntaxhighlight> | |||
; Statistik der Schnittstelle ''eth0'' | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip -s link show eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | |||
link/ether 00:0d:60:b1:16:7f brd ff:ff:ff:ff:ff:ff | |||
RX: bytes packets errors dropped overrun mcast | |||
2631476274 2634102 0 0 0 0 | |||
TX: bytes packets errors dropped carrier collsns | |||
449098710 2363841 0 0 0 0 | |||
</syntaxhighlight> | |||
==== ip -statistics link show ==== | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip -statistics link show | |||
</syntaxhighlight> | |||
== | <syntaxhighlight lang="bash" highlight="" line> | ||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | |||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | |||
RX: bytes packets errors dropped overrun mcast | |||
2073916 4895 0 0 0 0 | |||
TX: bytes packets errors dropped carrier collsns | |||
2073916 4895 0 0 0 0 | |||
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | |||
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff | |||
RX: bytes packets errors dropped overrun mcast | |||
1716782262 1369751 0 0 0 0 | |||
TX: bytes packets errors dropped carrier collsns | |||
308636400 1172428 0 0 0 0 | |||
</syntaxhighlight> | |||
=== Start/Stopp === | |||
; Start/Stopp der Netzwerkkarte | |||
<syntaxhighlight lang="bash" highlight=""> | |||
ip link set dev {DEVICE} {up|down} | |||
</syntaxhighlight> | |||
== | ; Stoppen der Netzwerkkarte | ||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
sudo ip link set dev eth1 down | |||
</syntaxhighlight> | |||
; Starten der Netzwerkkarte | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
sudo ip link set dev eth1 up | |||
</syntaxhighlight> | |||
=== Einstellungen === | |||
==== [[Txqueuelen]] ändern ==== | |||
<syntaxhighlight lang="bash" highlight=""> | |||
ip link set txqueuelen {NUMBER} dev {DEVICE} | |||
</syntaxhighlight> | |||
=== | |||
=== Txqueuelen ändern === | |||
; Beispiel | ; Beispiel | ||
Standardeinstellung txqueuelen für eth0 von 1000 auf 10000 ändern | Standardeinstellung txqueuelen für eth0 von 1000 auf 10000 ändern | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip link set txqueuelen 10000 dev eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip a list eth0 | |||
</syntaxhighlight> | |||
=== MTU ändern === | ==== MTU ändern ==== | ||
Für Gigabit-Netzwerke können Sie die maximale Größe der Übertragungseinheiten (MTU) festlegen: | Für Gigabit-Netzwerke können Sie die maximale Größe der Übertragungseinheiten (MTU) festlegen: | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo ip link set mtu {NUMBER} dev {DEVICE} | |||
</syntaxhighlight> | |||
Geben Sie Folgendes ein, um die MTU des Geräts eth0 auf 9000 zu ändern: | Geben Sie Folgendes ein, um die MTU des Geräts eth0 auf 9000 zu ändern: | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip link set mtu 9000 dev eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip a list eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
2: eth0: mtu 9000 qdisc pfifo_fast state UP qlen 1000 | 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 | link/ether 00:08:9b:c4:30:30 brd ff:ff:ff:ff:ff:ff | ||
| Zeile 91: | Zeile 125: | ||
inet6 fe80::208:9bff:fec4:3030/64 scope link | inet6 fe80::208:9bff:fec4:3030/64 scope link | ||
valid_lft forever preferred_lft forever | valid_lft forever preferred_lft forever | ||
</syntaxhighlight> | |||
=== | == Address == | ||
=== IP-Adresse einer Schnittstelle === | |||
; IP-Adresse der Schnittstelle eth0 | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip addr show eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line > | |||
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | |||
link/ether 00:0d:60:b1:16:7f brd ff:ff:ff:ff:ff:ff | |||
inet 192.168.178.68/24 brd 192.168.178.255 scope global eth0 | |||
</syntaxhighlight> | |||
=== | |||
= | |||
== | |||
=== ip addr show === | === ip addr show === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip addr show | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | ||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | ||
| Zeile 182: | Zeile 156: | ||
inet6 fe80::a00:27ff:fe66:72e1/64 scope link | inet6 fe80::a00:27ff:fe66:72e1/64 scope link | ||
valid_lft forever preferred_lft forever | valid_lft forever preferred_lft forever | ||
</syntaxhighlight> | |||
=== ip addr add IP/NETMASK dev DEVICE === | === ip addr add IP/NETMASK dev DEVICE === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip addr add 10.1.102.60/24 dev eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip a | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | ||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | ||
| Zeile 200: | Zeile 181: | ||
inet6 fe80::a00:27ff:fe66:72e1/64 scope link | inet6 fe80::a00:27ff:fe66:72e1/64 scope link | ||
valid_lft forever preferred_lft forever | valid_lft forever preferred_lft forever | ||
</syntaxhighlight> | |||
=== ip addr del IP/NETMASK dev DEVICE === | === ip addr del IP/NETMASK dev DEVICE === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip addr del 10.1.102.60/24 dev eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip a | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | ||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | ||
| Zeile 216: | Zeile 203: | ||
inet6 fe80::a00:27ff:fe15:175e/64 scope link | inet6 fe80::a00:27ff:fe15:175e/64 scope link | ||
valid_lft forever preferred_lft forever | valid_lft forever preferred_lft forever | ||
</syntaxhighlight> | |||
=== ip addr flush dev DEVICE === | === ip addr flush dev DEVICE === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip addr flush dev eth0 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip a | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN | ||
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | ||
| Zeile 228: | Zeile 221: | ||
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 | ||
link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff | link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff | ||
</syntaxhighlight> | |||
== Neighbour == | |||
=== Neighbour cache anzeigen === | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip neigh show | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
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 | |||
</syntaxhighlight> | |||
{| class="wikitable options big" | |||
|- | |||
! Status !! Beschreibung | |||
|- | |||
| STALE || Der Nachbar ist gültig, aber wahrscheinlich schon nicht erreichbar | |||
|- | |||
| DELAY|| Ein Paket wurde an den veralteten Nachbarn gesendet und der Kernel wartet auf Bestätigung | |||
|- | |||
| REACHABLE || Der Nachbar ist gültig und anscheinend erreichbar | |||
|} | |||
=== Statische Neighbour-Einträge === | |||
<syntaxhighlight lang="bash" highlight=""> | |||
ip neigh add {IP-HERE} lladdr {MAC/LLADDRESS} dev {DEVICE} nud {STATE} | |||
</syntaxhighlight> | |||
Fügen Sie einen permanenten ARP-Eintrag für den Nachbarn 192.168.1.5 auf dem Gerät eth0 hinzu: | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip neigh add 192.168.1.5 lladdr 00:1a:30:38:a8:00 dev eth0 nud perm | |||
</syntaxhighlight> | |||
{| class="wikitable options big" | |||
|+ | |||
|- | |||
! 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 eines ARP-Eintrags === | |||
<syntaxhighlight lang="bash" highlight="0"> | |||
sudo ip neigh del {IPAddress} dev {DEVICE} | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip neigh del 192.168.1.5 dev eth1 | |||
</syntaxhighlight> | |||
Änderungen sind Status für den Nachbarn 192.168.1.100 auf dem Gerät eth1 erreichbar | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip neigh chg 192.168.1.100 dev eth1 nud reachable | |||
</syntaxhighlight> | |||
==== Flush ARP entry ==== | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
ip -s -s n f {IPAddress} | |||
</syntaxhighlight> | |||
flush neighbour/arp table: | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip -s -s n f 192.168.1.5 | |||
</syntaxhighlight> | |||
oder | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip -s -s n flush 192.168.1.5 | |||
</syntaxhighlight> | |||
=== Lebensdauer === | |||
Die Lebensdauer (der sogenannte '''Timeout''' oder '''Age''') von ARP-Einträgen im Linux-Kernel ist dynamisch und hängt von der Aktivität der Verbindung ab, beträgt standardmäßig jedoch oft nur wenige Minuten. | |||
; Warum so kurz? | |||
Die kurze Lebensdauer unter Linux sorgt dafür, dass bei Änderungen im Netzwerk (z.B. wenn ein anderer Server dieselbe IP übernimmt, sogenannter Failover) die MAC-Adresse schnell aktualisiert wird und die Kommunikation nicht lange unterbrochen ist. | |||
==== Standard-Lebensdauer (Timeout) ==== | |||
* '''Standardwert:''' Die meisten Linux-Systeme entfernen ungenutzte ARP-Einträge nach relativ kurzer Zeit aus dem Cache, oft nach '''60 Sekunden'''. | |||
* '''Dynamisches Verhalten:''' Wenn ein ARP-Eintrag aktiv genutzt wird (Daten werden an diese IP gesendet), wird der Timer für diesen Eintrag in der Regel zurückgesetzt. | |||
* '''Stale Time:''' Ein Eintrag gilt oft nach einer gewissen Zeit als "veraltet" (stale) und wird dann vom System überprüft, bevor er endgültig gelöscht wird. | |||
==== Wert überprüfen und ändern ==== | |||
Sie können die aktuelle Zeitspanne, bis ein Eintrag als "stale" (veraltet) gilt, im Proc-Dateisystem überprüfen. | |||
* '''Wert anzeigen (in Sekunden):'''<br/>cat /proc/sys/net/ipv4/neigh/default/gc_stale_time<br/>''Typische Ausgabe: ''<tt>60</tt> | |||
* '''Wert temporär ändern (z.B. auf 120 Sekunden):'''<br/>echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time | |||
* '''Wert permanent ändern:''' Bearbeiten Sie die Datei <tt>/etc/sysctl.conf</tt> und fügen Sie folgende Zeile hinzu:<br/>net.ipv4.neigh.default.gc_stale_time = 120 | |||
==== Statische ARP-Einträge ==== | |||
Wenn Sie einen ARP-Eintrag manuell mit <tt>arp -s</tt> oder <tt>ip neigh add</tt> erstellen, hat dieser '''keine Lebensdauer''' (er läuft nicht ab). Er bleibt bestehen, bis er manuell gelöscht wird oder der Rechner neu startet. | |||
=== 4. ARP-Cache anzeigen/löschen === | |||
* '''Anzeigen:''' <tt>ip neighbor show</tt> oder <tt>arp -an</tt> | |||
* '''Löschen (Flush):''' <tt>ip -s -s neigh flush all</tt> (nützlich bei IP-Umzügen) | |||
== Route == | |||
=== ip route show === | === ip route show === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
ip route show | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" line> | |||
default via 10.1.102.1 dev eth0 metric 100 | default via 10.1.102.1 dev eth0 metric 100 | ||
10.1.102.0/24 dev eth0 proto kernel scope link src 10.1.102.59 | 10.1.102.0/24 dev eth0 proto kernel scope link src 10.1.102.59 | ||
</syntaxhighlight> | |||
=== ip route | === Standard-Gateway === | ||
; Standard-Gateway anzeigen | |||
<syntaxhighlight lang="bash" highlight="1" copy> | |||
ip route show | grep default | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="" > | |||
default via 192.168.178.1 dev eth0 | |||
</syntaxhighlight> | |||
== | ; Standard-Gateway hinzufügen | ||
IPv4 | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip route add default via 10.1.102.1 dev eth0 | |||
</syntaxhighlight> | |||
=== | IPv6 | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
sudo ip route add default via fe80::1 dev eth0 | |||
</syntaxhighlight> | |||
<noinclude> | |||
== Anhang == | |||
=== Siehe auch === | |||
<div style="column-count:2"> | |||
<categorytree hideroot=on mode="pages">iproute2/ip</categorytree> | |||
</div> | |||
---- | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}/}} | |||
=== Dokumentation === | |||
<!-- | |||
; Man-Page | |||
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)] | |||
; Info-Pages | |||
--> | |||
=== | === Links === | ||
==== Projekt ==== | |||
==== Weblinks ==== | |||
# https://www.cyberciti.biz/faq/linux-ip-command-examples-usage-syntax/ | |||
[[Kategorie:iproute2/ip]] | |||
</noinclude> | |||
Aktuelle Version vom 14. Mai 2026, 09:37 Uhr
Ip/Befehl/Anwendung
Beschreibung
Hilfe
ip help
Link
Status
- Alle Schnittstellen
ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: irda0: <NOARP> mtu 2048 qdisc noop state DOWN qlen 8
link/irda 00:00:00:00 brd ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN qlen 1000
link/ether 00:05:4e:4f:65:e5 brd ff:ff:ff:ff:ff:ff
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
ip link show
ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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 pfifo_fast state UP qlen 1000
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
Statistik
- Alle Schnittstellen
ip -s link
- Statistik der Schnittstelle eth0
ip -s link show eth0
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0d:60:b1:16:7f brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
2631476274 2634102 0 0 0 0
TX: bytes packets errors dropped carrier collsns
449098710 2363841 0 0 0 0
ip -statistics link show
ip -statistics link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
2073916 4895 0 0 0 0
TX: bytes packets errors dropped carrier collsns
2073916 4895 0 0 0 0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
1716782262 1369751 0 0 0 0
TX: bytes packets errors dropped carrier collsns
308636400 1172428 0 0 0 0
Start/Stopp
- Start/Stopp der Netzwerkkarte
ip link set dev {DEVICE} {up|down}
- Stoppen der Netzwerkkarte
sudo ip link set dev eth1 down
- Starten der Netzwerkkarte
sudo ip link set dev eth1 up
Einstellungen
Txqueuelen ändern
ip link set txqueuelen {NUMBER} dev {DEVICE}
- Beispiel
Standardeinstellung txqueuelen für eth0 von 1000 auf 10000 ändern
sudo ip link set txqueuelen 10000 dev eth0
sudo ip a list eth0
MTU ändern
Für Gigabit-Netzwerke können Sie die maximale Größe der Übertragungseinheiten (MTU) festlegen:
sudo ip link set mtu {NUMBER} dev {DEVICE}
Geben Sie Folgendes ein, um die MTU des Geräts eth0 auf 9000 zu ändern:
sudo ip link set mtu 9000 dev eth0
sudo ip a list eth0
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
Address
IP-Adresse einer Schnittstelle
- IP-Adresse der Schnittstelle eth0
ip addr show eth0
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0d:60:b1:16:7f brd ff:ff:ff:ff:ff:ff
inet 192.168.178.68/24 brd 192.168.178.255 scope global eth0
ip addr show
ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe66:72e1/64 scope link
valid_lft forever preferred_lft forever
ip addr add IP/NETMASK dev DEVICE
sudo ip addr add 10.1.102.60/24 dev eth0
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.1.102.60/24 scope global secondary eth0
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe66:72e1/64 scope link
valid_lft forever preferred_lft forever
ip addr del IP/NETMASK dev DEVICE
sudo ip addr del 10.1.102.60/24 dev eth0
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
inet 10.1.102.54/24 brd 10.1.102.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe15:175e/64 scope link
valid_lft forever preferred_lft forever
ip addr flush dev DEVICE
sudo ip addr flush dev eth0
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
Neighbour
Neighbour cache anzeigen
ip neigh show
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
| Status | Beschreibung |
|---|---|
| STALE | Der Nachbar ist gültig, aber wahrscheinlich schon nicht erreichbar |
| DELAY | Ein Paket wurde an den veralteten Nachbarn gesendet und der Kernel wartet auf Bestätigung |
| REACHABLE | Der Nachbar ist gültig und anscheinend erreichbar |
Statische Neighbour-Einträge
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:
sudo 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
|
| stale | Der Nachbareintrag ist gültig, aber verdächtig
|
| reachable | Der Nachbareintrag ist gültig, bis das Erreichbarkeitszeitlimit abgelaufen ist |
Löschen eines ARP-Eintrags
sudo ip neigh del {IPAddress} dev {DEVICE}
sudo 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
sudo ip neigh chg 192.168.1.100 dev eth1 nud reachable
Flush ARP entry
ip -s -s n f {IPAddress}
flush neighbour/arp table:
sudo ip -s -s n f 192.168.1.5
oder
sudo ip -s -s n flush 192.168.1.5
Lebensdauer
Die Lebensdauer (der sogenannte Timeout oder Age) von ARP-Einträgen im Linux-Kernel ist dynamisch und hängt von der Aktivität der Verbindung ab, beträgt standardmäßig jedoch oft nur wenige Minuten.
- Warum so kurz?
Die kurze Lebensdauer unter Linux sorgt dafür, dass bei Änderungen im Netzwerk (z.B. wenn ein anderer Server dieselbe IP übernimmt, sogenannter Failover) die MAC-Adresse schnell aktualisiert wird und die Kommunikation nicht lange unterbrochen ist.
Standard-Lebensdauer (Timeout)
- Standardwert: Die meisten Linux-Systeme entfernen ungenutzte ARP-Einträge nach relativ kurzer Zeit aus dem Cache, oft nach 60 Sekunden.
- Dynamisches Verhalten: Wenn ein ARP-Eintrag aktiv genutzt wird (Daten werden an diese IP gesendet), wird der Timer für diesen Eintrag in der Regel zurückgesetzt.
- Stale Time: Ein Eintrag gilt oft nach einer gewissen Zeit als "veraltet" (stale) und wird dann vom System überprüft, bevor er endgültig gelöscht wird.
Wert überprüfen und ändern
Sie können die aktuelle Zeitspanne, bis ein Eintrag als "stale" (veraltet) gilt, im Proc-Dateisystem überprüfen.
- Wert anzeigen (in Sekunden):
cat /proc/sys/net/ipv4/neigh/default/gc_stale_time
Typische Ausgabe: 60 - Wert temporär ändern (z.B. auf 120 Sekunden):
echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time - Wert permanent ändern: Bearbeiten Sie die Datei /etc/sysctl.conf und fügen Sie folgende Zeile hinzu:
net.ipv4.neigh.default.gc_stale_time = 120
Statische ARP-Einträge
Wenn Sie einen ARP-Eintrag manuell mit arp -s oder ip neigh add erstellen, hat dieser keine Lebensdauer (er läuft nicht ab). Er bleibt bestehen, bis er manuell gelöscht wird oder der Rechner neu startet.
4. ARP-Cache anzeigen/löschen
- Anzeigen: ip neighbor show oder arp -an
- Löschen (Flush): ip -s -s neigh flush all (nützlich bei IP-Umzügen)
Route
ip route show
ip route show
default via 10.1.102.1 dev eth0 metric 100
10.1.102.0/24 dev eth0 proto kernel scope link src 10.1.102.59
Standard-Gateway
- Standard-Gateway anzeigen
ip route show | grep default
default via 192.168.178.1 dev eth0
- Standard-Gateway hinzufügen
IPv4
sudo ip route add default via 10.1.102.1 dev eth0
IPv6
sudo ip route add default via fe80::1 dev eth0
Anhang
Siehe auch
Dokumentation
Links
Projekt
Weblinks