NetworkManagerVoici le deuxième article dans la série sur l’outil de configuration réseau NetworkManager. Le premier article était consacré à une présentation générale de l’application. Aujourd’hui nous allons prendre en main NetworkManager sur un serveur local muni d’une seule interface réseau.

La machine raymonde.microlinux.lan est un serveur local fraîchement installé sous CentOS 7, avec mes modifications post-installation habituelles. NetworkManager n’est pas installé pour l’instant.

$ rpm -qa | grep -i networkmanager

Le répertoire /etc/sysconfig/network-scripts arbore deux fichiers de configuration ifcfg-<interface> correspondant à la boucle locale lo et à l’interface enp2s0. La configuration est celle générée par l’installateur.

$ cd /etc/sysconfig/network-scripts/
$ ls -l ifcfg-*
-rw-r--r--. 1 root root 312 Mar  3 08:40 ifcfg-enp2s0
-rw-r--r--. 1 root root 254 Mar 29  2019 ifcfg-lo
$ cat ifcfg-enp2s0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp2s0"
UUID="230cdf46-a0cc-4110-bf5b-512323b19fc0"
DEVICE="enp2s0"
ONBOOT="yes"

Pour commencer, j’installe NetworkManager.

$ sudo yum install NetworkManager

J’active et je lance le service correspondant.

$ sudo systemctl enable NetworkManager --now

Je tente une petite expérience et je me débarrasse de la configuration de ma carte réseau.

$ sudo rm /etc/sysconfig/network-scripts/ifcfg-enp2s0

Je redémarre le serveur.

$ sudo reboot

Au redémarrage, je constate que le serveur est toujours connecté au réseau local.

  • Dans la configuration par défaut, NetworkManager vérifie s’il est possible de recevoir les informations de configuration via un serveur DHCP local.
  • NetworkManager fonctionne uniquement lorsque l’application est en mesure de contrôler les interfaces réseau. Sur les systèmes CentOS et Red Hat, cela signifie concrètement que les fichiers ifcfg-<interface> ne doivent pas contenir la directive NM_CONTROLLED=no. La valeur par défaut de cette option est yes, ce qui signifie que tant qu’elle est absente, tout va bien.

Sur un serveur sans interface graphique, je dispose de deux options pour contrôler la configuration de NetworkManager.

  • l’outil en ligne de commande nmcli
  • l’interface graphique en mode texte NetworkManager TUI (Text User Interface) invoquée par la commande nmtui

Dans le cas de figure présent, l’outil graphique – basé sur la bibliothèque ncurses – constitue la solution la plus confortable.

$ sudo yum install NetworkManager-tui

Une fois qu’il est installé, il suffit de le lancer avec les droits qui vont bien.

$ sudo nmtui

Dans la première fenêtre, je sélectionne l’option Edit a connection. Notez que rien ne vous empêche d’utiliser NetworkManager TUI en français. Sur mes serveurs, je préfère utiliser l’anglais.

NetworkManager TUI

Je ne dispose que d’une seule carte réseau sur cette machine.

NetworkManager TUI

Voilà comment se présente la fenêtre de configuration par défaut de mon interface.

NetworkManager TUI

  1. Je remplace Profile Name par un nom parlant, par exemple LAN.
  2. Rien à signaler dans le champ ETHERNET.
  3. Dans le champ IPv4 CONFIGURATION, je passe de Automatic à Manual et je clique sur Show.
  4. Je fournis l’adresse IP de la machine en notation CIDR (192.168.2.4/24) dans le champ Addresses.
  5. L’adresse IP de la passerelle doit figurer dans le champ Gateway.
  6. Je ne touche pas aux champs DNS servers et search domains.
  7. Dans le champ IPv6 CONFIGURATION, je passe de Automatic à Ignore, vu que je n’utilise pas l’IPv6 sur cette machine.
  8. Je confirme par OK.

NetworkManager TUI

De retour dans la vue d’ensemble, je choisis Back. L’ergonomie de l’interface prête à confusion ici.

NetworkManager TUI

La connexion est configurée, il ne me reste qu’à l’activer.

NetworkManager TUI

La présence d’un petit astérisque * devant le nom de la connexion indique qu’elle est active.

NetworkManager TUI

À présent, je peux quitter NetworkManager TUI.

NetworkManager TUI

Cette configuration a été inscrite dans un nouveau fichier /etc/sysconfig/network-scripts/ifcfg-LAN.

$ cat /etc/sysconfig/network-scripts/ifcfg-LAN
HWADDR=00:1D:09:15:4A:D8
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.2.4
PREFIX=24
GATEWAY=192.168.2.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=LAN
UUID=92a96f0b-d5d8-3230-8ee9-92edc1bd453f
ONBOOT=yes
AUTOCONNECT_PRIORITY=-999

Je n’ai pas renseigné mon serveur DNS local ou mon domaine de recherche dans la configuration de ma carte. Il vaut mieux utiliser le fichier /etc/resolv.conf pour ces indications.

# /etc/resolv.conf
search microlinux.lan
nameserver 192.168.2.1

InfoLa logique de cette approche nous apparaîtra plus clairement lorsque nous aurons à configurer un routeur muni de plusieurs interfaces réseau.

 

Pour être bien sûr que c’est ma configuration statique qui est prise en compte, je débranche le câble réseau du switch et je redémarre le serveur. Un petit état des lieux (ip addr) montre que tout se passe comme prévu.

Après cette première prise en main, notre prochain article traitera de la configuration de NetworkManager sur un routeur.


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.