Introduction
Iproute2 est un ensemble d'utilitaires utilisés pour contrôler le trafic TCP, UDP et IP dans Linux et a été conçu pour remplacer la suite entière des outils Unix appelé net-tools.
Correspondance
Description |
Outil net-tool |
Commande iproute2
|
Configuration d'adresse et lien
|
ifconfig
|
ip address, ip link
|
Tables de routage
|
route
|
ip route
|
Statistique
|
netstat
|
ss
|
Voisinage
|
arp
|
ip neighbour
|
Vlan
|
vconfig
|
ip link
|
Tunnels
|
iptunnel
|
ip tunnel
|
Multicast
|
ipmaddr
|
ip maddr
|
Configuration d'adresses
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Listing des interfaces
|
# ip address
|
# ip a
|
Listing d'une interfaces
|
# ip address show dev eth0
|
# ip a s eth0
|
Ajout / Suppression d'une adresse IP
|
# ip address [ add | del ] dev eth0 192.168.1.20/24
|
# ip a [ a | d ] dev eth0 192.168.1.20/24
|
Suppression de toutes les configurations
|
# ip address flush dev eth0
|
# ip a f dev eth0
|
Configuration de lien
Les basiques
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Affichage des liens
|
# ip link show
|
# ip l sh
|
Activation / Désactivation d'une interface
|
# ip link set eth0 [ up | down ]
|
# ip l s eth0 [ up | down ]
|
Mettre un alias
|
# ip link set dev eth0 alias "LAN"
|
# ip l s dev eth0 al "LAN"
|
Renommer une interface (l'interface doit être down)
|
# ip link set dev eth0 name lan
|
# ip l s dev eth0 name lan
|
Changer l'adresse MAC d'une interface
|
# ip link set dev eth0 address 00:01:02:03:04:05
|
# ip l s dev eth0 a 00:01:02:03:04:05
|
Changer le MTU (Maximum Transmission Unit) pour des trames Jumbo
|
# ip link set dev eth0 mtu 7000
|
# ip l s dev eth0 mtu 7000
|
Activer / Désactiver le multicast sur une interface
|
# ip link set eth0 multicast [ on | off ]
|
# ip l s eth0 multicast [ on | off ]
|
Activer / Désactiver ARP sur une interface
|
# ip link set eth0 arp [ on | off ]
|
# ip l s eth0 arp [ on | off ]
|
Les VLANs
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Ajout d'un VLAN
|
# ip link add link eth0 name eth0.1 type vlan id 1
|
# ip l a l eth0 name eth0.1 t vlan id 1
|
Suppression d'un VLAN
|
# ip link del eth0.1
|
# ip l d eth0.1
|
Les Bridges
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Création d'un bridge
|
# ip link add name br0 type bridge
|
# ip l a n br0 type bridge
|
Suppression d'un bridge
|
# ip link del br0
|
# ip l d br0
|
Ajout d'une interface au bridge
|
# ip link set dev eth0 master br0
|
# ip l s dev eth0 master br0
|
Suppression d'une interface du bridge
|
# ip link set dev eth0 nomaster
|
# ip l s dev eth0 nomaster
|
Tables de routage
Listing
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Listing des routes
|
# ip route show
|
# ip r
|
Listing des routes vers un réseau et tous ces sous-réseaux (VLSM)
|
# ip route show to root 192.168.1.0/24
|
# ip r s root 192.168.1.0/24
|
Listing des routes vers un réseau et tous ces sur-réseaux (VLSM)
|
# ip route show to match 192.168.1.0/24
|
# ip r s match 192.168.1.0/24
|
Listing des routes vers un sous-réseaux spécifique
|
# ip route show to exact 192.168.1.0/24
|
# ip r s exact 192.168.1.0/24
|
Affichage de la route utilisé par le noyau
|
# ip route get 192.168.1.0/24
|
# ip r get 192.168.1.0/24
|
Modification
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Ajout / Suppression d'une route vers le réseau 192.168.1.0/24 en passant par la passerelle 192.168.1.254
|
# ip route [ add | del ] 192.168.1.0/24 via 192.168.1.254
|
# ip r [ a | d ] 192.168.1.0/24 via 192.168.1.254
|
Ajout / Suppression d'une route statique flottante (backup route)
|
# ip route [ add | del ] 192.168.1.0/24 via 192.168.1.254 metric 5
# ip route [ add | del ] 192.168.1.0/24 via 192.168.1.253 metric 10
|
# ip r [ a | d ] 192.168.1.0/24 via 192.168.1.254 metric 5
# ip r [ a | d ] 192.168.1.0/24 via 192.168.1.253 metric 10
|
Changer / Remplacer la route par défaut
|
# ip route [ add | del ] default via 192.168.1.254
|
# ip r [ a | d ] default via 192.168.1.254
|
Changer / Remplacer une route vers le réseau 192.168.1.0/24 en passant par la passerelle 192.168.1.254
|
# ip route [ change | replace ] 192.168.1.0/24 via 192.168.1.254
|
# ip r [ c | r ] 192.168.1.0/24 via 192.168.1.254
|
Annonces spécifiques
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Ajout / Suppression d'un trou noir (trafic rejeté silencieusement)
|
# ip route [ add | del ] blackhole 192.168.1.0/24
|
# ip r [ a | d ] blackhole 192.168.1.0/24
|
Ajout / Suppression d'une réponse ICMP de type 3 et code 1 (destination host unreachable)
|
# ip route [ add | del ] unreachable 192.168.1.0/24
|
# ip r [ a | d ] unreachable 192.168.1.0/24
|
Ajout / Suppression d'une réponse ICMP de type 3 et code 10 (host administratively prohibited)
|
# ip route [ add | del ] prohibit 192.168.1.0/24
|
# ip r [ a | d ] prohibit 192.168.1.0/24
|
Ajout / Suppression d'une réponse ICMP de type 3 et code 0 (destination network unreachable)
|
# ip route [ add | del ] throw 192.168.1.0/24
|
# ip r [ a | d ] throw 192.168.1.0/24
|
Statistique
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
|
# ip
|
# ip
|
Voisinage
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
|
# ip
|
# ip
|
Multicast
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Listing des groupes multicast
|
# ip maddress show
|
# ip m
|
Ajout / Suppression d'une couche liaison à un groupe multicast (besoin très rare)
|
# ip maddress [ add | del ] 00:01:02:03:04:05 dev eth0
|
# ip m [ a | d ] 00:01:02:03:04:05 dev eth0
|
Listing des routes multicast
|
# ip mroute show
|
# ip mr
|
Monitoring
Description |
Commande iproute2 (full) |
Commande iproute2 (short)
|
Monitoring de tous les événements
|
# ip monitor all
|
# ip mo
|
Monitoring de certain événements :
- link : changement d'état, création ou destruction d'une interface.
- address : changement sur les adresses Ethernet
- route : changement sur les tables de routage
- mroute : changement sur les routes multicast
- neigh : changement sur dans le voisinage (tables ARP et NDP)
dans un fichier ou sur la console
|
# ip [ -4 | -6 ] monitor [ link | address | route | mroute | neigh ] [ file event.log ]
|
# ip [ -4 | -6 ] mo [ l | a | r | m | n ]
|
rtmon peut lire un fichier de log binaire (créé précédemment par ip monitor)
|
# rtmon [ -4 | -6 ] [ link | address | route | mroute | neigh ] file event.log
|
|