Différences entre versions de « Iproute2 »
Aller à la navigation
Aller à la recherche
(9 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 27 : | Ligne 27 : | ||
||Tunnels | ||Tunnels | ||
||iptunnel | ||iptunnel | ||
− | ||ip | + | ||ip tunnel |
|-valign=top | |-valign=top | ||
||Multicast | ||Multicast | ||
Ligne 33 : | Ligne 33 : | ||
||ip maddr | ||ip maddr | ||
|} | |} | ||
+ | |||
= Configuration d'adresses = | = Configuration d'adresses = | ||
{|class="wikitable" width="85%" | {|class="wikitable" width="85%" | ||
Ligne 228 : | Ligne 229 : | ||
<pre> | <pre> | ||
# ip l s dev eth0 nomaster | # ip l s dev eth0 nomaster | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Voir les membres d'une interface bridge | ||
+ | || | ||
+ | <pre> | ||
+ | # bridge link show | ||
+ | </pre> | ||
+ | || | ||
+ | <pre> | ||
+ | # bridge l | ||
</pre> | </pre> | ||
|} | |} | ||
Ligne 379 : | Ligne 390 : | ||
=Statistique= | =Statistique= | ||
{|class="wikitable" width="85%" | {|class="wikitable" width="85%" | ||
− | ! Description !! Commande ''iproute2'' (full) | + | ! Description !! Commande ''iproute2'' (full) |
+ | |- | ||
+ | ||Affichage d'un résumé sur les sockets établies, fermées, orphelines et en attentes | ||
+ | || | ||
+ | <pre> | ||
+ | # ss -s | ||
+ | </pre> | ||
|- | |- | ||
+ | ||Affiche les processus ainsi que les sockets utilisées | ||
|| | || | ||
+ | <pre> | ||
+ | # ss -pln | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Affichage des tous les processus ainsi que des sockets: | ||
+ | *udp : ''u'' | ||
+ | *tcp : ''t'' | ||
+ | *raw : ''w'' | ||
+ | * unix : ''x'' | ||
|| | || | ||
<pre> | <pre> | ||
− | # | + | # ss -a [ -u | -t | -w | -x ] -np |
</pre> | </pre> | ||
+ | |- | ||
+ | ||Affichage des tous les connexion http établies: | ||
|| | || | ||
<pre> | <pre> | ||
− | # | + | # ss -o state established '( dport = 80 or sport = 80 )' |
</pre> | </pre> | ||
|} | |} | ||
Ligne 396 : | Ligne 425 : | ||
! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ||
|- | |- | ||
+ | ||Listing de tous les voisins | ||
+ | || | ||
+ | <pre> | ||
+ | # ip neighbor show | ||
+ | </pre> | ||
|| | || | ||
+ | <pre> | ||
+ | # ip n | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Listing des voisins par interface | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip neighbor show dev eth0 |
</pre> | </pre> | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip n s dev eth0 |
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
+ | ||Suppression des voisins par interface | ||
+ | || | ||
+ | <pre> | ||
+ | # ip neighbor flush dev eth0 | ||
+ | </pre> | ||
|| | || | ||
+ | <pre> | ||
+ | # ip n f dev eth0 | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Ajout / Suppression d'une entrée avec possibilité de modifier la nud (''Neighbor Unreachability Detection'') : | ||
+ | *noarp : l'entrée est considérée valide et sera retirée après expiration | ||
+ | *permanent : l'entrée est toujours valide et ne peut être retirée que manuellement | ||
+ | *reachable : l'entrée est valide jusqu'à expiration du timer d'accessibilité | ||
+ | *stale : l'entrée est valide mais suspecte | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip neighbor [ add | del ] 192.168.0.1 lladdr 00:01:02:03:04:05 dev eth0 [nud [ noapr | permanent | reachable | stale ] ] |
</pre> | </pre> | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip neighbor [ a | d ] 192.168.0.1 l 00:01:02:03:04:05 dev eth0 [nud [ noarp | p | r | stale ] ] |
</pre> | </pre> | ||
|} | |} | ||
− | = | + | =Multicast= |
{|class="wikitable" width="85%" | {|class="wikitable" width="85%" | ||
! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ||
|- | |- | ||
+ | ||Listing des groupes multicast | ||
+ | || | ||
+ | <pre> | ||
+ | # ip maddress show | ||
+ | </pre> | ||
|| | || | ||
+ | <pre> | ||
+ | # ip m | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Ajout / Suppression d'une couche liaison à un groupe multicast (besoin très rare) | ||
+ | || | ||
+ | <pre> | ||
+ | # ip maddress [ add | del ] 00:01:02:03:04:05 dev eth0 | ||
+ | </pre> | ||
+ | || | ||
+ | <pre> | ||
+ | # ip m [ a | d ] 00:01:02:03:04:05 dev eth0 | ||
+ | </pre> | ||
+ | |- | ||
+ | ||Listing des routes multicast | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip mroute show |
</pre> | </pre> | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip mr |
</pre> | </pre> | ||
|} | |} | ||
− | + | =Monitoring= | |
− | = | ||
{|class="wikitable" width="85%" | {|class="wikitable" width="85%" | ||
! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ! Description !! Commande ''iproute2'' (full) !! Commande ''iproute2'' (short) | ||
|- | |- | ||
+ | ||Monitoring de tous les événements | ||
|| | || | ||
+ | <pre> | ||
+ | # ip monitor all | ||
+ | </pre> | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip mo |
</pre> | </pre> | ||
+ | |- | ||
+ | ||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 | ||
|| | || | ||
<pre> | <pre> | ||
− | # ip | + | # ip [ -4 | -6 ] monitor [ link | address | route | mroute | neigh ] [ file event.log ] |
</pre> | </pre> | ||
+ | || | ||
+ | <pre> | ||
+ | # ip [ -4 | -6 ] mo [ l | a | r | m | n ] | ||
+ | </pre> | ||
+ | |- | ||
+ | ||''rtmon'' peut lire un fichier de log binaire (créé précédemment par ''ip monitor'') | ||
+ | || | ||
+ | <pre> | ||
+ | # rtmon [ -4 | -6 ] [ link | address | route | mroute | neigh ] file event.log | ||
+ | </pre> | ||
+ | || | ||
|} | |} |
Version actuelle datée du 25 décembre 2023 à 18:17
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 |
Voir les membres d'une interface bridge |
# bridge link show |
# bridge l |
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) |
---|---|
Affichage d'un résumé sur les sockets établies, fermées, orphelines et en attentes |
# ss -s |
Affiche les processus ainsi que les sockets utilisées |
# ss -pln |
Affichage des tous les processus ainsi que des sockets:
|
# ss -a [ -u | -t | -w | -x ] -np |
Affichage des tous les connexion http établies: |
# ss -o state established '( dport = 80 or sport = 80 )' |
Voisinage
Description | Commande iproute2 (full) | Commande iproute2 (short) |
---|---|---|
Listing de tous les voisins |
# ip neighbor show |
# ip n |
Listing des voisins par interface |
# ip neighbor show dev eth0 |
# ip n s dev eth0 |
Suppression des voisins par interface |
# ip neighbor flush dev eth0 |
# ip n f dev eth0 |
Ajout / Suppression d'une entrée avec possibilité de modifier la nud (Neighbor Unreachability Detection) :
|
# ip neighbor [ add | del ] 192.168.0.1 lladdr 00:01:02:03:04:05 dev eth0 [nud [ noapr | permanent | reachable | stale ] ] |
# ip neighbor [ a | d ] 192.168.0.1 l 00:01:02:03:04:05 dev eth0 [nud [ noarp | p | r | stale ] ] |
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 :
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 |