Configurer le réseau sous Linux efficacement
Mise à jour :
Configurer le réseau sous Linux, ce n’est pas juste attribuer une IP ou pinger une passerelle. C’est savoir comment chaque couche interagit, comment sécuriser les flux, comment garantir la disponibilité d’un service.
En tant qu’administrateur système, je me dois de comprendre les outils
disponibles — du simple fichier /etc/network/interfaces
jusqu’aux solutions
modernes comme Netplan, systemd-networkd ou NetworkManager.
Comprendre les bases du réseau sous Linux
Avant de modifier quoi que ce soit sur une interface réseau, il faut bien comprendre comment Linux gère la connectivité. Cette couche réseau repose sur une architecture souple, mais parfois déroutante, entre les différentes interfaces, fichiers de configuration et commandes.
Interfaces réseau : eth0
, enp0s3
, wlan0
…
Chaque carte réseau physique ou virtuelle est représentée par un nom d’interface. Selon les versions de Linux, on retrouve :
eth0
,eth1
: anciennes conventions basées sur l’ordre de détection matérielle,enp0s3
,ens33
: noms prédictibles selon le bus PCI (adopté par systemd),wlan0
,wlp3s0
: interfaces sans fil.
Je peux lister les interfaces disponibles avec :
ip link show1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1280 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 00:15:5d:4f:bf:53 brd ff:ff:ff:ff:ff:ff altname enx00155d4fbf53
Ou plus simplement :
ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1280 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:4f:bf:53 brd ff:ff:ff:ff:ff:ff altname enx00155d4fbf53 inet 172.19.104.109/20 brd 172.19.111.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::215:5dff:fe4f:bf53/64 scope link valid_lft forever preferred_lft forever
Adresses IP, masque, passerelle, DNS : les éléments fondamentaux
Pour établir une connexion réseau, chaque interface doit être configurée avec au minimum :
- Une adresse IP (IPv4 ou IPv6),
- Un masque de sous-réseau (
255.255.255.0
ou/24
), - Une passerelle (gateway) pour sortir du réseau local,
- Un ou plusieurs serveurs DNS pour résoudre les noms de domaine.
Ces éléments peuvent être définis manuellement (IP statique) ou récupérés automatiquement via DHCP.
IPv4 vs IPv6
Linux gère IPv4 et IPv6 en parallèle. Les commandes et fichiers de configuration permettent souvent de traiter les deux.
Afficher les IP assignées :
ip -4 addr # Pour IPv4ip -6 addr # Pour IPv6
Il est essentiel de savoir si votre réseau interne ou vos fournisseurs exigent l’une ou l’autre des versions.
Configuration IP : statique vs DHCP
Configurer une adresse IP sous Linux est une étape incontournable. Selon le contexte — serveur, poste de travail, machine virtuelle, conteneur — je dois décider si l’interface doit obtenir ses paramètres automatiquement via DHCP ou être configurée de manière statique.
Définir une adresse IP statique
Attribuer une IP fixe permet de garantir que la machine sera toujours accessible à la même adresse. C’est indispensable pour :
- les serveurs (web, DNS, base de données…),
- les équipements réseau (routeurs, switchs),
- ou tout système exposé.
Configurer une IP via DHCP
Le DHCP (Dynamic Host Configuration Protocol) est souvent utilisé sur les postes de travail, les VMs temporaires ou en lab. Il permet d’attribuer automatiquement une adresse IP et les paramètres réseau.
Choisir entre statique et DHCP
Cas d’usage | Recommandation |
---|---|
Serveur en production | IP statique |
Poste utilisateur / laptop | IP via DHCP |
Environnement de test/VM | DHCP ou statique |
Accès distant / SSH | IP fixe |
Il faut aussi vérifier que l’adresse IP statique est réservée sur le serveur DHCP ou exclue du pool pour éviter les conflits.
Diagnostic rapide
Quelques commandes utiles :
ping 192.168.1.1 # Tester la passerelledig google.com # Tester la résolution DNSip r # Vérifier la route par défautsystemctl restart networking # Relancer les services réseau
Les outils de configuration réseau sous Linux
Sous Linux, il n’existe pas un seul outil universel pour configurer le réseau. Le choix dépend de la distribution, de l’usage (serveur ou desktop) et des préférences d’administration. Voici les trois outils que je rencontre le plus souvent : Netplan, systemd-networkd et NetworkManager.
Netplan : l’interface unifiée pour Ubuntu
Introduit par Ubuntu, Netplan est une surcouche de configuration qui
délègue à networkd
ou NetworkManager
l’application des paramètres. Il
utilise des fichiers YAML dans /etc/netplan/
.
Exemple d’un fichier Netplan pour une IP statique :
network: version: 2 ethernets: eth0: addresses: - 192.168.1.10/24 gateway4: 192.168.1.1 nameservers: addresses: [1.1.1.1, 8.8.8.8]
Pour appliquer :
netplan apply
Plus d’info Netplan.
systemd-networkd : minimaliste et serveur-friendly
systemd-networkd fait partie de systemd et permet une configuration réseau légère et déclarative, sans dépendance graphique. Idéal pour les serveurs.
Les fichiers sont situés dans :
/etc/systemd/network/
Avec des fichiers .network
, .netdev
pour décrire interfaces, VLAN, bonds…
Activation :
systemctl enable --now systemd-networkd
NetworkManager : pour les postes de travail
NetworkManager est pensé pour la mobilité, les connexions dynamiques et l’intégration avec les environnements graphiques. Il est utilisé par défaut sur Fedora, Ubuntu Desktop, et d’autres.
En ligne de commande :
nmcli device shownmtui # Interface texte interactive
Il permet aussi de gérer facilement le Wi-Fi, les VPN, et plusieurs profils de configuration.
À retenir :
- Netplan = standard Ubuntu, simple mais rigide.
- systemd-networkd = robuste, scriptable, parfait pour les serveurs.
- NetworkManager = flexible, idéal pour le bureau et la mobilité.
Conclusion
Maîtriser la configuration réseau sous Linux, ce n’est pas seulement savoir attribuer une IP ou relancer une interface. C’est comprendre les mécanismes sous-jacents, choisir les bons outils selon le contexte, et anticiper les erreurs grâce à une configuration claire, stable et documentée.
Que ce soit avec Netplan sur un serveur Ubuntu, NetworkManager sur un laptop Fedora, ou systemd-networkd sur une VM minimaliste, chaque outil a sa place.