Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
05 mai 2017

réseaux Linux NetworkManager           Configuration réseaux


nmcli

nmcli

Outil d'administration de NetworkManager

   Cet outil contrôle NetworkManager et affiche le status réseaux.

OPTIONS

-t, --terse Affichage adapté aux traitement dans les scripts
-p, --pretty Affiche plus compréhensible
-m, --mode { tabular | multiline } Affichage tabulaire ou multiligne. Défaut: multiline
-c, --colors {yes | no | auto} Contrôle si la sortie utilise les couleurs. Défaut: auto
-f, --fields { field1,field2...|all|common } Contrôle les champs affiché sur la sortie. Défaut: common
-e, --escape {yes|no} Indisque si les caractères : et \ sont échappés en mode terse. Défaut: yes
-a,--ask nmcli stop et demande des arguments. Utile pour demander un mot de passe
-s, --show-secrets Affiche les mots de passe et secrets qui peuvent être présent dans la sortie.
-w, --wait seconds Délai d'attente d'une opération NetworkManager. Utile pour les commande qui prennent du temps comme l'activation de connection. 0 signifie pas d'attente
--complete-args Affiche la liste des arguments possible pour le dernier argument.

Commande general

status Affiche le status général de NetworkManager
hostname [hostname] Affiche ou définis le nom d'hôte.
permissions Affiche les permissions qu'un appelant a pour diverses opérations authentifiées
logging [level level][domains domains...] Affiche ou change le niveau de log de NetworkManager et les domaines.

Commande networking

on, off Active ou désactive le contrôle du réseaux par NetworkManager.
connectivity [check] Affiche l'état de la connectivité réseaux. L'état indiques:

        none L'hôte n'est pas connecté à un réseau
        portal L'hôte est derrière un portail captif et ne peut pas accéder à Internet
        limited L'hôte est connecté à un réseau, mais n'a pas accès à internet
        full L'hôte est connecté à un réseau et a pleinement accès à internet
        unknown Le status de connectivité ne peut être trouvé

Commande radio

wifi [on|off] Affiche ou définis le status du WiFi dans NetworkManager.
wwan [on|off] Affiche ou définis le status de WWAN dans NetworkManager
al [on|off] Affiche ou dfinis le status du wifi et WWAN dans NetworkManager

Commande monitor

   Observe l'activité NetworkManager. Regarde les changements d'état de connectivité, périphérique ou profiles de connexion.

Commande connection

show [--active][--order[+-]category:...] Liste les profiles de connection sur disque et en mémoire. --order permet d'afficher dans un ordre particulier (active, name, type, path). sans préfix ou avec +, trie dans l'ordre ascendant.
show [--active][id|uuid|path|apath] ID... Affiche des détails pour les connections spécifiées. --active affiche seulement les profiles actifs. Les mots clés sont utilisé si l'ID est ambigus:

        id L'ID dénote le nom d'une connexion
        uuid L'ID dénote un UUID de connexion
        path l'ID dénote un chemin de connexion D-Bus
        apath L'ID dénote un chemin de connexion actif D-Bus

up [id|uuid|path] ID [ifname ifname] [ap BSSID] [passwd-file file] Active une connexion. La connexion est identifiée par son nom, UUID ou chemin D-Bus. Si l'ID est ambigus le mot clé id, uuid ou path peut être utilisé. si requis, ifname sélectionne un périphérique particulier. ap spcécifie un BSSID de l'AP à utiliser dans le cas de connexions Wi-Fi. --wait spécifie le timeout (defaut: 90s). passwd-file spécifie les accréditifs pour l'activation. peut être sous la forme:

        setting_name.property_name:the password Spécifie le mot de passe explicitement
        802-11-wireless-security.psk:secret12345 Pour WPA PSK
        802-1x.password:my 1X password mot de passe 802.1x

