15 commandes ifconfig pour configurer une interface réseau sous Linux

Ifconfig (Interface Configuration) est un utilitaire en ligne de commandes Linux pour configurer, gérer et interroger des paramètres d'une interface réseau via une interface de ligne de commande ou dans des scripts de configuration système.

La commande ifconfig est utilisée pour afficher les informations de configuration de réseau actuelles, configurer une adresse IP, Netmask ou une adresse de diffusion à une interface réseau, créer un alias pour l'interface réseau, configurer d'une adresse MAC et activer ou désactiver les interfaces réseau.
Même si, sur les distributions Linux modernes, elle est remplacée par la commande ip.

Dans ce tutoriel, je vous donne 15 exemples de commandes ifconfig à connaître pour configurer les interfaces réseaux sur Linux.

15 commandes ifconfig pour configurer une interface réseau sous Linux

15 commandes ifconfig pour configurer une interface réseau sous Linux

Afficher tous les paramètres d'interface réseau

Pour afficher les cartes réseaux actives dans Linux, on peut utiliser la commande seule en root :

ifconfig

Il est aussi possible d'exécuter ifconfig depuis un utilisateur courant en indiquant le chemin complet :

/sbin/ifconfig
Lister et afficher la configuration des interfaces réseaux avec ifconfig sur Linux

On obtient alors les informations suivantes :

  • Les flags et MTU
  • L'adresse IPv4 (inet) et le Broadcast
  • L'adresse IPv6
  • Ether avec l'adresse MAC de l'interface Ethernet
  • Le RX (number of received packets) - compteur des paquets entrants
  • Le TX (number of transmitted packets) - compteur des paquets sortants

Pour chaque compteur de paquets, on trouve :

  • dropped : les paquets abandonnés par l'interface ou le noyau Linux. Par exemple à cause d'un pare-feu ou n'étant pas destiné à l'interface réseau
  • errors : les paquets en erreur
  • overruns : Nombre de paquets perdus en raison de la queue dépassée

Les compteurs de paquets sont en grande partie issues de /proc/net/dev.

Afficher les informations de toutes les interfaces réseau

La commande ifconfig suivante avec l'argument -a affiche des informations de toutes les interfaces réseau actives ou inactives sur le serveur.

ifconfig -a

Voir les paramètres réseau de l'interface spécifique

En spécifiant le nom de l'interface, vous pouvez obtenir les paramètres, configurations de cette dernière.

ifconfig <interface>

Par exemple, pour avoir les informations de l'interface Eth0 :

ifconfig eth0

Ou encore Eno1 :

ifconfig eno1
Lister et afficher la configuration des interfaces réseaux avec ifconfig sur Linux

Comment activer une interface réseau

Pour activer une interface réseau, on utilise les paramètres up ou ifup avec le nom d'interface active une interface réseau s'il n'est pas d'état inactif et permettant d'envoyer et de recevoir des informations.

Par exemple pour activer l'interface réseau Eno1 :

ifconfig eno1 up
ifup eno1

Comment désactiver une interface réseau

Dans le même esprit, pour désactiver une interface réseau avec ifconfig, on utilise les paramètres down ou ifdown avec le nom de l'interface.

Par exemple pour désactiver l'interface réseau eno1 :

ifconfig eno1 down
ifconfig eno1 down

Comment assigner une adresse IP à l'interface réseau

Pour attribuer une adresse IP à une interface spécifique, utilisez la commande suivante avec une adresse d'interface et une adresse IP que vous souhaitez définir.

Par exemple, "ifconfig Eth0 172.16.15.10" définira l'adresse IP sur Interface Eth0.

ifconfig eth0 172.16.15.10

Ou encore pour configurer l'interface Eno1 avec l'adresse IP 37.187.13.51 :

ifconfig eno1 37.187.13.51

Comment assigner un masque Netmask à l'interface réseau

