ip
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Mit der Programmsammlung iproute2 🇬🇧 rund um den zentralen Befehl ip lassen sich Netzwerkschnittstellen auf der Kommandozeile abfragen oder konfigurieren. Damit bietet sich diese Sammlung als vollwertiger Ersatz zu klassischen Befehlen wie ifconfig
, route
und netstat
(sämtlich im Paket net-tools
) an. Sie ist vollständig IPv6-kompatibel.
Enthalten sind des Weiteren die folgenden Werkzeuge:
ss
(socket status,netstat
-Ersatz)lnstat
(link state, auchctstat
)nstat
(network statistics tool)routef
(flush routes)routel
(list routes)rtstat
(route state monitoring)
Nur mit Root-Rechten zugänglich sind: arpd
(userspace arp daemon), rtacct
(routing table realms and policy propagation), rtmon
(routing table monitor) und tc
(traffic control). Dieser Artikel beschränkt sich auf den Befehl ip. Im WLAN-Bereich ist der Befehl iw der Ersatz für das bisherige iwconfig
.
Installation¶
Die Programmsammlung ist unter Ubuntu vorinstalliert. Ansonsten braucht man folgendes Paket [1]:
iproute2
Aufruf¶
Die allgemeine Syntax lautet [1]:
ip OPTIONEN SCHNITTSTELLE
Da manche der Optionen dem System-Administrator vorbehalten sind, muss man je nach Anwendungsfall den Befehl sudo
voranstellen [2].
Die CIDR-Notation ermöglicht im Gegensatz zur Dezimalpunktschreibweise von IPv4 kürzere Ausdrücke. Beispiel: 192.168.0.0/24
entspricht dem bisherigen 192.168.0.0/255.255.255.0
. Während man früher wahlweise beide Schreibweisen verwenden konnte, ist nur noch CIDR erlaubt.
Optionen¶
ip kennt sehr viele Optionen (siehe auch Beispiele), die man bei Bedarf in der Manpage oder in der Dokumentation nachschlagen kann. Zusätzlich gibt es eine komfortable Soforthilfe: man kombiniert die gewünschte Option mit dem Schlüsselwort help
. Beispiel:
ip link help
Nachfolgend eine praktisch orientierte Übersicht, die alte und neue Befehle gegenüberstellt.
Alte und neue Befehle | ||
Traditionell | Neu | Zweck |
ifconfig SCHNITTSTELLE | ip addr show SCHNITTSTELLE | IP-Adresse anzeigen |
ifconfig SCHNITTSTELLE hw ether MAC-ADRESSE | ip link set dev SCHNITTSTELLE address MAC-ADDRESSE | MAC-Adresse ändern |
ifconfig SCHNITTSTELLE IP-ADRESSE netmask NETMASK broadcast BROADCAST | ip addr change IP-ADRESSE/CIDR broadcast BROADCAST dev SCHNITTSTELLE | IP-Adresse setzen |
ip addr add IP-ADRESSE/CIDR broadcast BROADCAST dev SCHNITTSTELLE | IP-Adresse hinzufügen | |
ifconfig SCHNITTSTELLE:1 IP-ADRESSE/CIDR | ip addr add IP-ADRESSE/CIDR dev SCHNITTSTELLE label SCHNITTSTELLE:1 | Alias anlegen |
- | ip addr del IP-ADRESSE/CIDR dev SCHNITTSTELLE | IP-Adresse löschen |
ifconfig SCHNITTSTELLE up | ip link set SCHNITTSTELLE up | Schnittstelle aktivieren |
ifconfig SCHNITTSTELLE down | ip link set SCHNITTSTELLE down | Schnittstelle deaktivieren |
route , route -6 | ip route , ip -6 route | Routen (für IPv6) anzeigen |
route add default gw IP-ADRESSE | ip route add default via IP-ADRESSE dev SCHNITTSTELLE | Gateway setzen |
arp -a | ip neighbour | ARP |
netstat | ss | Sockets anzeigen |
Die Optionen für ip kann man auch in Kurzschreibweise als Anfangsbuchstaben der Option angeben. Wenn man z.B. für alle Netzwerkschnittstellen des Systems die IP-Adressen ausgeben möchte, benötigt man den Befehl ip addr show
. Die Kurzform ip a s
liefert das gleiche Ergebnis.
Beispiele¶
Status aller 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
Statistik aller Schnittstellen (wie bei
ifconfig
):ip -s link
Statistik der Schnittstelle
eth0
anzeigen: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-Adresse der Schnittstelle
eth0
anzeigen: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
Standard-Gateway der aktiven Schnittstelle (
eth0
) anzeigen:ip route show | grep 'default'
default via 192.168.178.1 dev eth0
Links¶
Iproute2 - Wikipedia
Dokumentation:
How to use Linux IP Command 🇬🇧 - Blogbeitrag, 12/2015
Deprecated networking commands and their replacements 🇬🇧 - Blogbeitrag, 12/2011
ipset - administration tool for kernel IP sets
Shell/Befehlsübersicht Übersicht über verschiedene Shell-Befehle