
La commande IP fait partie du package iproute qui est installé par défaut dans les distributions Linux modernes. Sous Linux, la commande IP est utilisée pour gérer et afficher les interfaces réseau, les adresses IP, la table de routage IP et les entrées de voisinage IP. Il est couramment utilisé pour attribuer une adresse IP à une interface réseau et configurer les paramètres de l'interface réseau.
Dans ce tutoriel, nous allons apprendre la commande IP Linux avec des exemples d'utilisation.
Comment utiliser la commande IP Linux
Voici la syntaxe de la commande IP.
$ ip [ OPTIONS ] OBJECT { COMMAND | help }
$ ip help

OBJECT est le type d'objet que vous souhaitez gérer, qui comprend :
- lien (l) :Il affiche et modifie les interfaces réseau.
- adresse (a) :affiche et modifie les adresses IP.
- route (r) :affiche et modifie la table de routage.
- neigh (n) :affiche et modifie la table ARP.
Vous pouvez utiliser la forme complète ou courte pour exécuter la commande. Par exemple, en utilisant ip addr
ou ip address
affichera la même sortie.
1. Afficher et gérer les adresses IP
La commande ip addr vous permet d'afficher, d'attribuer, de supprimer l'adresse IP dans un système Linux. L'objet ip addr utilise la syntaxe suivante.
ip addr [ COMMAND ] ADDRESS dev IFNAME
Utilisez la commande help pour en savoir plus sur les commandes d'adresse.
ip addr help

Afficher une liste de toutes les interfaces réseau
La commande ip addr show liste toutes les interfaces réseau et les adresses IP attribuées.
Par exemple :
ip addr show

Pour afficher la sortie uniquement pour IPv4 ou IPv6, utilisez la commande suivante.
To display IPv4 ip addressip -4 addr
To display IPv6 ip addressip -6 addr
Afficher des informations sur une interface réseau spécifique
Pour afficher des informations sur une interface spécifique, utilisez la syntaxe suivante.
ip addr show dev [Device Name]
Par exemple, pour afficher des informations sur ens33, tapez ce qui suit.
ip addr show dev ens33

