NetworkManager tente de maintenir une connexion réseau active disponible à tout moment. Le but de NetworkManager est de rendre la configuration et l'installation du réseau aussi simple et automatique que possible. NetworkManager est destiné à remplacer la route par défaut, à remplacer d'autres routes, à définir des adresses IP et, en général, à configurer la mise en réseau comme NM l'entend (avec la possibilité d'une dérogation manuelle si nécessaire). En effet, l'objectif de NetworkManager est de rendre la mise en réseau qui fonctionne avec un minimum de tracas pour l'utilisateur, tout en permettant la personnalisation et un niveau élevé de contrôle manuel du réseau. Si vous avez des besoins particuliers, nous aimerions en entendre parler, mais comprenez que NetworkManager n'est pas destiné à tous les cas d'utilisation.
NetworkManager tente de maintenir actif chaque périphérique réseau du système, tant que le périphérique est disponible (câble branché, coupe-circuit non activé, etc.). Les connexions réseau peuvent être définies sur autoconnexion, ce qui signifie que NetworkManager rendra cette connexion active chaque fois que le matériel est disponible.
Les services paramètrés stockent des listes de connexions définies par l'utilisateur ou l'administrateur, qui contiennent tous les paramètres requis pour se connecter à un réseau spécifique. NetworkManager n'activera jamais une connexion qui ne figure pas dans cette liste, ou à laquelle l'utilisateur n'a pas demandé à NetworkManager de se connecter.
Le démon NetworkManager s'exécute en tant que service privilégié (puisqu'il doit accéder au matériel et le contrôler), mais fournit une interface D-Bus sur le bus système pour permettre un contrôle précis de la mise en réseau. NetworkManager ne stocke pas les connexions ou les paramètres, c'est uniquement le mécanisme par lequel ces connexions sont sélectionnées et activées.
Pour stocker des connexions réseau prédéfinies, deux services distincts, le “service des paramètres système” et le “service des paramètres utilisateur” stockent les informations de connexion et les fournissent à NetworkManager, également via D-Bus. Chaque service de paramètres peut déterminer comment et où il stocke de manière persistante les informations de connexion ; par exemple, l'applet GNOME stocke sa configuration dans GConf, et le service des paramètres système stocke sa configuration dans des formats spécifiques à la distribution, ou dans un format indépendant de la distribution, selon les préférences de l'utilisateur/administrateur.
Une variété d'autres services système sont utilisés par NetworkManager pour fournir des fonctionnalités réseau : wpa_supplicant pour les connexions sans fil et les connexions filaires 802.1x, pppd pour les connexions PPP et haut débit mobile, clients DHCP pour l'adressage IP dynamique, dnsmasq pour le serveur de noms proxy et la fonctionnalité de serveur DHCP pour Internet partage de connexion et avahi-autoipd pour les adresses de liaison IPv4 locales. La plupart des communications avec ces démons se font, encore une fois, via D-Bus.
Les problèmes de pilotes sont la cause n°1 pour laquelle NetworkManager ne parvient parfois pas à se connecter aux réseaux sans fil. Souvent, le pilotes ne se comporte pas de manière cohérente ou est bogué. NetworkManager ne prend en charge que les pilotes fournis avec le noyau Linux en amont, car seuls ces pilotes peuvent être facilement corrigés et débogués. ndiswrapper, les pilotes binaires du fournisseur ou d'autres pilotes hors de l'arborescence peuvent ou non fonctionner correctement avec NetworkManager, précisément parce qu'ils n'ont pas été vérifiés et améliorés par la communauté open source, et parce que les problèmes de ces pilotes ne peuvent généralement pas être résolus.
Parfois, des outils de ligne de commande comme 'iwconfig' fonctionneront, mais NetworkManager échouera. C'est encore souvent dû à des pilotes bogués, car ces pilotes n'attendent pas les requêtes dynamiques que font NetworkManager et wpa_supplicant. Les bogues de pilotes doivent être classés dans le gestionnaire de bogues de la distribution en cours d'exécution, car les distributions personnalisent souvent leur noyau et leurs pilotes.
Attacher les journaux de débogage de NetworkManager à partir du journal (ou partout où votre distribution dirige la sortie de la fonction 'daemon' de syslog, comme /var/log/messages ou /var/log/daemon.log) est souvent très utile, et (si vous pouvez obtenir) un le fichier de configuration wpa_supplicant de travail aide énormément. Consultez la section de journalisation du fichier contrib/fedora/rpm/NetworkManager.conf pour savoir comment activer la journalisation de débogage dans NetworkManager.