Comme tous les clones de Red Hat Enterprise Linux, la distribution Rocky Linux utilise NetworkManager, un outil de gestion de réseau développé par Red Hat depuis 2004. En théorie, un nombre significatif d’administrateurs considèrent qu’il s’agit là d’une couche d’abstraction et de complexité supplémentaire, et dont on peut aisément se passer. En pratique, Red Hat met en avant l’utilisation de NetworkManager depuis RHEL 7.0, et cette préférence a tendance à s’accentuer depuis la publication de RHEL 8.0.
- Sous Red Hat Enterprise Linux 7.x et CentOS 7.x il est tout à fait possible de supprimer tous les paquets
NetworkManager-*
et de passer par la configuration manuelle des scriptsifcfg-<interface>
dans/etc/sysconfig/network-scripts
. C’est d’ailleurs ce que je préconise dans le premier tome de mon ouvrage Administration Linux par la pratique. - Sous Red Hat Enterprise 8.x et Rocky Linux 8.x cette manière de procéder est tolérée, quoique considérée officiellement comme obsolète. Le guide officiel Considerations in adopting Red Hat Enterprise Linux 8 le dit bien : « Network scripts are deprecated in Red Hat Enterprise Linux 8 and are no longer provided by default.«
Parmi les avantages de NetworkManager, on notera l’abolition des idiosyncrasies de configuration spécifiques aux distributions. De ce point de vue, NetworkManager est au réseau ce que systemd
est à l’initialisation et la gestion des services.
Je ne vais pas rédiger un article exhaustif – c’est-à-dire qui épuise le sujet aussi bien que le lecteur – sur NetworkManager. Au lieu de cela, je vais présenter en détail trois cas pratiques assez répandus :
Note pour les chipoteurs : le terme « serveur LAN » est une distinction purement pragmatique qui désigne une machine telle qu’on la trouve dans le local de serveurs d’une école, d’une mairie ou d’une PME, par opposition à un serveur dédié installé dans un datacenter.
Une fois que nous aurons vu en détail ces trois configurations, nous en profiterons pour parler de quelques points importants à vérifier.
NetworkManager sur un serveur LAN
Afficher les interfaces réseau gérées par NetworkManager :
# nmcli dev DEVICE TYPE STATE CONNECTION enp2s0 ethernet connected enp2s0 lo loopback unmanaged --
Configurer la connexion :
# nmtui
- Sélectionner
Edit a connection
. - Éditer la connexion.
- Remplacer le nom de profil par
LAN
. - Passer
IPv4 CONFIGURATION
deAutomatic
àManual
. - Cliquer sur
Show
pour afficher les détails. - Fournir l’adresse IP du serveur en notation CIDR, par exemple
192.168.2.3/24
. - Renseigner l’adresse IP de la passerelle dans le champ
Gateway
. - Ne rien indiquer dans les champs
DNS server
etSearch domains
. - Passer
IPv6 CONFIGURATION
deAutomatic
àIgnore
. - Confirmer par
OK
. - Revenir à la fenêtre principale.
- Activer la connexion
LAN
:Activate a connection
>LAN
- Quitter NetworkManager TUI :
Quit
.
Renseigner le ou les serveurs DNS :
# /etc/resolv.conf
search microlinux.lan
nameserver 192.168.2.1
Corriger la configuration du nom d’hôte :
# /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.2.3 sandbox.microlinux.lan sandbox
Le fichier /etc/hostname
devra juste contenir le nom d’hôte simple sans le domaine :
sandbox
NetworkManager sur un routeur
Afficher les interfaces réseau gérées par NetworkManager :
# nmcli dev DEVICE TYPE STATE CONNECTION enp2s0 ethernet connected enp2s0 enp3s1 ethernet disconnected -- lo loopback unmanaged --
Configurer les connexions :
# nmtui
- Sélectionner
Edit a connection
. - Éditer la connexion active.
- Remplacer le nom de profil par
WAN
. - Passer
IPv4 CONFIGURATION
deAutomatic
àManual
. - Cliquer sur
Show
pour afficher les détails. - Fournir l’adresse IP du serveur en notation CIDR, par exemple
192.168.2.5/24
. - Renseigner l’adresse IP de la passerelle dans le champ
Gateway
. - Ne rien indiquer dans les champs
DNS server
etSearch domains
. - Passer
IPv6 CONFIGURATION
deAutomatic
àIgnore
. - Confirmer par
OK
. - Éditer le profil correspondant à la deuxième interface.
- Remplacer le nom de profil par
LAN
. - Renseigner la rubrique
Device
, par exempleenp3s1
. - Passer
IPv4 CONFIGURATION
deAutomatic
àManual
. - Cliquer sur
Show
pour afficher les détails. - Fournir l’adresse IP de la deuxième interface, par exemple
192.168.3.1/24
. - Ne rien indiquer dans les champs
Gateway
,DNS server
etSearch domains
. - Passer
IPv6 CONFIGURATION
deAutomatic
àIgnore
. - Confirmer par
OK
. - Revenir à la fenêtre principale.
- Activer les deux connexions
WAN
etLAN
. - Quitter NetworkManager TUI :
Quit
.
Renseigner le ou les serveurs DNS :
# /etc/resolv.conf
nameserver 192.168.2.1
Corriger la configuration du nom d’hôte :
# /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.3.1 amandine.sandbox.lan amandine
Le fichier /etc/hostname
devra juste contenir le nom d’hôte simple :
amandine
NetworkManager sur un serveur dédié
Afficher les interfaces réseau gérées par NetworkManager :
# nmcli dev DEVICE TYPE STATE CONNECTION eth0 ethernet connected System eth0 lo loopback unmanaged --
Configurer la connexion :
# nmtui
- Éditer la connexion existante.
- Remplacer le nom de profil par
WAN
. - Passer
IPv4 CONFIGURATION
deAutomatic
àManual
. - Cliquer sur
Show
pour afficher les détails. - Fournir l’adresse IP du serveur en notation CIDR, par exemple
51.158.146.161/24
. - Renseigner l’adresse IP de la passerelle dans le champ
Gateway
. - Ne rien indiquer dans les champs
DNS server
etSearch domains
. - Passer
IPv6 CONFIGURATION
deAutomatic
àIgnore
. - Confirmer par
OK
. - Revenir à la fenêtre principale.
- Activer la connexion
WAN
. - Quitter NetworkManager TUI :
Quit
.
Renseigner le ou les serveurs DNS :
# /etc/resolv.conf
nameserver 62.210.16.6
nameserver 62.210.16.7
Corriger la configuration du nom d’hôte :
# /etc/hosts
127.0.0.1 localhost.localdomain localhost
51.158.146.161 sd-155842.dedibox.fr sd-155842
Le fichier /etc/hostname
devra juste contenir le nom d’hôte simple :
sd-155842
Vérifications et peaufinages
NetworkManager n’est pas exactement un outil simple qui obéit au principe KISS. Son maniement est assez idiosyncratique et parfois même un peu obtus. Voici en vrac une série de choses à savoir et de points importants à vérifier.
- C’est une bonne idée de désactiver les interfaces que l’on n’utilise pas.
- J’aime bien donner des noms parlants du genre
WAN
ouLAN
aux profils de connexion. - À mon humble avis, c’est une bonne pratique d’inscrire les informations DNS uniquement dans le fichier
/etc/resolv.conf
et non pas dans la configuration des interfaces. Sur un routeur, c’est même obligatoire, sous peine de se retrouver confronté à toute une série de dysfonctionnements exaspérants. - Vérifier à deux fois si la configuration manuelle du fichier
/etc/resolv.conf
ne se fait pas écraser par autre chose. C’est le cas lorsqu’on a oublié de supprimer la configuration DNS individuelle d’une interface.
La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.
0 commentaire