Attribuer une adresse IP à une interface
Utilisez la commande ip addr add pour attribuer une adresse IP à une interface.
Syntaxe :
ip addr add [ ADDRESS ] dev [Interface Name]
L'[ADRESSE] est l'adresse que vous souhaitez attribuer au [Nom de l'interface].
Par exemple, pour ajouter l'adresse 192.168.239.140 avec le masque de sous-réseau 24 au périphérique ens33 :
ip addr add 192.168.239.140/24 dev ens33
Aucune sortie ne s'affiche si l'adresse IP est ajoutée à l'appareil ou si une erreur s'affiche.
Ajouter plusieurs adresses IP à une interface
Pour ajouter plusieurs adresses IP à une interface, vous devez utiliser la même commande que ci-dessus plusieurs fois.
Par exemple, pour ajouter les adresses 192.168.239.140 et 192.168.239.135 avec le masque de sous-réseau 24 au périphérique ens33, saisissez ce qui suit.
ip addr add 192.168.239.140/24 dev ens33
ip addr add 192.168.239.135/24 dev ens33
Supprimer l'adresse IP d'une interface
Pour supprimer une adresse IP d'une interface, utilisez la syntaxe suivante.
ip addr del [ ADDRESS ] dev [ Interface Name ]
Par exemple, pour supprimer l'adresse 192.168.30.12 avec le masque de sous-réseau 24 du périphérique ens33, saisissez ce qui suit.
ip addr del 192.168.239.140/24 dev ens33
Aucune sortie ne s'affiche si l'adresse IP est supprimée de l'appareil ou si une erreur s'affiche.
2. Afficher et gérer les interfaces réseau
La commande ip link est utilisée pour gérer et afficher l'état de toutes les interfaces réseau. Vous pouvez définir des valeurs d'interface réseau de pile TCP/IP telles que txqueuelen, interface up/down et MTU. Nous pouvons utiliser ip link set
commande pour cela.
Pour afficher une liste des commandes d'objet lien, vous pouvez utiliser la commande d'aide comme suit.
$ ip link help

Obtenir des informations sur l'interface réseau
La commande ip link show affiche des informations pour toutes les interfaces réseau.
$ ip link show

Pour afficher des informations sur un périphérique spécifique, utilisez la syntaxe suivante.
$ ip link show dev [Device Name]
Par exemple, pour afficher des informations réseau sur ens33, vous utiliserez ce qui suit.
$ ip link show dev ens33

Définir l'état de l'interface sur UP ou DOWN
Pour configurer l'interface vers le haut ou vers le bas, utilisez la syntaxe suivante.
ip link set dev [ Device Name ] [ up/down ]
Par exemple, pour mettre en ligne ens33, utilisez la commande suivante.
ip link set dev ens33 up
Aucune sortie ne s'affiche si l'appareil est allumé ou si une erreur s'affiche.
De même, pour faire tomber ens33, utilisez la commande suivante.
ip link set dev ens33 down
Aucune sortie ne s'affiche si l'appareil est éteint ou si une erreur s'affiche.
Changer txqueuelen de l'appareil
Pour modifier la file d'attente de transmission d'un périphérique, utilisez la syntaxe suivante.
ip link set txqueuelen [ Number ] dev [ Interface Name ]
Par exemple, pour définir la file d'attente de transmission 5 du périphérique ens33, utilisez la commande suivante.
ip link set txqueuelen 5 dev ens33
Aucune sortie ne s'affiche si la file d'attente de transmission est définie ou si une erreur s'affiche.
Modifier le MTU
Pour modifier le MTU (Maximum Transmit Unit), utilisez la syntaxe suivante.
ip link set mtu [ Number ] dev [ Interface Name ]
Par exemple, définissez le MTU de l'appareil ens33 sur 1400, utilisez la commande suivante.
ip link set mtu 1400 dev ens33
Aucune sortie ne s'affiche si la MTU est modifiée ou une erreur s'affiche si le nom de l'appareil n'existe pas ou si la MTU est inférieure au minimum de l'appareil.
Modifier l'adresse MAC
Pour modifier l'adresse MAC d'un périphérique, utilisez la syntaxe suivante.
ip link set dev [ Device Name ] address [ MAC ADDRESS ]
Supprimer l'interface virtuelle
Vous pouvez utiliser la commande ip link delete pour supprimer l'interface virtuelle. Par exemple
ip link delete vip
Cela supprimera l'interface virtuelle nommée vip.
Ajouter un pont et une interface virtuelle
L'ajout de lien IP permet d'ajouter un pont, une machine virtuelle et un vlan.
Syntaxe :
ip link add [ link DEVICE ] type TYPE [ ARGS ]
TYPE := [ bridge | can | dummy | ifb | ipoib | macvlan | vcan | veth | vlan | vxlan |
ip6tnl | ipip | sit | gre | gretap | ip6gre | ip6gretap ]
Par exemple :
ip link add br0 type bridge
Cela crée un pont nommé br0.
3. Afficher et gérer le tableau de routage IP
L'objet route permet d'afficher et de gérer la table de routage IP.
Pour afficher une liste des commandes de route IP, utilisez la commande help comme suit.
ip route help

Afficher la table de routage
Pour obtenir une liste de toutes les entrées de route, utilisez l'une des commandes suivantes.
ip route
ip route list

La sortie affichée ci-dessus correspond à toutes les entrées de route dans le noyau. Pour le réduire, ajoutez l'objet SELECTOR comme suit.
ip route list SELECTOR
Pour afficher le routage d'un réseau spécifique, utilisez la syntaxe suivante.
ip route list [ IP ADDRESS ]
Ajouter un nouvel itinéraire
Pour ajouter une nouvelle route à la table de routage, utilisez la syntaxe suivante.
ip route add [ IP ADDRESS ] dev [ Interface Name ]
Vous pouvez ajouter une nouvelle route via la passerelle en utilisant la syntaxe suivante.
ip route add [ IP ADDRESS ] via [ Gateway ]
Par exemple, pour ajouter une nouvelle route 192.168.239.0/24 via la passerelle 192.168.239.1, utilisez la commande suivante.
ip route add 132.168.239.0/24 via 192.168.239.1
Supprimer un itinéraire
Pour supprimer une entrée existante dans la table de routage, utilisez la syntaxe suivante.
ip route del [ IP ADDRESS ]
Pour supprimer la route par défaut, utilisez la commande suivante.
ip route del default
Vous pouvez supprimer une route via la passerelle en utilisant la syntaxe suivante.
ip route del [ IP ADDRESS ] dev [ Interface Name ]
4. Afficher et modifier les entrées des voisins IP
Pour afficher et modifier les entrées de voisinage IP, un objet voisin est utilisé. Pour afficher une liste de toutes les commandes voisines, utilisez la commande help comme suit.
ip neigh help

Afficher le cache voisin/arp
Pour afficher un cache voisin/arp, utilisez la commande suivante.
ip neigh show

Ajouter une entrée ARP
Pour ajouter une entrée ARP, utilisez la syntaxe suivante.
ip neigh add [ IP ADDRESS ] dev [ Interface Name ]
Par exemple, pour ajouter 192.168.239.140 au périphérique ens33, utilisez la commande suivante.
ip neigh add 192.168.239.140 dev ens33
Supprimer une entrée ARP
Pour ajouter une entrée ARP, utilisez la syntaxe suivante.
ip neigh del [ IP ADDRESS ] dev [ Interface Name ]
Par exemple, pour supprimer 192.168.239.140 de l'appareil ens33, utilisez la commande suivante.
ip neigh del 192.168.239.140 dev ens33
Effacer l'entrée ARP
La commande flush ou f vide l'entrée ARP. Pour vider une entrée ARP, utilisez la syntaxe suivante.
ip -s -s n flush [ IP ADDRESS ]
Par exemple, pour vider l'entrée arp pour 192.168.239.140, utilisez la commande suivante.
ip -s -s n flush 192.168.239.140
Conclusion
Dans ce didacticiel, nous avons couvert la commande Linux IP avec ses exemples d'utilisation. Pour plus d'informations, vous pouvez trouver la page de manuel de la commande ip.
Merci d'avoir lu, n'hésitez pas à nous faire part de vos commentaires et suggestions.