Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

NetworkManager

From Wikipedia, the free encyclopedia
Software
NetworkManager
NetworkManager is a system daemon, with various graphical front-ends available
Original authorRed Hat
Initial releaseNovember 19, 2004; 21 years ago (2004-11-19)
Stable release
1.54.3[1] Edit this on Wikidata / 12 December 2025; 2 months ago (12 December 2025)
Written inC withGObject
Operating systemLinux[2]
Type
LicenseGNU LGPL v2.1 or later, portionsGNU GPL v2 or later[3]
Websitenetworkmanager.dev
Repository

NetworkManager is adaemon that sits on top oflibudev and other Linux kernel interfaces (and a couple of other daemons) and provides a high-level interface for the configuration of the network interfaces.

Rationale

[edit]

NetworkManager is a software utility that aims to simplify the use ofcomputer networks onLinux distributions.[2]

How it works

[edit]
Linux kernel: network device drivers and network stack. Utility programs are not depicted, they communicate through the SCI with the different components of the kernel.

To connect computers with each other, variouscommunications protocols have been developed, e.g.IEEE 802.3 (Ethernet),IEEE 802.11 ("wireless"),IEEE 802.15.1 (Bluetooth),PPPoE,PPPoA, and many many more. Each participating computer must have the suitable hardware, e.g.network card orwireless network card and this hardware must be configured accordingly to be able to establish a connection.

In case of a monolithic kernel all the device drivers are part of it. The hardware is accessed (and also configured) through its device driver by the configuration utility to configure the hardware, and programs like theweb browser/SSH/NTP-client/etc. to send and receive network packets.

Configuration of network interfaces without NetworkManager

[edit]

On Linux and all Unix-like operating systems, the utilitiesifconfig and the newerip (from theiproute2-bundle) are used to configureIEEE 802.3 andIEEE 802.11 hardware. These utilities configure the kernel directly and the configuration is applied immediately. After boot-up, the user is required to configure them again.

To apply the same static configuration after each boot-up, the PID1-programs are used:System V init executesshell scripts and binary programs,systemd parses its own conf-files (and executes programs). The boot-up configuration for network interfaces is stored in/etc/network/interfaces for Debian Linux distributions and its derivatives orifcfg files in/etc/sysconfig/network-scripts/ forFedora and its derivatives, andDNS-servers in/etc/resolv.conf./etc/network/interfaces or/etc/sysconfig/network-scripts/ifcfg-* can define a static IP-address ordhclient to be used, and all kinds ofVPN can be configured here as well.

In case the configuration has to be changed,DHCP-protocol goes a long way to do so automatically, without the user even noticing.

Configuration of network interfaces with NetworkManager

[edit]
  • NetworkManager is accessible viaD-Bus.
  • Configuration is stored in/etc/NetworkManager/NetworkManager.conf

But as we've transitioned from physically large servers to more portable hosts that may be plugged and unplugged (or moved from WiFi hotspot to WiFi hotspot) at the user's discretion, dynamic configurations (i.e., not stored in a static configuration file but taken from outside the host, and potentially changing after boot) have become a more prevalent configuration.Bootp was an early protocol used for this, and to this day its descendantDHCP is still very common. Many Unix-like systems include a program calleddhclient to handle this dynamic configuration. Given a relatively static or simple dynamic configuration, static configuration modified bydhclient works well. However, as networks and their topologies get more complex, a central manager for all the network configuration information becomes more essential.[citation needed]

Software architecture

[edit]

NetworkManager has two components:

  1. the NetworkManagerdaemon, the actual software which manages connections and reports network changes
  2. thegraphical orcommand-line interface
Graphical front-ends and command line interfaces
[edit]
  • nm-applet 0.9.5 in Ubuntu 12.04's systray, showing all available APs.
    nm-applet 0.9.5 in Ubuntu 12.04's systray, showing all availableAPs.
  • Graphical front-end for GNOME Shell 3.10.
    Graphical front-end forGNOME Shell 3.10.
nm‑applet
nm‑applet is aGTK 3-based GUI for NetworkManager which runs in the system tray. The applet is maintained by the GNOME project, and can be used with any desktop environment which implements thefd.o System Tray Protocol[4] (this excludes theGNOME Shell, which has its own built-in implementation).
plasma‑nm
KDE Plasma 6 has its own applet for configuring connections through NetworkManager, plasma‑nm. The applet is not included in Plasma 6 by default.
nmcli
nmcli is NetworkManager's built-incommand-line interface added in 2010.[5] nmcli allows easy display of NetworkManager's current status, manage connections and devices, monitor connections.
nmtui
nmtui is the built-intext-based user interface for NetworkManager. It is basic when compared to nmcli, as it only allows users to add, edit, activate and deactivate connections; set the hostname of the system; and enable and disable radios.[6] It does not allow for the setup of wired connections,WPA-Enterprise, orVPNs; preconfigured connections can be used.[7]
cnetworkmanager
cnetworkmanager is aPython-based CLI for NetworkManager, written by Martin Vidner. The project's last commit was in August 2010; its final version (0.21.1) was released in August 2009.[8]

