====== Linux - iproute2 - ip ======
Bei **ip** aus dem Paket **iproute2** handelt es sich um ein mächtiges Netzwerk-Tool zur Ansicht und Konfiguration von Netzwerk-Schnittstellen.
Es handelt sich hier um den Nachfolger von **ifconfig**, **netstat** und **route** aus dem alten Paket **net-tools**.
----
==== ip address ====
Mit diesem Kommando können **IPv4/6** Adressen angezeigt, hinzugefügt und entfernt werden
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip addr | ip a | Anzeige der IP-Adresse | |
| ip addr add dev | ip a a dev | IP-Adresse einrichten | ip addr add 10.10.10.10/24 dev ens160 |
| ip addr del dev | ip a d dev | Angegebene IP-Adresse entfernen | ip addr del 10.10.10.10/24 dev ens160 |
| ip addr flush dev | ip a f dev | Entfernen aller IP-Adressen des Interfaces | ip addr flush dev ens160 |
rsb@server:~# ip addr \\
\\
1: lo: 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: ens160: mtu 1500 qdisc fq_codel state UP group default qlen 1000 \\
link/ether 00:50:56:aa:5c:86 brd ff:ff:ff:ff:ff:ff \\
inet 10.10.10.10/24 brd 10.10.10.1 scope global ens160 \\
valid_lft forever preferred_lft forever \\
inet6 fe80::0001:0011:0111:1111:0001/64 scope link \\
valid_lft forever preferred_lft forever \\
----
==== ip link ====
Mit dem Befehl können vorhandene **Netzwerk-Interfaces** angezeigt und bearbeitet werden.
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip link | ip l | Anzeigen des Linkstatuses und der MAC-Adresse | |
| ip link set up | ip l s up | Aktivieren des Interfaces | ip link set up ens160 |
| ip link set down | ip l s down | Deaktivieren des Interfaces | ip link set down ens160 |
| ip link set dev address | ip l s dev | Änderung der MAC-Adresse | ip link set dev ens160 address 00:55:66:aa:cc:88 |
| ip -statistics link | ip -s l | Anzeigen des Linkstatuses mit Statistik | |
rsb@server:~# ip link \\
\\
1: lo: 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: ens160: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 \\
link/ether 00:55:66:aa:cc:88 brd ff:ff:ff:ff:ff:ff \\
----
==== ip monitor ====
Das Kommando überwacht die **Netzwerk-Interface** und zeigt Änderungen an
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip monitor | - | Überwachung des Netzwerk-Interfaces | |
| ip monitor label | - | Gibt bei der Überwachung die Art der Meldung mit an | z.B. [ADDR] bei Änderungen an der Adresse |
----
==== ip route ====
Der Befehl bietet die Möglichkeit **Routing-Tabellen** anzuzeigen, sowie Routen zu setzen und zu ändern.
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip route | ip r | Anzeigen der Routing-Tabelle | |
| ip route add default via | ip r a default via | Festlegen des Standard-Gateways | ip route add default via 10.10.10.1 |
| ip route add via dev | ip r a via dev | Hinzufügen einer statischen Route | ip route add 10.10.10.0/24 via 10.0.0.1 dev ens160 |
rsb@erver:~# ip route \\
\\
default via 10.10.10.1 dev ens160 proto static \\
10.10.10.0/24 dev ens160 proto kernel scope link src 10.10.10.10 \\
----
==== ip neighbour ====
Der Befehl zeigt die **NDP (Neighbor Discovery Protocol)** und **ARP (Address Resolution Protocol)** Tabellen an. In diesen werden die ermittelten **IP- und MAC-Adressen**, der im gleichen Subnetz vorhandenen Rechner, gespeichert.
Die Kommunikation über **MAC-Adressen** erfolgt nur innerhalb eines Netzwerk-Segmentes, somit den direkten "Nachbarn"
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip neighbour | ip n | Anzeigen der ARP-Tabelle | |
rsb@server:~# ip neighbour \\
10.10.10.1 dev ens160 lladdr 00:55:66:aa:aa:44 REACHABLE \\
----
==== ip tunnel ====
Über dieses Kommando können **Tunnel** konfiguriert und überprüft werden.
| ** Befehl ** | ** Kurzbefehl ** | ** Erklärung ** | ** Beispiel ** |
| ip tunnel| - | Anzeigen der vorhanden Tunnel | |
----
==== ip