25.4. Utilisation de nmcli pour créer des profils de connexion de fichiers clés en mode déconnecté
Red Hat recommande d'utiliser les utilitaires NetworkManager, tels que nmcli
, le rôle de système RHEL network
ou l'API nmstate
pour gérer les connexions NetworkManager, afin de créer et de mettre à jour les fichiers de configuration. Cependant, vous pouvez également créer divers profils de connexion au format keyfile en mode hors ligne à l'aide de la commande nmcli --offline connection add
.
Le mode hors ligne permet à nmcli
de fonctionner sans le service NetworkManager
pour produire des profils de connexion de fichiers clés par le biais de la sortie standard. Cette fonction peut s'avérer utile dans les cas suivants
- Vous souhaitez créer vos profils de connexion qui doivent être pré-déployés quelque part. Par exemple dans une image de conteneur, ou en tant que paquetage RPM.
-
Vous souhaitez créer vos profils de connexion dans un environnement où le service
NetworkManager
n'est pas disponible. Par exemple, lorsque vous souhaitez utiliser l'utilitairechroot
. Ou encore, lorsque vous souhaitez créer ou modifier la configuration réseau du système RHEL à installer via le script Kickstart%post
.
Vous pouvez créer les types de profils de connexion suivants :
- connexion Ethernet statique
- connexion Ethernet dynamique
- lien de réseau
- pont de réseau
- VLAN ou tout autre type de connexion prise en charge
La création ou la mise à jour manuelle des fichiers de configuration peut entraîner une configuration inattendue ou non fonctionnelle du réseau.
Conditions préalables
-
Le service
NetworkManager
est arrêté.
Procédure
Créez un nouveau profil de connexion au format keyfile. Par exemple, pour un profil de connexion d'un périphérique Ethernet qui n'utilise pas le protocole DHCP, exécutez une commande similaire à l'adresse
nmcli
:# nmcli --offline connection add type ethernet con-name Example-Connection ipv4.addresses 192.0.2.1/24 ipv4.dns 192.0.2.200 ipv4.method manual > /etc/NetworkManager/system-connections/output.nmconnection
NoteLe nom de la connexion que vous avez spécifié avec la clé
con-name
est enregistré dans la variableid
du profil généré. Lorsque vous utiliserez ultérieurement la commandenmcli
pour gérer cette connexion, spécifiez-la comme suit :-
Lorsque la variable
id
n'est pas omise, utilisez le nom de la connexion, par exempleExample-Connection
. -
Lorsque la variable
id
est omise, utilisez le nom du fichier sans le suffixe.nmconnection
, par exempleoutput
.
-
Lorsque la variable
Définissez les autorisations pour le fichier de configuration afin que seul l'utilisateur
root
puisse le lire et le mettre à jour :# chmod 600 /etc/NetworkManager/system-connections/output.nmconnection # chown root:root /etc/NetworkManager/system-connections/output.nmconnection
Démarrez le service
NetworkManager
:# systemctl start NetworkManager.service
Facultatif : si vous définissez la variable
autoconnect
dans le profil surfalse
, activez la connexion :# nmcli connection up Example-Connection
Vérification
Vérifiez que le service
NetworkManager
est en cours d'exécution :# systemctl status NetworkManager.service ● NetworkManager.service - Network Manager Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-08-03 13:08:32 CEST; 1min 40s ago Docs: man:NetworkManager(8) Main PID: 7138 (NetworkManager) Tasks: 3 (limit: 22901) Memory: 4.4M CGroup: /system.slice/NetworkManager.service └─7138 /usr/sbin/NetworkManager --no-daemon Aug 03 13:08:33 example.com NetworkManager[7138]: <info> [1659524913.3600] device (vlan20): state change: secondaries -> activated (reason 'none', sys-iface-state: 'assume') Aug 03 13:08:33 example.com NetworkManager[7138]: <info> [1659524913.3607] device (vlan20): Activation: successful, device activated. ...
Vérifiez que NetworkManager peut lire le profil à partir du fichier de configuration :
# nmcli -f TYPE,FILENAME,NAME connection TYPE FILENAME NAME ethernet /etc/NetworkManager/system-connections/output.nmconnection Example-Connection ethernet /etc/sysconfig/network-scripts/ifcfg-enp1s0 enp1s0 ...
Si la sortie n'indique pas la connexion nouvellement créée, vérifiez que les autorisations du fichier clé et la syntaxe utilisée sont correctes.
Afficher le profil de connexion :
# nmcli connection show Example-Connection connection.id: Example-Connection connection.uuid: 232290ce-5225-422a-9228-cb83b22056b4 connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: -- connection.autoconnect: yes ...
Ressources supplémentaires
-
nmcli(1)
-
nm-settings-keyfile(5)
- Format du fichier clé des profils NetworkManager
- Configuration d'une connexion Ethernet avec une adresse IP statique à l'aide de nmcli
- Configuration d'une connexion Ethernet avec une adresse IP dynamique à l'aide de nmcli
- Configuration du marquage des VLAN à l'aide de nmcli
- Configuration d'un pont réseau à l'aide de nmcli
- Configuration d'une liaison réseau à l'aide de nmcli