🌐 Module L18 – Gestion IP Debian 13 (systemd-networkd)

📘 Cours complet ⏱️ 2h30 🎯 Bloc 2 – Administration Linux
Objectifs : configurer l’adressage IP (statique/DHCP) avec la méthode moderne systemd-networkd, maîtriser les fichiers .network, les commandes networkctl et l’intégration systemd.

📖 Introduction

Depuis Debian 12 (Bookworm), la méthode systemd-networkd est la solution recommandée pour la gestion du réseau. Intégrée à systemd, elle offre une configuration unifiée, un meilleur support des ponts (bridges), des VLAN et une gestion plus fine. Ce module vous apprend à l’utiliser sur Debian 13 (Trixie).

📌 Debian 13 (Trixie) : systemd-networkd est désormais le service par défaut pour la gestion réseau. Il remplace progressivement ifupdown.
🎯

À l'issue de ce module, vous serez capable de :

  • Comprendre l’architecture de systemd-networkd.
  • Créer des fichiers .network pour DHCP ou statique.
  • Utiliser networkctl pour diagnostiquer et gérer les interfaces.
  • Redémarrer et surveiller le service systemd-networkd.

🔍 Architecture de systemd-networkd

systemd-networkd est un démon qui gère la configuration réseau via des fichiers de type .network, .netdev et .link.

📐 Structure d’un fichier .network

SectionDirectiveDescription
[Match]Name=eth0Identifie l’interface concernée.
[Network]DHCP=yes / Address=192.168.1.10/24Configure l’adressage.
[Network]Gateway=192.168.1.1Passerelle par défaut.
[Network]DNS=8.8.8.8 1.1.1.1Serveurs DNS.
[Link]MTU=1500Paramètres de la couche liaison.

🛠️ Configuration pratique

1. Activer systemd-networkd

sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd
sudo systemctl status systemd-networkd

Par défaut, systemd-networkd est actif sur Debian 13.

2. Configuration DHCP

Fichier /etc/systemd/network/20-eth0.network

[Match]
Name=eth0

[Network]
DHCP=yes
  • [Match] Name=eth0 : s’applique à l’interface eth0.
  • DHCP=yes : active le client DHCP pour obtenir IP, route, DNS.

3. Configuration statique

Fichier /etc/systemd/network/20-eth0.network

[Match]
Name=eth0

[Network]
Address=192.168.1.10/24
Gateway=192.168.1.1
DNS=8.8.8.8
DNS=1.1.1.1
  • Address=192.168.1.10/24 : IP et masque (CIDR).
  • Gateway et DNS définis explicitement.
  • Plusieurs lignes DNS pour plusieurs serveurs.

4. Configuration avec plusieurs interfaces

Fichier /etc/systemd/network/20-eth0.network

[Match]
Name=eth0

[Network]
DHCP=yes

Fichier /etc/systemd/network/30-eth1.network

[Match]
Name=eth1

[Network]
Address=192.168.2.10/24
Gateway=192.168.2.1

📋 Commandes essentielles

CommandeDescription
networkctlAffiche l’état des interfaces.
networkctl status eth0Détails d’une interface.
sudo networkctl reloadRecharge les fichiers .network.
sudo systemctl restart systemd-networkdRedémarre le service.
sudo systemctl restart systemd-resolvedRedémarre le résolveur DNS.
journalctl -u systemd-networkd -fConsulte les logs en direct.

🧪 Mise en pratique

Étape 1 : Vérifier le statut

networkctl status

Étape 2 : Créer une configuration DHCP

sudo nano /etc/systemd/network/10-eth0.network
[Match]
Name=eth0
[Network]
DHCP=yes
sudo networkctl reload
sudo systemctl restart systemd-networkd

Vérifier avec networkctl status eth0.

Étape 3 : Passer en statique

sudo nano /etc/systemd/network/10-eth0.network
[Match]
Name=eth0
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
DNS=8.8.8.8
sudo networkctl reload && sudo systemctl restart systemd-networkd

Étape 4 : Vérification DNS

systemd-resolve --status

Vérifie que les DNS sont bien pris en compte.

📝 Exercices d'application

Exercice 1 – Fichier .network

À quoi sert la section [Match] ?

La section [Match] permet de sélectionner l’interface à laquelle la configuration s’applique (via son nom, sa MAC, etc.).

Exercice 2 – Configuration statique

Écrivez un fichier .network pour eth1 avec IP 10.0.0.10/24, passerelle 10.0.0.1, DNS 1.1.1.1 et 9.9.9.9.

[Match]
Name=eth1

[Network]
Address=10.0.0.10/24
Gateway=10.0.0.1
DNS=1.1.1.1
DNS=9.9.9.9

🎯 Quiz d'auto‑évaluation

1. systemd-networkd est le service moderne de gestion réseau sous Debian.

2. Les fichiers de configuration de networkd sont dans /etc/systemd/network/.

3. La directive DHCP=yes active le client DHCP.

4. La commande networkctl reload recharge les fichiers .network.

5. On peut définir plusieurs DNS avec plusieurs lignes DNS=.

📚 Ressources


← Retour au portail
BTS SIO – Lycée NDLP Avranches – Module L18 v1.0