NetworkManager is a system daemon, various graphical front-ends are available
|Original author(s)||Red Hat|
|Initial release||November 19, 2004|
|Stable release||1.0.0 / December 19, 2014|
|Written in||C with GObject|
Red Hat initiated a NetworkManager project in 2004 with the goal of enabling Linux users to deal more easily with modern networking needs, particularly wireless networking. NetworkManager takes an opportunistic approach to network selection, attempting to use the best available connection as outages occur, or as the user roams between wireless networks. It prefers Ethernet connections over “known” wireless networks, which are preferred over wireless networks with SSIDs to which the user has never connected. The user is prompted for WEP or WPA keys as needed.
The NetworkManager project was among the first major Linux desktop components to utilize D-Bus and HAL extensively. Since June 2009, however, NetworkManager no longer depends on HAL. Since 0.9.10 (~2014), NetworkManager doesn't require the D-Bus daemon to be running for root operation.
NetworkManager has two components:
- the NetworkManager daemon, the actual software which manages connections and reports network changes
- several graphical front-ends for diverse surfaces, such as GNOME Shell, GNOME Panel, KDE Plasma Workspaces, Cinnamon, etc.
Both components are intended by the developers to be reasonably portable, and the applet is available to desktop environments which implement the Freedesktop.org System Tray Protocol, including GNOME, KDE Plasma Workspaces, Enlightenment (window manager) and Xfce. As the components communicate via D-Bus, applications can be written to be “link-aware”, or to replace the provided applet entirely. One example is KNetworkManager, a KDE frontend to NetworkManager developed by Novell for SUSE Linux.
Graphical front-ends and command line interfaces
- built-in text-based user interface; It is incomplete.
- command line interface for NetworkManager.
Mobile broadband configuration assistant
Antti Kaijanmäki announced the development of a mobile broadband configuration assistant for NetworkManager in April 2008 it became available in NetworkManager version 0.7.0. Together with the package mobile-broadband-provider-info the connection is easily configured.
- Linux on the desktop
- GNOME Keyring Manager
- UMTSMON 
- Wicd Network Manager written in Python
- wicked tool and library provides a new, experimental framework for network configuration, GPLv2, created 2010-09-13
- netifd a tiny daemon with the ability to listen on netlink events; does not require D-Bus, does not depend on GLib, targets embedded devices
- ConnMan - connection manager is a daemon for managing Internet connections within embedded devices
- Havoc Pennington <firstname.lastname@example.org>. "System Tray Protocol Specification". Standards.freedesktop.org. Retrieved 2012-02-04.
- "NetworkManagement GIT". Projects.kde.org. Retrieved 2012-02-04.
- KNetworkManager documentation[dead link]
- Initial pieces of nmcli, gitweb
- "cnetworkmanager - Command Line Interface for NetworkManager". Vidner.net. Retrieved 2012-02-04.
- "Announce on networkmanager-list". Mail.gnome.org. 2008-04-10. Retrieved 2012-02-04.
- "UMTSmon". Umtsmon.sourceforge.net. Retrieved 2012-02-04.
- NetworkManager Homepage
- NetworkManager's GNOME Live Page
- Service Provider Database
- NetworkManager in freedesktop.org
- NetworkManager status on the freebsd-gnome mailing list
- Original NetworkManager page at redhat.com via WaybackMachine
- Introducing NetworkManager
- Announcement of the first public release of NetworkManager
- How to use a WiFi interface with NetworkManager