Outils pour utilisateurs

Outils du site


netadmin:linux:configuration-ip

Configuration IP des interfaces

Deux principaux outils en ligne de commande sont disponibles sur les distributions GNU/Linux pour la configuration des interfaces ifconfig et ip

Différents services peuvent se charger de la configuration des interfaces réseau. Généralement deux façons permettent de le faire sur un système Debian/Ubuntu:

  1. Via le fichier de configuration des interfaces lu par les scripts d'initialisation système;
  2. via le service NetworkManager.
Le démarrage des interfaces arrive plus tôt lorsqu'elles sont configurées dans le fichier /etc/network/interfaces.

Adresser les interfaces

Afficher la configuration des interfaces

Sans arguments, la commande ifconfig ne liste que les interfaces actives. Pour lister toutes les interfaces existantes utiliser l'argument -a:

$ ifconfig -a
 
# équivalent 
ip addr show
ifconfig est la commande historique, on la trouve dans le paquet net-tools. L'usage de la commande ip est recommandé.

Activation/désactivation des interfaces

Pour désactiver/réactiver une interface spécifique utiliser les options down ou up

ifconfig eth0 down

Ajout/suppression d'alias

Pour associer plusieurs adresses IP à une interface (on parle d'alias), suffixer le nom de l'interface par :num-alias suivit de l'adresse IP où num-alias est un nombre:

$ sudo ifconfig eth0:0 192.168.1.124

Pour supprimer l'alias utiliser l'argument down en désignant l'alias:

$ sudo ifconfig eth0:0 down

Redéfinir l'adresse mac

L'adresse EUI-48 associée à la carte d'interface Ethernet peut être redéfinie via les arguments hw ether:

$ sudo ifconfig eth0 hw ether 0a:bb:cd:ef:ff:ff

Table de routage

Afficher la table de routage du noyau avec l'une des commandes ci-dessous:

$ route
$ ip route show
$ nestat -rn

Définir la passerelle par défaut

Avec la commande route:

$ sudo route add default gateway 192.168.1.1

Ou avec la commande ip:

$ sudo ip route add default via 192.168.1.1

Pour que la modification soit permanente, modifier le fichier de configuration /etc/network/interfaces et sur une interface active automatiquement ajouter la déclaration gateway

auto lan
iface lan inet static
  ...
  gateway 192.168.1.1

Ajouter une route

$ sudo ip route add to 192.9.205.0 via 192.9.200.254

Le fichier /etc/network/interfaces

Les systèmes Ubuntu/Debian utilisent le fichier /etc/network/interfaces pour paramétrer les interfaces disponibles.

Syntaxe

Les définitions d'interfaces commençant par le mot clé 'auto' identifient les interfaces s'activant automatiquement quand la commande ifup est invoquée avec l'argument -a. Cette commande est utilisée par le script de démarrage du système.

# Interface automatiquement activée au démarrage
# du système
auto lan0

Il est possible d’exécuter des commandes à l'activation et à la désactivation d'une interface réseau via les mots clés up et down. Les commandes placées derrière les mots clés sont exécutées textuellement.

auto eth0
iface eth0 inet static
     address 192.168.1.42
     network 192.168.1.0
     netmask 255.255.255.128
     broadcast 192.168.1.0
     up route add -net 192.168.1.128 netmask 255.255.255.128 gw 192.168.1.2
     up route add default gw 192.168.1.200
     down route del default gw 192.168.1.200
     down route del -net 192.168.1.128 netmask 255.255.255.128 gw 192.168.1.2

Les directives pre-up et post-down sont également disponibles. Les valeurs de retours de ces commandes peuvent être testées. En cas d'erreur la configuration sera interrompue.

auto eth0
iface eth0 inet dhcp
     # Active et configure l'interface
     # en DHCP seulement si le fichier set-lan existe
     pre-up [ -f /etc/network/set-lan ]
     ...

Exemples

Configuration statique d'une interface ici nommée lan0

# Configuration statique de l'interface LAN
auto lan0
iface lan0 inet static
     address 192.168.0.123
     network 192.168.0.0
     netmask 255.255.255.0
     broadcast 192.168.0.255
     gateway 192.168.0.254

Il est possible de définir plusieurs adresses sur une même interface physique:

 auto eth0 eth0:1
 iface eth0 inet static
     address 192.168.0.100
     network 192.168.0.0
     netmask 255.255.255.0
     broadcast 192.168.0.255
     gateway 192.168.0.1
 iface eth0:1 inet static
     address 192.168.0.200
     network 192.168.0.0
     netmask 255.255.255.0

Activer une interface pour surveiller le trafic sur le réseau:

auto eth0
iface eth0 inet manual
    up ifconfig $IFACE 0.0.0.0 up
    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off
    down ifconfig $IFACE down

Références

netadmin/linux/configuration-ip.txt · Dernière modification : 2021/12/27 11:00 de yoann