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).
.network pour DHCP ou statique.networkctl pour diagnostiquer et gérer les interfaces.systemd-networkd.systemd-networkd est un démon qui gère la configuration réseau via des fichiers de type .network, .netdev et .link.
/etc/systemd/network/ (ou /usr/lib/systemd/network/ par défaut).networkctl..network| Section | Directive | Description |
|---|---|---|
[Match] | Name=eth0 | Identifie l’interface concernée. |
[Network] | DHCP=yes / Address=192.168.1.10/24 | Configure l’adressage. |
[Network] | Gateway=192.168.1.1 | Passerelle par défaut. |
[Network] | DNS=8.8.8.8 1.1.1.1 | Serveurs DNS. |
[Link] | MTU=1500 | Paramètres de la couche liaison. |
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.
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.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.DNS pour plusieurs serveurs.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
| Commande | Description |
|---|---|
networkctl | Affiche l’état des interfaces. |
networkctl status eth0 | Détails d’une interface. |
sudo networkctl reload | Recharge les fichiers .network. |
sudo systemctl restart systemd-networkd | Redémarre le service. |
sudo systemctl restart systemd-resolved | Redémarre le résolveur DNS. |
journalctl -u systemd-networkd -f | Consulte les logs en direct. |
networkctl status
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.
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
systemd-resolve --status
Vérifie que les DNS sont bien pris en compte.
À 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.).
É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
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=.