Les configurations réseau sont stockées dans le fichier /etc/NetworkManager/system-connections/
, et toutes les modifications effectuées avec la commande nmcli
y sont ajoutées.
Modifier la configuration via le fichier de conf
Il est possible de directement modifier la configuration réseau directement dans les fichiers nommés /etc/NetworkManager/system-connections/<name>.nmconnection
, où name
est le nom du périphérique ou de la connexion.
NetworkManager utilise les répertoires suivants pour stocker les fichiers de configuration :
/etc/NetworkManager/system-connections/
- profils persistants créés ou modifiés par l’utilisateur
/run/NetworkManager/system-connections/
- profils temporaires et automatiquement supprimés lors d’un reboot
/usr/lib/NetworkManager/system-connections/
- profils immuables prédéfinis, si modifés avec NetworkManager, seront copiés dans les profils persistants ou temporaires
Exemple de contenu de fichier de configuration pour la configuration IPv4 statique :
[connection] |
Comparaison syntaxe fichier/commande
Comparaison des paramètres NetworkManager et des fichiers dans /etc/NetworkManager/system-connections/
:
Options de nmcli con mod |
Fichier *.nmconnection |
But |
---|---|---|
ipv4.addresses 192.0.2.1/24 |
[ipv4] address1=192.0.2.1/24 |
Définir une @IPv4 statique |
ipv4.gateway 192.0.2.254 |
[ipv4] gateway=192.0.2.254 |
Définir passerelle par defaut |
ipv4.dns 8.8.8.8 |
[ipv4] dns=8.8.8.8 |
Modifie resolv.conf pour les DNS |
ipv4.dns-search example.com |
[ipv4] dns-search=example.com |
Modifie resolv.conf pour search |
ipv4.ignore-auto-dns true |
[ipv4] ignore-auto-dns=true |
Ignore les infos DNS du DHCP |
ipv6.method manual |
[ipv6] method=manual |
Définir une @IPv6 statique |
ipv6.method auto |
[ipv6] method=auto |
Configuration de leréseau avec SLAAC |
ipv6.method dhcp |
[ipv6] method=dhcp |
Configuration de leréseau avec DHCPv6 |
ipv6.addresses 2001:db8::a/64 |
[ipv6] address1=2001:db8::a/64 |
Définir une @IPv6 statique |
ipv6.gateway 2001:db8::1 |
[ipv6] gateway=2001:db8::1 |
Définir passerelle par defaut |
ipv6.dns fde2:6494:1e09:2::d |
[ipv6] dns=fde2:6494:1e09:2::d |
Modifie resolv.conf pour les DNS |
ipv6.dns-search example.com |
[ipv6] dns-search=example.com |
Modifie resolv.conf pour search |
ipv6.ignore-auto-dns true |
[ipv6] ignore-auto-dns=true |
Ignore les infos DNS du DHCP |
connection.autoconnect yes |
[connection] autoconnect=true |
Activation auto de la co au démar. |
connection.id ens3 |
[connection] id=Main eth0 |
Nom de le connexion |
connection.interfacename ens3 |
[connection] interface-name=ens3 |
Connexion de inter. réseau au nom |
802-3-ethernet.macaddress 32: |
[802-3-ethernet] mac-address=32:.. |
Liaison interface à une @MAC |
/!\ Résumé des commandes
Commandes :
# nmcli con mod ipv4.addresses 192.0.2.1/24 // Définir une @IPv4 statique |
Fichiers :
/etc/NetworkManager/system-connections/ // profils persistants créés ou modifiés par l’utilisateur |
Cas pratiques
Modification des fichiers de configuration réseau
La connexion active est appelée WiredCon1
et sa configuration se trouve dans /etc/NetworkManager/systemconnections/WiredCon1.nmconnection
.
[aline@SERVER01~]$ ip link |
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 |
[aline@SERVER01~]$ nmcli con show --active |
NAME UUID TYPE DEVICE |
[aline@SERVER01~]$ ls /etc/NetworkManager/system-connections/ |
WiredCon1.nmconnection |
Modification du fichier /etc/NetworkManager/system-connections/WiredCon1.nmconnection
pour ajouter l’adresse 192.168.121/24
[root@SERVER01 ~]# vim /etc/NetworkManager/system-connections/WiredCon1.nmconnection |
1.nmconnection" |
Activation de la nouvelle adresse réseau avec la commande nmcli
:
[root@SERVER01 ~]# nmcli con reload |
Activation de la connexion avec les modifications :
[root@SERVER01 ~]# nmcli con up "WiredCon1" |
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2) |
Vérification que la nouvelle adresse IP soit correctement attribuée :
[root@SERVER01 ~]# ip -br addr show eth0 |
eth0: UP 192.168.1.110/24 192.168.121/24 fe80::6fed:5a11:4ad4:1bcf/64 |
Modification du fichier de configuration sur SERVER02 en ajoutant l’adresse 192.168.122/24
comme 2eme adresse sous la première adresse dans le fichier :
[root@SERVER02 ~]# vim /etc/NetworkManager/system-connections/WiredCon1.nmconnection |
WiredCon1.nmconnection" |
Reload des modifications :
[root@SERVER02 ~]# nmcli con reload |
Activation de la connexion avec les modifications :
[root@SERVER02 ~]# nmcli con up "WiredCon1" |
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2) |
Vérification que la nouvelle adresse IP soit correctement attribuée :
[root@SERVER02 ~]# ip -br addr show eth0 |
eth0 UP 192.168.1.11/ip 192.168.122/24 fe80::6be8:6651:4280:892c/64 |
Test de connectivité entre les machines SERVER01 et SERVER02 avec les nouvelles adresses réseau :
[root@SERVER02 ~]# ping -c3 192.168.121 |
PING 192.168.121 (192.168.121) 56(84) bytes of data. |
Accès à la machine SERVER01 en tant qu’utilisateur aline pour effectuer un test ping sur la nouvelle adresse de la machine SERVER02 :
[root@SERVER01 ~]# ping -c3 192.168.122 |
PING 192.168.122 (192.168.122) 56(84) bytes of data. |
Gestion de la mise en réseau
Configuration de 2 adresses IPv4 statiques pour l’interface réseau principale.
Création d’une connexion avec une configuration de réseau statique à l’aide des paramètres suivant :
Paramètre | Paramètre |
---|---|
Nom de la connexion | labo_Connexion |
Interface name | enX (peut varier) |
adresse IP | 192.168.1.11/24 |
Adresse de la passerelle | 192.168.1.254 |
Adresse DNS | 192.168.1.254 |
Trouver le nom de l’interface de la connexion active actuelle :
[root@SERVER02 ~]# ip link |
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULTgroup default qlen 1000 |
Trouver le nom de la connexion active actuelle :
[root@SERVER02 ~]# nmcli con show --active |
NAME UUID TYPE DEVICE |
Création du profil de connexion labo_Connexion en fonction des informations du tableau et association du profil à l’interface réseau indiquée dans la sortie de la commande ip link
précédente :
[root@SERVER02 ~]# nmcli con add con-name labo_Connexion ifname eth0 type ethernet ipv4.method manual ipv4.dns 192.168.1.254 ipv4.addresses 192.168.1.11/24 ipv4.gateway 192.168.1.254 |
Connection 'labo_Connexion' (b35aa560-2b5a-4898-87ee-1279845bf3ad) successfully added. |
Configuration de la nouvelle connexion pour qu’elle démarre automatiquement. Les autres connexions ne doivent pas démarrer automatiquement :
[root@SERVER02 ~]# nmcli con mod "labo_Connexion" connection.autoconnect yes |
[root@SERVER02 ~]# nmcli con mod "System eth0" connection.autoconnect no |
Modification de la nouvelle connexion afin qu’elle utilise également l’adresse IP 10.0.1.1/24
:
[root@SERVER02 ~]# nmcli con mod "labo_Connexion" +ipv4.addresses 10.0.1.1/24 |
Modification du fichier de configuration pour ajouter l’adresse 10.0.1.1/24
comme deuxième adresse :
[root@SERVER02 ~]# vim /etc/NetworkManager/system-connections/labo_Connexion.nmconnection |
address2=10.0.1.1/24 |
Configuration du fichier hosts
de sorte pour faire référence à l’adresse IP 10.0.1.1
avec le nom private :
[root@SERVER02 ~]# echo "10.0.1.1 private" >> /etc/hosts |
Après un rédemarrage, vérification que la machine SERVER02 est initialisée :
[student@workstation ~]$ ping -c3 SERVER02 |
PING SERVER02.labo_Connexion.example.com (192.168.1.11) 56(84) bytes of data. |
Documentation
MAN nmcli(1)
MAN nm-settings(5)
MAN nm-settings-keyfile(5)