iproute2
iproute2 ist eine unter einem Befehl zusammengefasste Sammlung an Werkzeugen, die dazu benutzt werden, die IP-Netzwerkkonfiguration (IPv4 und IPv6) eines Linux-Systems zu manipulieren.
Der Originalautor ist Alexey Kuznetsov (bekannt fĂŒr seine QoS-Implementierung im Linux-Kernel), der aktuelle Maintainer ist Stephen Hemminger.[1] iproute2 nutzt Linuxâ Netlink-Schnittstelle, um direkt mit dem Kernel zu kommunizieren.
iproute2 wurde als Ersatz fĂŒr die âklassischenâ Netzwerktools wie ifconfig, route etc. entwickelt. Es fasst alle Konfigurationsoptionen, die bisher von diesen getrennten Programmen erledigt wurden, im Befehl ip zusammen. Die klassischen Befehle werden durch iproute2 immer weiter verdrĂ€ngt.
AuĂerdem gehört zum Paket der Befehl tc, der dazu genutzt wird, Netzwerktraffic zu kontrollieren (traffic control).
Syntax
[Bearbeiten | Quelltext bearbeiten]Die einzelnen Teile von iproute2 werden auf folgende Weise angesprochen, hier am Beispiel von address. Der Name kann soweit gekĂŒrzt werden, solange er eindeutig ist:
ip addr [befehl] [argumente]
Um mit IPv6 zu arbeiten, ruft man ip folgendermaĂen auf:
ip -6 addr [befehl] [argumente]
befehl ist ein weiterer Unterbefehl mit argumenten. help gibt dabei immer eine Art Syntaxhilfe aus, hier ip addr help:
Usage: ip addr {add|change|replace} IFADDR dev STRING [ LIFETIME ]
[ CONFFLAG-LIST ]
ip addr del IFADDR dev STRING
ip addr {show|flush} [ dev STRING ] [ scope SCOPE-ID ]
[ to PREFIX ] [ FLAG-LIST ] [ label PATTERN ]
IFADDR := PREFIX | ADDR peer PREFIX
[ broadcast ADDR ] [ anycast ADDR ]
[ label STRING ] [ scope SCOPE-ID ]
SCOPE-ID := [ host | link | global | NUMBER ]
FLAG-LIST := [ FLAG-LIST ] FLAG
FLAG := [ permanent | dynamic | secondary | primary |
tentative | deprecated | dadfailed | temporary |
CONFFLAG-LIST ]
CONFFLAG-LIST := [ CONFFLAG-LIST ] CONFFLAG
CONFFLAG := [ home | nodad ]
LIFETIME := [ valid_lft LFT ] [ preferred_lft LFT ]
LFT := forever | SECONDS
Wie daraus ersichtlich wird, sind Argumente zumeist Paare wie
dev INTERFACE
FĂŒr ganze Beispielbefehle siehe Abschnitt #Beispiele.
Teile
[Bearbeiten | Quelltext bearbeiten]- address
- manipuliert die IP-Adressen der Interfaces (Netzwerkschnittstellen) und andere Parameter, wie Broadcast-Adressen, Multicast...
- link
- manipuliert die Netzwerkschnittstellen auf Ethernet-Ebene. Erlaubt Einstellungen wie Promiscuous Mode ein/aus, ARP ein/aus, oder die MAC-Adresse zu verÀndern.
- maddr
- Àndert, entfernt, zeigt oder setzt Multicast-Adressen auf Ethernet- und IP-Ebene.
- monitor
- zeigt Ănderungen der Netzwerkinterfaces an (zum Beispiel NDP-Router-Advertisements oder ARP-Nachrichten, die ĂŒber Adressen und Routen informieren)
- mroute
- Informationen ĂŒber Multicast-Routing-Tabellen
- neighbour
- manipuliert und zeigt ARP- und NDP-Tabellen.
- netns
- verwaltet NetzwerknamensrÀume
- ntable
- informiert ĂŒber NDP- und ARP-Tabellen
- route
- manipuliert, zeigt und setzt IP-Routen (Ersatz fĂŒr route)
- rule
- manipuliert Regeln in der Routing Policy Database RPDB, die festlegt, fĂŒr welche Subnetze welche Routing-Tabellen genutzt werden
- tunnel
- erzeugt, verÀndert und löscht IP-Tunnel (z. B. Tunnelbroker-p41-Tunnel)
- tuntap
- manipuliert TUN/TAP-Schnittstellen
Beispiele
[Bearbeiten | Quelltext bearbeiten]Hier zum besseren VerstÀndnis einige Beispiele, die im alltÀglichen Gebrauch vorkommen könnten:
Zuweisen einer festen IP-Adresse und Konfiguration der Routing-Tabelle
ip addr add 10.10.1.1/16 broadcast 10.10.255.255 dev eth0 ip route add default via 10.10.0.0
Erstellen eines SIT-Tunnels (IPv6 over IPv4), siehe Tunnelbroker
ip tunnel add sit0 mode sit remote 192.0.2.32 local 10.10.4.2 ttl 255 ip link set sit0 up ip -6 route add ::/0 dev sit0
Anzeige der Routing- und Neighbortabellen
ip route show ip neigh show
FĂ€lschen der MAC-Adresse
ip link set dev eth0 address aa:bb:cc:dd:ee:ff
Weblinks
[Bearbeiten | Quelltext bearbeiten]- IP Command Reference, Alexey N. Kuznetsov Institute for Nuclear Research, Moscow; April 14, 1999 (englisch)
- Marek AndreĂĄnsky, Documentation for iproute, 2010, BrĂŒnn (Tschechien), Masaryk-UniversitĂ€t, Bachelor-Arbeit, (PDF; 513 kB)