down [ id | uuid | path | apath ] ID... Désactive une connexion
modify [--temporary] [ id | uuid | path ] ID { option value | [+|-]setting.property value } ... Ajoute, modify ou supprime des propriétés dans le profile de connexion. une valeur "" supprime la valeur.
add [save { yes | no }] { option value | [+|-]setting.property value } ... Créé une nouvelle connexion en utilisant les propriétés spécifiées.. Pour construire une connexion significative il faut nécessairement la propriété connection.type (ethernet, wifi, wimax, pppoe, gsm, cdma, infiniband, bluetooth, vlan, bond, bond-slave, team, team-slave, bridge, bridge-slave, vpn, olpc-mesh, adsl, tun, ip-tunnel, macvlan, vxlan). save contrôle si la connexion doit être persistante
edit { [ id | uuid | path ] ID | [type type] [con-name name] } Édite une connexion existante, ou en ajouter une, en utilisant un éditeur interactif. type spécifie le type de connexion, et con-name spécifie le nom pour la connexion.
clone [--temporary] [ id | uuid | path ] ID new_name Clone une connexion. La connexion clonée est identifiée par son nom, UUID, ou chemin D-Bus. --temporary ne conserve pas le nouveau profile au redémarrage
delete [ id | uuid | path ] ID... Supprime une connexion configurée
monitor [ id | uuid | path ] ID... supervise l'activité du profile de connexion. Affiche une ligne si la connexion spécifiée change
reload Recharge tous les fichiers de connexion depuis le disque
load filename Charge/recharge un ou plusieurs fichiers de connexion.
import [--temporary] type type file file Importe une configuration externe comme profile NetworkManager. Le type de fichier d'entrée est spécifiée par type
export [id|uuid|path] ID [file] Exporte une connexion. Seul les connexions VPN sont supportés pour le moment.

Commande device

status Affiche le status du périphérique. C'est l'action par défaut
show [ifname] Affiche des informations détaillées sur les périphériques. Sans argument, examine tous les périphériques.
set [ifname] ifname [ autoconnect { yes | no } ] [ managed { yes | no } ] Définis les propriétés du périphérique
connect ifname Connecte le périphérique. NetworkManager tente de trouver une connexion convenable à activer. Il considère également les connexions non-autoconnect
reapply ifname Tente de mettre à jours de le périphérique
modify ifname { option value | [+|-]setting.property value }... Modifie le paramètre courant du périphérique. Cette commande permet d'effectuer des changements temporaires de la configuration active.
disconnect ifname Déconnecte un périphérique et empêche de périphérique d'activer d'autres connections sans intervention manuelle.
delete ifname Supprime un périphérique. Supprime l'interaface du système. Ne fonctionne que pour les périphériques logiciels
monitor [ifname...] Supervise l'activité du périphérique. Affiche une ligne indiquant le changement d'état de l'interface
wifi [list [ifname ifname][bssid BSSID]] Liste les points d'accès wifi.
wifi connect (B)SSID [password password] [ wep-key-type { key | phrase } ] [ifname ifname] [bssid BSSID] [name name] [ private { yes | no } ] [ hidden { yes | no } ] Connecte un réseaux Wi-Fi spécifié par son SSID ou BSSID. La commande créé une nouvelle connexion et l'active sur un périphérique.

        password Mot de passe WEP ou WPA
        wep-key-type Type de secret WEP, (key ou phrase)
        ifname Interface à utiliser pour l'activation
        bssid La connexion créée est restreinte pour le BSSID
        name Nom de la connexion
        private à yes, la connexion n'est visible que de l'utilisateur qui l'a créé.
        hidden à yes, pour les points d'accès qui ne broadcast pas le SSID

wifi hotspot [ifname ifname] [con-name name] [ssid SSID] [ band { a | bg } ] [channel channel] [password password] Créé un hotspot Wi-Fi. La commande créé un profile de connection hotspot en accord avec les capacités du périphérique Wi-Fi, et l'active. Le hotspot est sécurisé avec WPA si le périphérique/pilote le supporte, WEP sinon. Utiliser connection down ou device disconnect pour stopper le hotspot. Les paramètres sont:

        ifname Périphérique à utiliser
        con-name Nom du profile à créer
        ssid SSID du hotspot
        band bande Wi-Fi à utiliser
        channel Canal Wi-Fi à utiliser
        password Mode de passe à utiliser. Non fournis, nmcli en génère un. Noter que --show-secrets peut être utilisé pour afficher le mot de passe.
        wifi rescan [ifname ifname][ssid SSID...] Rescan immédiatement les points d'accès disponibles. en spécifiant le SSID, il est possible de rechercher ce SSID spécifique.
        lldp [ list [ ifname ifname ]] Affiche des informations sur les périphériques voisins appris via le protocole lldp.

Commande agent

secret Enregistre nmcli comme agent secret NetworkManager et écoute les demandes de secrets. Ce n'est généralement pas nécessaire parce que nmcli peut gérer les secrets à la connection aux réseaux.
polkit Enregistre nmcli comme agent polkit pour la session utilisateur.
all Lance nmcli comme secret NetworkManager et agent polkit

Variables d'environnement

LC_ALL Langage à utiliser pour déterminer le jeu de caractères
LC_MESSAGES Utilisé pour rechercher les locales
LANG Langage à utiliser pour déterminer le jeu de caractères

Codes de sortie