En utilisation de la commande ifconfig avec l'argument Netmask et le nom de l'interface, vous pouvez un masque de sous réseau à une interface donnée.

Par exemple, "IFCONFIG Eth0 Netmask 255.255.255.224" définira le masque de réseau sur une interface donnée eth0.

ifconfig eth0 netmask 255.255.255.224

Ou encore pour attribuer le masque de sous-réseau 255.255.255.0 à l'interface Eno1 :

ifconfig eno1 netmask 255.255.255.0

Comment attribuer une diffusion à l'interface réseau

L'utilisation de l'argument broadcast avec un nom d'interface définira l'adresse de diffusion de l'interface donnée.

Par exemple, la commande "IFCONFIG Eth0 Broadcast 172.16.15.10" définit l'adresse de diffusion à une interface eth0.

ifconfig eth0 broadcast 172.16.15.255

Ou encore pour configurer l'adresse de diffusion 37.187.13.255 à l'interface Eno1 :

ifconfig eno1 37.187.13.255

Comment attribuer une adresse IP, Netmask et diffuser à l'interface réseau

Pour configurer une adresse IP, un masque de sous-réseau et une adresse de diffusion tout à la fois à l'aide de la commande ifconfig avec tous les arguments comme indiqué ci-dessous :

ifconfig eth0 172.16.15.10 netmask 255.255.255.224 broadcast 172.16.15.255

Comment changer de MTU pour une interface réseau

L'argument "MTU" définit l'unité de transmission maximale à une interface.
Le MTU vous permet de définir la taille limite des paquets transmis sur une interface. Le MTU est capable de gérer un nombre maximal d'octets à une interface dans une seule transaction.

Par exemple, "ifconfig Eth0 MTU 1000" définira l'unité de transmission maximale à un ensemble donné.

ifconfig eth0 mtu 1000

Par exemple pour configurer un MTU de 1500 à l'interface Eno1 :

ifconfig eno1 mtu 1500

Comment activer le mode promiscuous

En temps normal, lorsqu'un paquet est reçu par une carte réseau, il vérifie qu'il appartient à lui-même. Sinon, le paquet est abandonné (droppé), mais dans le mode promiscuous est utilisé pour accepter tous les paquets qui traversent la carte réseau.

Les outils réseau d'analyses de paquets passent une interface en mode mode promiscuous pour capturer et analyser les paquets qui traversent l'interface réseau.
C'est notamment le cas de tcpdump, ngrep, wiresharck, ...

Pour passer l'interface Eth0 en promiscuous :

ifconfig eth0 promisc

Comment désactiver le mode promiscuous

Enfin pour désactiver le mode promiscuous d'une interface réseau, on utilise le paramètre -promisc.

Par exemple pour désactiver le mode promiscuous de l'interface Eth0 :

ifconfig eth0 -promisc

Comment ajouter un nouvel alias à l'interface réseau

L'utilitaire ifconfig vous permet de configurer des interfaces réseau supplémentaires à l'aide de la fonctionnalité Alias.
Pour ajouter l'interface réseau Alias d'Eth0, utilisez la commande suivante :

ifconfig eth0:0 172.16.15.11

Veuillez noter que l'adresse réseau d'alias est dans le même masque de sous-réseau. Par exemple, si votre adresse IP de réseau Eth0 est 172.16.15.10, l'adresse IP d'alias doit être 172.16.15.11.

Dans cet autre exemple, on ajoute l'alias ens33:0 :

Comment ajouter un nouvel alias à l'interface réseau avec ifconfig

Comment supprimer l'alias à l'interface réseau

Pour supprimer l'alias d'une interface réseau avec ifconfig :

ifconfig eth0:0 down

Comment changer l'adresse MAC de l'interface réseau

Pour modifier l'adresse Mac (Media Access Control) d'une interface réseau eth0, utilisez la commande suivante avec l'argument HW Ether.

Par exemple, voir ci-dessous.

ifconfig eth0 hw ether 0B:BC:DC:AD:32:CF