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


NetworkManager

NetworkManager

Service de gestion réseaux

   Le service NetworkManager tente de simplifier et d'automatiser la configuration réseaux et les opérations réseaux. Les informations sur le réseau sont exportés via D-Bus.

   NetworkManager exécute les scripts dans /etc/NetworkManager/dispatcher.d ou ses sous-répertoire dans l'ordre alphabétique en réponse aux événements réseaux. Chaque script devrait être un fichier exécutable possédé par root. Ils ne doivent pas être en écriture par le groupe et les autres, ni suid.

   Chaque script reçoit 2 arguments, le premier est le nom de l'interface, et le second est l'action. Pour les actions de périphérique, l'interface est le nom de l'interface kernel utilisable pour la configuration IP. Donc c'est soit VPN_IP_IFACE, DEVICE_IP_IFACE, ou DEVICE_IFACE. Pour les action hostname et connectivity-change, c'est toujours none.

pre-up L'interface est connectée au réseau, mais pas encore activée. Les scripts agissant dans cet événement doivent être dans le sous-répertoire pre-up.d, et NetworkManager attend la fin de l'exécution du script avant d'indiquer aux applications que l'interface est pleinement activée
up L'interface est activée
pre-down L'interface n'est pas encore déconnecté du réseau. Les scripts agissant dans cet événement doivent être placés dans le sous-répertoire pre-down.d, et NetworkManager attend la fin de l'exécution du script avant de déconnecter l'interface. Noter que cet événement n'est pas émis pour les déconnections forcées
down L'interface a été désactivée
vpn-pre-up Le VPN est connecté au réseau mais n'est pas encore activé. Les scripts sont dans le sous-répertoire pre-up.d
vpn-up Une connection VPN a été activée
vpn-pre-down Le VPN n'est pas encore déconnecté du réseau. Les scripts agissant dans cet événement doivent être placés dans le sous-répertoire pre-down.d, et NetworkManager attend la fin de l'exécution du script avant de déconnecter l'interface. Noter que cet événement n'est pas émis pour les déconnections forcées
vpn-down La connection VPN a été désactivée
hostname Le nom d'hôte du système a été mis à jours. Le nom de l'interface est vide et aucune variable d'environnement n'est définie pour cette action.
dhcp4-change Le bail dhcpv4 a changé
dhcp6-change Le bail dhcpv6 a changé
connectivity-change L'état de connexion réseau a changé

Variables d'environnement

   L'environnement contient plus d'informations sur l'interface et la connexion. Les variables suivanetes sont disponible à utiliser dans les scripts

CONNECTION_UUID l'UUID du profile de connexion
CONNECTION_ID le nom du profile de connexion
CONNECTION_DBUS_PATH Le chemin D-Bus de NetworkManager de la connexion
CONNECTION_FILENAME Le fichier du profile de connexion
CONNECTION_EXTERNAL À 1, indique que la connexion décris une configuration réseau créé en-dehors de NetworkManager
DEVICE_IFACE Nom de l'interface du périphérique.
DEVICE_IP_IFACE Nom de l'interface IP du périphérique.
IP4_ADDRESS_N Adresse IPv4 sous la forme "adresse/préfixe passerelle", où N est un numéro de 0 à (adresses IPv4 -1). La passerelle est déprécié.
IP4_NUM_ADDRESSES Contient le nombre d'adresses IPv4 que le script peut attendre
IP4_GATEWAY Passerelle IPv4
IP4_ROUTE_N Route IPv4 au format "address/prefix next-hop metric", où N est un nombre de 0 à ‹route-1›
IP4_NAMESERVERS Liste séparé par un espace de serveurs DNS
IP4_DOMAINS Liste séparé par un espace de domaines de recherche
DHCP4_‹dhcp-option-name› Si la connection utilise DHCP, chaque option DHCP est définis dans une variable
IP6_‹name› Certaines variables IPv4 sont également disponible pour IPv6
DHCP6_‹name› Certaines variables IPv4 sont également disponible pour IPv6
CONNECTIVITY_STATE L'état de connexion réseau

   Dans le cas du VPN, VPN_IP_IFACE est définis, et les variables IP4_* et IP6_* avec le préfixe VPN sont exportés également, comme VPN_IP4_ADDRESS_0, VPN_IP4_NUM_ADDRESSES.

   Les scripts sont lancés un à la fois, mais de manière asynchrone depuis le processus principale NetworkManager, et sont tués s'ils sont trop long. Si un script doit prendre beaucoup de temps pour s'exécuter, il faut lancer un processus enfant pour que le parent puisse se terminer rapidement. Les scripts qui sont des liens symboliques pointant dans /etc/NetworkManager/dispatcher.d/no-wait.d/ sont lancés immédiatement, sans attendre la fin du script précédent.

OPTIONS

-N, --no-daemon Ne lance pas en tâche de fond
-d, --debug Mode debug
-p, --pid-file Spécifie l'emplacement du fichier pid
--state-file Spécifie un fichier pour stocker l'état de NetworkManager. Défaut: /var/lib/NetworkManager/NetworkManager.state
--config Spécifie le fichier de configuration. Défaut: /etc/NetworkManager/NetworkManager.conf
--plugins Liste les plugins utilisés pour gérer les paramètres de connexions système. (keyfile, ifcfg-rh, ifcfg-suse, ifupdown)
--log-level Définis le niveau de log
--log-domains Liste d'opérations loggés
--print-config Affiche la configuration de NetworkManager

Propriétés udev

   Le gestionnaire de périphérique udev est utilisé pour la découverte. Les propriétés suivantes influencent la manière dont NetworkManager gère les périphériques:

NM_UNMANAGED Aucune connexion par défaut n'est créé et ne tente pas d'activation automatique si cette propriété est à 1.

Signaux

SIGHUP Recharge la configuration de NetworkManager
SIGUSR1 Force à ré-écrire la configuration DNS, mais ne redémarre pas le plugin dns et n'interrompt pas la résolution de nom.