Mobile broadband support

[edit]

NetworkManager is used in conjunction with ModemManager[9] and Paul's PPP Package[10] forWWAN/mobile broadband support.

Antti Kaijanmäki announced the development of a mobile broadband configuration assistant for NetworkManager in April 2008;[11] the required changes were made to NetworkManager in 0.7.1.[12]

History

[edit]

Red Hat initiated the NetworkManager project in 2004 with the goal of enabling Linux users to deal more easily with modern networking needs, particularlywireless 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 prefersEthernet connections over “known” wireless networks, which are preferred over wireless networks withSSIDs to which the user has never connected. The user is prompted forWEP orWPA keys as needed.

The NetworkManager project was among the first major Linux desktop components to utilizeD-Bus andHAL extensively. Since June 2009, however, NetworkManager no longer depends on HAL, and since 0.9.10 (ca. 2014), neither does it require the D-Bus daemon to be running for root operation.[13]

See also

[edit]
  • Linux on the desktop – Overview of Linux' usesPages displaying short descriptions of redirect targets
  • BlueZ – System software implementing Bluetooth functionsPages displaying short descriptions of redirect targets
  • GNOME Keyring Manager – Linux password management softwarePages displaying short descriptions of redirect targets
  • usbserial – Unix software libraryPages displaying short descriptions of redirect targets
  • Wicd – network manager written inPython
  • wpa_supplicant – Open-source implementation of IEEE 802.11i
  • wvdial – Computer program for assisting modem connectionsPages displaying short descriptions of redirect targets
  • netifd – tiny daemon with the ability to listen on netlink events; does not requireD-Bus, does not depend onGLib, targets embedded devices
  • ConnMan – daemon for managing Internet connections within embedded devices

References

[edit]
  1. ^"NetworkManager 1.54.3". 12 December 2025. Retrieved16 December 2025.
  2. ^ab"README.md".freedesktop.org. 2025-03-25. Retrieved2025-07-04.
  3. ^"CONTRIBUTING.md · main · NetworkManager / NetworkManager · GitLab". 23 May 2024.
  4. ^"nm-applet(1)".GNOME GitLab. 2019-02-15. Retrieved2025-07-04.
  5. ^"Initial pieces of nmcli, gitweb". cgit.freedesktop.org. Retrieved2015-05-28.
  6. ^Parra, Javier Sánchez; Mancera, Fernando Fernández (2023-06-14)."tui: Enable/disable Wi-Fi and WWAN radios | NetworkManager commit b3b83234".freedesktop.org. Retrieved2025-07-04.
  7. ^"Red Hat Enterprise Linux 7 | Networking Guide | 3.2. Configuring IP Networking with nmtui".Red Hat Documentation.Archived from the original on 2025-04-22. Retrieved2025-07-04.
  8. ^Vidner, Martin (2010-08-20)."cnetworkmanager.git/summary".repo.or.cz.Archived from the original on 2022-08-31. Retrieved2025-07-04.
  9. ^"ModemManager".ModemManager.Archived from the original on 2025-06-28. Retrieved2025-07-04.
  10. ^"ppp".Samba. Retrieved2025-07-04.
  11. ^Kaijanmäki, Antti (2008-04-10)."ANNOUNCE: Mobile Broadband Configuration Assistant".GNOME Mail Services Archives. Retrieved2025-07-04.
  12. ^Williams, Dan (2009-06-22)."Mobile Broadband Assistant makes it Easy".Dan Williams' blog |GNOME Blogs.Archived from the original on 2025-06-17. Retrieved2025-07-04.
  13. ^"We'll Build A Dream House Of Net". Blogs.gnome.org. 20 June 2014. Retrieved2015-05-28.

External links

[edit]
Core
Applications
Extras
Development
Office
Graphics
Internet
Media
Games
Utilities
Components
User interface
GNOME 3
GNOME 2
GNOME Base
freedesktop.org
Community
People
Software
compilation
Applications
by KDE
Development
Education
Graphics
Internet
Multimedia
Office
System
Utilities
Discontinued
Platform
User interface
Current
Discontinued
Current
Discontinued
freedesktop.org
(shared)
Community
People
Retrieved from "https://en.wikipedia.org/w/index.php?title=NetworkManager&oldid=1331440168"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp