Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:reseau:network-manager [31/07/2018 14:58] Beta-Pictoris [Utilisation] |
doc:reseau:network-manager [25/08/2018 14:49] smolski [Installation] |
||
---|---|---|---|
Ligne 24: | Ligne 24: | ||
===== Conflits potentiels ===== | ===== Conflits potentiels ===== | ||
- | Network-Manager, tout comme ifupdown (fichier [[:doc:reseau:interfaces|interfaces]]) et wicd, s'occupe de gérer les connexions réseau. Il peut donc entrer en conflit avec ces autres outils. | + | Network-Manager, tout comme [[doc:systeme:ifup|ifupdown]], wicd et dhcpcd5, s'occupe de gérer les connexions réseau, il peut donc **entrer en conflit** avec ces outils s'ils sont présents ! |
==== Avec Wicd ==== | ==== Avec Wicd ==== | ||
- | La première règle est de ne pas utiliser wicd et Network-Manager en même temps. Pour le cas où il serait installé, nous vous proposons donc de faire : | + | |
- | <code root>apt-get remove wicd</code> | + | La première règle est de : |
+ | <note warning>ne pas utiliser wicd et Network-Manager en même temps.</note> | ||
+ | Pour le cas où wicd serait installé, nous vous proposons donc de [[doc:systeme:apt:apt#supprimer-un-paquet|le supprimer]] ainsi : | ||
+ | <code root>apt remove wicd</code> | ||
==== Avec resolvconf ==== | ==== Avec resolvconf ==== | ||
- | Je ne suis pas sûr du niveau d'incompatibilité entre ces deux là, mais resolvconf fixant les DNS et NM aussi, je préfère l'enlever. | + | |
- | <code root>apt-get remove resolvconf</code> | + | Je ne suis pas sûr du niveau d'incompatibilité entre ces deux là, mais [[doc:systeme:resolv.conf|resolvconf]] fixant les [[doc:reseau:dns|DNS]] et NM((Network-Manager)) aussi, je préfère l'enlever : |
+ | <code root>apt remove resolvconf</code> | ||
==== Avec ifupdown ==== | ==== Avec ifupdown ==== | ||
- | Network-Manager et ifupdown s'entendent très bien entre eux, à condition de ne pas tenter de configurer une même interface avec les deux outils en même temps. | ||
- | Par défaut, l'interface loopback (donnant l'adresse 127.0.0.1) est gérée par ifupdown, ce qui est très bien. | + | Network-Manager et ifupdown s'entendent très bien entre eux, à condition de ne pas tenter de configurer une même interface avec les deux outils en même temps ! |
- | Par défaut, Network-Manager s'occupe uniquement des interfaces qui ne sont pas mentionnées dans le fichier ''/etc/network/interfaces'', ce qui est très bien. | + | |
- | Ce comportement est réglé par le fichier ''/etc/NetworkManager/NetworkManager.conf''. Assurez-vous de bien avoir les lignes | + | Par défaut, l'interface loopback((donnant l'adresse 127.0.0.1)) est gérée par ifupdown, ce qui est très bien. \\ |
+ | Par défaut, Network-Manager s'occupe uniquement des **interfaces qui ne sont pas mentionnées** dans [[doc:reseau:interfaces|le fichier Interfaces]], ce qui est très bien. ^_^ | ||
+ | |||
+ | Ce comportement est réglé par le fichier ''/etc/NetworkManager/NetworkManager.conf'', consultez-le avec par exemple la commande [[doc:editeurs:less|less]] ainsi : | ||
+ | <code user>less /etc/NetworkManager/NetworkManager.conf</code> | ||
+ | Et assurez-vous bien d'y avoir ces lignes : | ||
<code ini>[ifupdown] | <code ini>[ifupdown] | ||
managed=false</code> | managed=false</code> | ||
+ | Sinon éditer le fichier [[doc:systeme:superutilisateur|en root]] pour les ajouter : | ||
+ | <code root>nano /etc/NetworkManager/NetworkManager.conf</code> | ||
- | Et de faire en sorte que le fichier interfaces ne s'occupe que de l'interface loopback. ''/etc/network/interfaces'' ne doit donc contenir que les lignes suivantes : | + | Faire en sorte que [[doc:reseau:interfaces|le fichier interfaces]] ne s'occupe que de l'interface loopback((interface locale seulement)). \\ |
+ | Pour cela, le fichier ''/etc/network/interfaces'' ne doit contenir que les lignes suivantes : | ||
<file bash /etc/network/interfaces># This file describes the network interfaces available on your system | <file bash /etc/network/interfaces># This file describes the network interfaces available on your system | ||
# and how to activate them. For more information, see interfaces(5). | # and how to activate them. For more information, see interfaces(5). | ||
Ligne 50: | Ligne 60: | ||
auto lo | auto lo | ||
iface lo inet loopback</file> | iface lo inet loopback</file> | ||
+ | Sinon, éditer ce fichier pour le modifier : | ||
+ | <code root>nano /etc/network/interfaces</code> | ||
===== Installation ===== | ===== Installation ===== | ||
Ligne 57: | Ligne 68: | ||
Premièrement, le serveur Network-Manager : | Premièrement, le serveur Network-Manager : | ||
- | <code root>apt-get update && apt-get install network-manager</code> | + | <code root>apt update && apt install network-manager</code> |
Et ensuite l'applet qui sera utilisé par l'utilisateur pour faire la configuration. | Et ensuite l'applet qui sera utilisé par l'utilisateur pour faire la configuration. | ||
- | === En ligne de commande === | ||
- | Rien, les utilitaires sont déjà présents dans le paquet ''network-manager''. | ||
- | === Sous KDE === | + | En ligne de commande, les utilitaires sont déjà présents dans le paquet ''network-manager''. ;-) |
- | <code root>apt-get install network-manager-kde</code> | + | |
+ | ==== Sous KDE ==== | ||
+ | |||
+ | <code root>apt install network-manager-kde</code> | ||
+ | |||
+ | ==== Sous Gnome et autres ==== | ||
- | === Sous Gnome et autres === | + | <code root>apt install network-manager-gnome</code> |
- | <code root>apt-get install network-manager-gnome</code> | + | |
- | ===== Utilisation ===== | + | ===== Graphique ===== |
==== Via l'applet GNOME ==== | ==== Via l'applet GNOME ==== | ||
Ligne 80: | Ligne 92: | ||
Ajoutez l'applet dans KDE | Ajoutez l'applet dans KDE | ||
- | + | ===== Ligne de commande ===== | |
- | ==== Via la ligne de commande ==== | + | |
Voir le man des commandes ''NetworkManager'', ''nm'', ''nmcli'', ''nm-online'' et ''nm-tool''. | Voir le man des commandes ''NetworkManager'', ''nm'', ''nmcli'', ''nm-online'' et ''nm-tool''. | ||
- | === L'interface commande 'nmcli' === | + | ==== nmcli ==== |
- | nmcli est une commande permettant de créer, modifier, supprimer, activer ou désactiver les interfaces réseaux. | + | L'interface nmcli((Network Manager Command Line Interface)) est une commande permettant de créer, modifier, supprimer, activer ou désactiver les interfaces réseaux. \\ |
+ | nmcli est très simple à utiliser grâce à [[:doc:programmation:bash:autocompletion|l'auto-complétion]]. | ||
- | nmcli est très simple à utiliser grâce à [[:doc:systeme:touch|l'auto-complétion]]. | + | === Aides === |
- | == Obtenir de l'aide == | + | == Aide générale == |
- | //Aide générale:// | ||
<code user>nmcli help</code> | <code user>nmcli help</code> | ||
<code>Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } | <code>Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } | ||
Ligne 118: | Ligne 129: | ||
</code> | </code> | ||
- | //Aide sur une sous-commande particulière (ici la sous-commande 'general') :// | + | == Aide sur une sous-commande == |
+ | |||
+ | Ici la sous-commande //general// | ||
<code user>nmcli general help</code> | <code user>nmcli general help</code> | ||
<code>Utilisation : nmcli general { COMMAND | help } | <code>Utilisation : nmcli general { COMMAND | help } | ||
Ligne 132: | Ligne 145: | ||
logging [level <log level>] [domains <log domains>]</code> | logging [level <log level>] [domains <log domains>]</code> | ||
- | == Afficher la liste et l'état des connexions réseaux == | + | === Connexions réseaux === |
- | //La commande 'nmcli' peut remplacer les commandes 'ip a' ou 'ifconfig':// | + | Afficher la liste et l'état des connexions réseaux. \\ |
+ | La commande 'nmcli' peut remplacer les commandes 'ip a' ou 'ifconfig': | ||
<code user>nmcli</code> | <code user>nmcli</code> | ||
<code>virbr1: connecté to virbr1 | <code>virbr1: connecté to virbr1 | ||
Ligne 159: | Ligne 173: | ||
interface: enp3s0</code> | interface: enp3s0</code> | ||
- | == Afficher la liste des profils existants == | + | == Profil == |
- | Dans Network Manager , toutes les interfaces réseaux (directive device) sont associées à un ou plusieurs profils (directive connection). | + | Dans Network Manager , toutes les interfaces réseaux (sous-commande 'device') sont associées à un ou plusieurs profils (sous-commande 'connection'). |
- | //Afficher la liste de tous les profils:// | + | Afficher la liste des profils existants : |
<code user>nmcli connection</code> | <code user>nmcli connection</code> | ||
<code>NOM UUID TYPE PÉRIPHÉRIQUE | <code>NOM UUID TYPE PÉRIPHÉRIQUE | ||
Ligne 169: | Ligne 183: | ||
virbr1 e8bcda63-957a-48df-87c6-ca943dc0c285 bridge virbr1 | virbr1 e8bcda63-957a-48df-87c6-ca943dc0c285 bridge virbr1 | ||
vnet0 201edef9-055d-4a3b-ad1e-9611626aee59 tun vnet0</code> | vnet0 201edef9-055d-4a3b-ad1e-9611626aee59 tun vnet0</code> | ||
+ | <note tip>Le nom du profil peut être différent du nom de l'interface réseau associée.</note> | ||
- | A noter, Le nom du profil peut être différent du nom de l'interface réseau associée. | + | Afficher la liste de tous les profils actifs : |
- | + | ||
- | //Afficher la liste de tous les profils actifs:// | + | |
<code user>nmcli connection show --active</code> | <code user>nmcli connection show --active</code> | ||
<code>NOM UUID TYPE PÉRIPHÉRIQUE | <code>NOM UUID TYPE PÉRIPHÉRIQUE | ||
Ligne 180: | Ligne 192: | ||
vnet0 201edef9-055d-4a3b-ad1e-9611626aee59 tun vnet0</code> | vnet0 201edef9-055d-4a3b-ad1e-9611626aee59 tun vnet0</code> | ||
- | //Obtenir les propriétés détaillées d'un profil particulier:// | + | Obtenir les propriétés détaillées d'un profil particulier : |
<code user>nmcli connection show enp3s0</code> | <code user>nmcli connection show enp3s0</code> | ||
<code>connection.id: enp3s0 | <code>connection.id: enp3s0 | ||
Ligne 276: | Ligne 288: | ||
</code> | </code> | ||
- | On peut appeler un profil par son nom ou son uuid. | + | On peut appeler un profil par son nom ou son 'uuid'. |
== Afficher la liste des interfaces réseaux existantes == | == Afficher la liste des interfaces réseaux existantes == | ||
Ligne 290: | Ligne 302: | ||
== Arrêter et redémarrer une interface réseau == | == Arrêter et redémarrer une interface réseau == | ||
- | //Arrêt d'une interface réseau:// | + | <note tip>On arrête l'interface, plutôt que son profil, car ce dernier peut démarrer, tout seul, en cas d'événement particulier</note> |
- | On arrête l'interface, plutôt que son profil, car ce dernier peut démarrer, tout seul, en cas d'événement particulier: | + | Arrêt d'une interface réseau : |
- | <code root>nmcli device disconnect enp3s0 | + | <code user>nmcli device disconnect enp3s0</code> |
- | </code> | + | |
- | //Lancement d'une interface réseau:// | + | == Lancement d'une interface réseau : == |
- | On relance plutôt le profil: | + | On relance plutôt le profil : |
- | <code root>nmcli connection up enp3s0</code> | + | <code user>nmcli connection up enp3s0</code> |
== Ajouter un nouveau profil == | == Ajouter un nouveau profil == | ||
- | //On veut, par exemple, créer un bridge nommé virbr1:// | + | //On veut, par exemple, créer un bridge nommé **virbr1**:// |
+ | <code user>nmcli connection add type bridge con-name virbr1 ifname virbr1</code> | ||
- | <code root>nmcli connection add type bridge con-name virbr1 ifname virbr1</code> | + | Dans cet exemple, la commande va créer un nouveau profil nommé **virbr1** (sous-commande //con-name//) associé à l'interface **virbr1** (sous-commande //ifname//). |
- | Dans cette exemple, la commande va créer un nouveau profil nommé virbr1 (directive con-name) associé à l'interface virbr1 (directive ifname). | + | <note important>Dans ce cas particulier, la commande va aussi créer une interface virtuelle, nommée **virbr1**, car elle n'existe pas physiquement.</note> |
- | <note important>Dans ce cas particulier, la commande va aussi créer une interface virtuelle, nommée virbr1, car elle n'existe pas physiquement.</note> | + | //On veut, ensuite, ajouter l'interface réseau enp3s0 à ce bridge// : |
+ | <code user>nmcli connection add type bridge-slave con-name enp3s0 ifname enp3s0 master virbr1</code> | ||
- | //On veut, ensuite, ajouter l'interface réseau enp3s0 à ce bridge:// | + | Avant d'ajouter une interface réseau à un bridge, il est conseillé d'arrêter cette interface. \\ |
- | <code root>nmcli connection add type bridge-slave con-name enp3s0 ifname enp3s0 master virbr1</code> | + | |
- | + | ||
- | Avant d'ajouter une interface réseau à un bridge, il est conseillé d'arrêter cette interface. | + | |
Sinon, l'interface peut se retrouver associée à plusieurs profils. | Sinon, l'interface peut se retrouver associée à plusieurs profils. | ||
== Modifier un profil == | == Modifier un profil == | ||
- | //On veut, par exemple, modifier le paramètre ipv4.addresses du profil virbr1:// | + | //On veut, par exemple, modifier le paramètre ipv4.addresses du profil **virbr1** :// |
- | <code root>nmcli connection modify virbr1 ipv4.addresses 192.168.3.254/24</code> | + | <code user>nmcli connection modify virbr1 ipv4.addresses 192.168.3.254/24</code> |
On redémarrera l'interface réseau pour que la modification soit prise en compte. | On redémarrera l'interface réseau pour que la modification soit prise en compte. | ||
Ligne 328: | Ligne 338: | ||
//On veut éditer le profil virbr1:// | //On veut éditer le profil virbr1:// | ||
- | <code root>nmcli connexion edit virbr1</code> | + | <code user>nmcli connexion edit virbr1</code> |
+ | |||
+ | A partir d'ici, on se retrouve dans l'interface commande de 'nmcli'. Le prompt 'nmcli>' doit être affiché. | ||
//Afficher les propriétes du profil:// | //Afficher les propriétes du profil:// | ||
+ | <code>nmcli> print</code> | ||
<code> | <code> | ||
=============================================================================== | =============================================================================== | ||
Ligne 411: | Ligne 424: | ||
//Obtenir une description de la propriété 'ipv4.method':// | //Obtenir une description de la propriété 'ipv4.method':// | ||
- | <code user>nmcli> describe ipv4.method</code> | + | <code>nmcli> describe ipv4.method</code> |
<code> | <code> | ||
Ligne 418: | Ligne 431: | ||
IP configuration method. NMSettingIP4Config and NMSettingIP6Config both support "auto", "manual", and "link-local". | IP configuration method. NMSettingIP4Config and NMSettingIP6Config both support "auto", "manual", and "link-local". | ||
See the subclass-specific documentation for other values. | See the subclass-specific documentation for other values. | ||
- | In general, for the "auto" method, properties such as "dns" and "routes" specify information | + | In general, for the "auto" method, properties such as "dns" and "routes" specify information that is added on to the information returned from automatic configuration. |
- | that is added on to the information returned from automatic configuration. | + | |
The "ignore-auto-routes" and "ignore-auto-dns" properties modify this behavior. | The "ignore-auto-routes" and "ignore-auto-dns" properties modify this behavior. | ||
For methods that imply no upstream network, such as "shared" or "link-local", these properties must be empty. | For methods that imply no upstream network, such as "shared" or "link-local", these properties must be empty. | ||
+ | For IPv4 method "shared", the IP subnet can be configured by adding one manual IPv4 address or otherwise 10.42.x.0/24 is chosen. | ||
</code> | </code> | ||
//Modifier la propriété 'ipv4.method':// | //Modifier la propriété 'ipv4.method':// | ||
- | <code>nmcli> set ipv4.method shared</code> | + | <code>nmcli> set ipv4.method auto</code> |
//Vérifier la cohérence des modifications effectuées précédemment:// | //Vérifier la cohérence des modifications effectuées précédemment:// |