0 succès
1 Erreur non-spécifiée ou inconnue
2 entrée utilisateur invalide
3 Timeout expiré (--wait)
4 Activation de connexion échouée
5 Désactivation de connexion échouée
6 Déconnexion de périphérique échouée
7 Suppression de connexion échouée
8 NetworkManager n'est pas en cours de fonctionnement
10 La connection, périphérique ou point d'accès n'existe pas
65 avec --complete-args, un nom de fichier est attendu.

Exemples

Voir si NetworkManager est en cours de fonctionnement
nmcli -t -f RUNNING general
Affiche le status de NetworkManager
nmcli -t -f STATE general
Désactiver le wifi
nmcli radio wifi off
Lister les connexions que possède NetworkManager
nmcli connection show
Afficher toutes les connexions configurées en mode multiligne
nmcli -p -m multiline -f all con show
Lister toutes les connexions actives
nmcli connection show --active
Afficher tous les noms de profile de connexion et leur propriété auto-connect
nmcli -f name,autoconnect c s
afficher des détails pour le profile de connexion "My default em1"
nmcli -p connection show "My default em1"
AFficher des détails pour "My Home Wifi" avec tous les mots de passe:
nmcli --show-secrets connection show "My Home WiFi"
Affiche des détails pour la connexion active "My default em1":
nmcli -f active connection show "My default em1"
afficher les détails de configuration statique du profile de connexion
nmcli -f profile con s "My wired connection"
Activer un profile de connexion sur eth0
nmcli -p con up "My wired connection" ifname eth0
Connecter le Wi-Fi avec l'uuid spécifié au point d'accès donné
nmcli con up 6b028a27-6dc9-4411-9886-e9ad1dd43761 ap 00:3A:98:7C:42:D3
Aficher le status de tous les périphériques
nmcli device status
Déconnecter une connection de l'interface em2 et marquer le périphérique comme indisponibble pour l'auto-connexion.
nmcli dev disconnect em2
Afficher des détails pour wlan0, en limitant aux sections GENERAL et WIFI-PROPERTIES
nmcli -f GENERAL,WIFI-PROPERTIES dev show wlan0
Afficher tous les profiles de connection disponibles pour l'interface Wi-Fi wlp3s0
nmcli -f CONNECTIONS device show wlp3s0
Lister tous les points d'accès disponibles connus
nmcli dev wifi
Créer une nouvelle connexion nommée "My cafe" et le connecter au SSID "Cafe Hotspot 1" avec le mot de passe caffeine.
nmcli dev wifi con "Cafe Hotspot 1" password caffeine name "My cafe"
Créer un profile hotspot et se connecter. Affiche le mot de passe
nmcli -s dev wifi hotspot con-name QuickHotspot
Lance un partage de connexion IPv4
Démmare un partage de connexion IPv4 en utilisant le périphérique em1. Le partage est activé jusqu'à ce que le périphérique soit déconnecté
nmcli dev modify em1 ipv4.method shared
Ajoute temporairement une adresse IP au périphérique
nmcli dev modify em1 ipv6.address 2001:db8::a:bad:c0de
Ajoute non-interactivement une connexion Ethernel à eth0 avec DHCP, puis désactive le flag autoconnect
nmcli connection add type ethernet autoconnect no ifname eth0
Ajoute un VLAM avec l'id 55, sur eth0 et nommé Maxipes-fik
nmcli c a ifname Maxipes-fik type vlan dev eth0 id 55
Ajoute une connexion qui utiliser eth0 et a seulement une IPv6 lien-local
nmcli c a ifname eth0 type ethernet ipv4.method disabled ipv6.method link-local
Édite une connexion existante dans un éditeur interactif
nmcli connection edit ethernet-em1-2
Ajoute une nouvelle connexion Ethernet dans l'éditeur interactif
nmcli connection edit type ethernet con-name "yet another Ethernet connection"
Modifie la propriété autoconnect
nmcli con mod ethernet-2 connection.autoconnect no
Modifie le propriété mtu dans les paramètre wi-fi d'une connexion
nmcli con mod "Home Wi-Fi" wifi.mtu 1350
Définis l'adressage manuellement et les adresse dans le profile em1-1
nmcli con mod em1-1 ipv4.method manual ipv4.addr "192.168.1.23/24 192.168.1.1, 10.10.1.5/8, 10.0.0.11"
Ajoute un serveur DNS public google aux serveurs DNS dans le profile ABC
nmcli con modify ABC +ipv4.dns 8.8.8.8
Supprime l'adresse IP spécifiée du profile ABC
nmcli con modify ABC -ipv4.addresses "192.168.100.25/24 192.168.1.1"
Importe une configuration OpenVPN
nmcli con import type openvpn file ~/Downloads/frootvpn.ovpn
Export le profile VPM
nmcli con export corp-vpnc /home/joe/corpvpn.conf