NetworkManager https://networkmanager.dev/ Recent content on NetworkManager Hugo en-us Fri, 01 Aug 2025 08:00:00 +0000 NetworkManager for administrators https://networkmanager.dev/docs/admins/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/admins/ Information for administrators Resources for developers https://networkmanager.dev/docs/developers/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/developers/ D-Bus API NetworkManager provides a D-Bus interface on the system bus. You can use this interface to query network state and the details of network interfaces like current IP addresses or DHCP options, and to activate, deactivate, created, edit, and delete saved network connections. Check the D-Bus API reference: STABLE DEVEL libnm API libnm wraps the D-Bus API in easy-to-use GObjects and is often much simpler for glib-based applications to use. man pages https://networkmanager.dev/docs/man-pages/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/man-pages/ This page contains a collection of man pages for NetworkManager. For each page there are two links: stable is the version in the latest stable release of NetworkManager, while devel is the version from the latest development snapshot. Services NetworkManager (8) STABLE DEVEL NetworkManager.conf (5) STABLE DEVEL NetworkManager-dispatcher (8) STABLE DEVEL NetworkManager-wait-online.service (8) STABLE DEVEL Clients and Utilities nmcli (1) STABLE DEVEL nmcli-examples (5) STABLE DEVEL nmtui (1) STABLE DEVEL nm-online (1) STABLE DEVEL nm-cloud-setup (8) STABLE DEVEL nm-initrd-generator (8) STABLE DEVEL nm-openvswitch (7) STABLE DEVEL Settings Each connection profile contains multiple settings (connection, ipv4, ipv6, ethernet, etc. Video tutorials https://networkmanager.dev/docs/video/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/video/ WireGuard configuration VPN support https://networkmanager.dev/docs/vpn/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/vpn/ NetworkManager supports VPN connections for all popular VPN connections via plugins. A VPN plugin consists of the editor dialog and a D-Bus service that manages the actual VPN connection. VPN plugins maintained in GNOME This is a list of VPN plugins that are maintained as GNOME projects: NetworkManager-fortisslvpn (releases) Fortinet SSLVPN compatible NetworkManager-libreswan (releases) IPsec IKEv1 VPN, Cisco compatible NetworkManager-openconnect (releases) Cisco AnyConnect, Juniper NetworkManager-openvpn (releases) OpenVPN NetworkManager-pptp (releases) PPTP, Microsoft compatible NetworkManager-sstp SSTP compatible VPN plugin NetworkManager-vpnc (releases) IPsec VPN, Cisco compatible Natively Supported by NetworkManager WireGuard NetworkManager 1. RFKill https://networkmanager.dev/docs/rfkill/ Mon, 01 Jan 0001 00:00:00 +0000 https://networkmanager.dev/docs/rfkill/ The rfkill subsystem in Linux provides a mechanism to disable radio transmitters, as Wi-Fi, Bluetooth cards or WWAN modems installed in the system. From the kernel point of view, such devices typically have a associated rfkill device (also called killswitch) that is visible in the output of the rfkill utility. $ rfkill ID TYPE DEVICE SOFT HARD 0 bluetooth tpacpi_bluetooth_sw blocked unblocked 2 wlan phy0 blocked unblocked Each rfkill device has a type (bluetooth, wlan, wwan) and two flags to indicate whether the killswitch is hard-blocked (when radio transmission is blocked via a hardware switch) or soft-blocked (when radio is disabled but can be re-enabled in software). NetworkManager 1.54 https://networkmanager.dev/blog/networkmanager-1-54/ Fri, 01 Aug 2025 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-54/ After a little over 5 months and 245 commits since NetworkManager 1.52, the new release is ready: NetworkManager 1.54. Let’s take a look at the most interesting parts! Support for configuring IPv4 forwarding NetworkManager now supports configuring the per-device IPv4 forwarding sysctl variable net.ipv4.conf.<interface>.forwarding via the “ipv4.forwarding” connection property. The feature allows users to configure forwarding directly through NetworkManager, enabling targeted forwarding configurations for interfaces. Loopback configuration in nmtui It is now possible to configure the loopback interface via nmtui: NetworkManager 1.52 https://networkmanager.dev/blog/networkmanager-1-52/ Fri, 28 Feb 2025 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-52/ Almost 5 months and 308 commits after the release of NetworkManager 1.50, the new version NetworkManager 1.52 has been released. Let’s see what’s new in this new release. Autotools is no longer supported Autotools had been deprecated in favour of meson in NetworkManager 1.48. Now it has been removed entirely, so meson is the only supported build system to build the project. Support for IPVLAN devices IPVLAN devices are similar to MACVLAN and used in similar scenarios, Now they can be created and managed from NetworkManager directly. Protect your VPN from TunnelVision attacks https://networkmanager.dev/blog/protect-your-vpn-from-tunnelvision-attacks/ Wed, 29 Jan 2025 01:00:00 +0200 https://networkmanager.dev/blog/protect-your-vpn-from-tunnelvision-attacks/ TunnelVision is a vulnerability disclosed by the researchers Dani Cronce and Lizzie Moratti, cataloged as CVE-2024-3661. It affects VPN connections when a user connects to a potentially compromised network using DHCP, and it’s trivially exploitable by a malicious agent connected to the network. Although the research only mentions DHCP, the same can happen when using IPv6 SLAAC. Attacks of similar nature exist too, like TunnelCrack. How the attack works Most of the VPN clients are routing-based VPNs. NetworkManager 1.50 https://networkmanager.dev/blog/networkmanager-1-50/ Wed, 02 Oct 2024 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-50/ A bit more than 4 months and 227 commits since NetworkManager 1.48, a new release is ready: NetworkManager 1.50. Let’s take a look at the most interesting parts! Deprecate dhclient support The support for “dhclient” DHCP client has been deprecated, not built unless explicitely enabled and it will be fully removed in a future release. In NetworkManager 1.20, the internal DHCP client was set as the default and it is recommended to use it. Addressing hostname assignment in NetworkManager 1.40 https://networkmanager.dev/blog/addressing-hostname-assignment-in-networkmanager-1-40/ Tue, 16 Jul 2024 01:00:00 +0200 https://networkmanager.dev/blog/addressing-hostname-assignment-in-networkmanager-1-40/ In this article, I will explain how NetworkManager-1.40 handles hostname assignment. Introduction In networking, ensuring consistency and reliability across system updates is crucial. Recently, we at the Red Hat’s Network Management Team encountered an issue related to hostname assignment during a customer’s upgrade from version 1.18 to version 1.40 using Leapp. This caused the hostname to revert to localhost.localdomain and had an impact on the customer’s production environment. In this blog post, we’ll explore the root cause of this problem, its implications, and the solution we implemented to address it. Help NetworkManager project to triage issues https://networkmanager.dev/blog/help-with-issues-triage/ Thu, 20 Jun 2024 08:00:00 +0000 https://networkmanager.dev/blog/help-with-issues-triage/ Some small modifications has arrived to our workflow to triage issues. We have done this to encourage more people to get more involved in their resolution. Context Despite NetworkManager being a very important tool on a really important number of the Linux systems that are out there, all the development is done by a very small team of developers with very few community contributions. This causes us to rarely have enough time to dedicate to all the issues that are reported, so they are accumulating without nobody actually working on them. NetworkManager 1.48 https://networkmanager.dev/blog/networkmanager-1-48/ Fri, 31 May 2024 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-48/ A bit more than 3 months and 257 commits since NetworkManager 1.46, a new release is ready: NetworkManager 1.48. Let’s take a look at the most interesting parts! Deprecate building with autotools Building with autotools is now deprecated and will be completely removed in the next development cycle. We recommend using meson to build NetworkManager, for basic setup, see the CONTRIBUTING.md file. Deprecate mac-address-blacklist property NetworkManager is embracing conscious language, as part of this work, we have deprecated 802-11-wireless and 802-11-wired property mac-address-blacklist in favor of mac-address-denylist. NetworkManager 1.46 https://networkmanager.dev/blog/networkmanager-1-46/ Mon, 26 Feb 2024 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-46/ A little bit more than half a year and 481 commits since NetworkManager 1.44, a new release is ready: NetworkManager 1.46. Let’s take a look at the most interesting parts! Drop build with python2, python3 is now required Building with python2 is not possible anymore. In order to build NetworkManager, python3 is now a requirement. Considering python2 is EOL since January 1, 2020, we considered it was time to drop it aswell. NetworkManager 1.44 https://networkmanager.dev/blog/networkmanager-1-44/ Thu, 10 Aug 2023 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-44/ Half a year and 796 commits since NetworkManager 1.42, a new release is ready: NetworkManager 1.44. Let’s take a look at the most interesting parts! The ifcfg-rh plugin is deprecated The ifcfg-rh plugin is deprecated; it will only receive bugfixes and no new features. A warning is emitted to the log when a connection in ifcfg-rh format is found. In addition, to automatically migrate existing ifcfg-rh connections to the keyfile format, a new configuration option main. NetworkManager 1.42 https://networkmanager.dev/blog/networkmanager-1-42/ Fri, 10 Feb 2023 08:00:00 +0000 https://networkmanager.dev/blog/networkmanager-1-42/ Half a year and almost 800 commits since NetworkManager 1.40, a new release is ready: NetworkManager 1.42. Let’s take a look at the most interesting parts! IEEE 802.1X support in nmtui nmtui is a screen-oriented configuration tool for NetworkManager. While not nearly as powerful as nmcli, its command-line based equivalent, it certainly has its niche of users. In the new version, nmtui gained support for configuring IEEE 802.1X. IEEE 802.1X is an authentication method most commonly utilized by secure enterprise Wi-Fi networks. Set up NMCI on Fedora Linux VM https://networkmanager.dev/blog/set-up-nmci-on-fedora-linux/ Mon, 05 Dec 2022 00:00:00 +0100 https://networkmanager.dev/blog/set-up-nmci-on-fedora-linux/ In this article I will show you how to set up NetworkManager CI tests on Fedora Linux virtual machine. What is NMCI NMCI stands for NetworkManager countinuous integration. It is project on gitlab that provides tests for NetworkManager. The test are written in python behave enviroment. Every test is written in a way acceptance criteria would be written. You can find out more on the NMCI project gitlab page. Why VM? Using Python and NetworkManager to control the network [link] https://networkmanager.dev/blog/using-python-and-networkmanager-to-control-the-network/ Fri, 16 Sep 2022 01:00:00 +0200 https://networkmanager.dev/blog/using-python-and-networkmanager-to-control-the-network/ This article first introduces the API of NetworkManager and presents how to use it from a Python program. In the second part it shows some practical examples: how to connect to a wireless network or to add an IP address to an interface programmatically via NetworkManager. Read more on Fedora Magazine Notes on D-Bus https://networkmanager.dev/blog/notes-on-dbus/ Tue, 06 Sep 2022 01:00:00 +0200 https://networkmanager.dev/blog/notes-on-dbus/ A major aspect of NetworkManager is that it provides a D-Bus API for other applications. When programming such client applications it is therefore helpful to understand D-Bus. It took me a long time of try and error to get an understanding of how D-Bus works. I hope to share some of the things I learned and give my perspective about D-Bus. Useful links Much is already written. Some useful links here. NetworkManager 1.40 https://networkmanager.dev/blog/networkmanager-1-40/ Thu, 25 Aug 2022 15:00:00 +0200 https://networkmanager.dev/blog/networkmanager-1-40/ This is the announcement for the new 1.40.0 NetworkManager release. The tarball can be found on our download page page. This release comes a bit more than 3 months after 1.38.0 release and contains about 600 patches from 29 contributors. See the NEWS file for a list of noteworthy changes and some highlights below. nmcli Offline Commands nmcli now supports an --offline flag, which can process connection profiles in keyfile format without requiring the NetworkManager daemon. NetworkManager 1.38 https://networkmanager.dev/blog/networkmanager-1-38/ Fri, 13 May 2022 11:29:07 +0200 https://networkmanager.dev/blog/networkmanager-1-38/ A new release of NetworkManager, everybody’s favorite Linux network management service, has been released and is available for download from our download page. It’s also likely to be included in your favorite Linux distribution soon. If you’re a sort of person that’s curious enough to read about a new release of a networking management daemon then read on. This article points out some of the most interesting changes in the release and it has been written just for you (and some others). From ifcfg to keyfiles [link] https://networkmanager.dev/blog/from-ifcfg-to-keyfiles/ Fri, 29 Apr 2022 01:00:00 +0200 https://networkmanager.dev/blog/from-ifcfg-to-keyfiles/ One of the changes in Fedora Linux 36 is that new installations will no longer support the ifcfg files to configure networking. What are those and what replaces them? Read more on Fedora Magazine NetworkManager 1.36 https://networkmanager.dev/blog/networkmanager-1-36/ Thu, 24 Feb 2022 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-36/ This is the announcement of major release NetworkManager 1.36.0 on 24th February 2022. It comes six weeks after the previous major release. See what is new. Rework IP Configuration The way NetworkManager handles IP configuration internally was heavily reworked. The goal was more maintainable and extendable code (see here). This was a huge rework, but the goal is that it has little visible impact to the user. In the best case, everything still works the same – or better. NetworkManager 1.34 https://networkmanager.dev/blog/networkmanager-1-34/ Thu, 13 Jan 2022 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-34/ Please welcome 1.34.0, the new major release of NetworkManager. Here are some of the changes that it brings. More privilege separation The new release introduces a new service named nm-priv-helper. At the moment its functionality is very limited, but the idea is that NetworkManager will perform every operation that requires elevated privileges by asking the new service via D-Bus. The goal is to drop more capabilities from the NetworkManager service. NetworkManager 1.32 https://networkmanager.dev/blog/networkmanager-1-32/ Wed, 16 Jun 2021 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-32/ Four months after 1.30 release, please welcome 1.32.0, the new major release of NetworkManager. Here are some of the changes that it brings. Firewall Mode and nftables When activating a “shared” profile, NetworkManager will enable NAT for IPv4. Until now, it could only call iptables to configure masquerading. With this new version, it can also configure nftables for the same purpose. The firewall backend can be configured via the new [main]. NetworkManager 1.30 https://networkmanager.dev/blog/networkmanager-1-30/ Thu, 18 Feb 2021 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-30/ Two months and a half after the previous release, NetworkManager 1.30 has seen the light today. The development cycle was shorter compared to past releases and therefore the list of new features is not as exciting as usual. There is however interesting stuff worth mentioning. Create your veth interfaces with NM A virtual Ethernet (veth) is a special kind of network interface supported by the Linux kernel. It is virtual because it doesn’t represent a hardware device. Initscripts’ ifcfg-rh Format in NetworkManager and its Future [link] https://networkmanager.dev/blog/initscripts-ifcfg-rh-format-in-networkmanager-and-its-future/ Tue, 02 Feb 2021 12:00:00 +0100 https://networkmanager.dev/blog/initscripts-ifcfg-rh-format-in-networkmanager-and-its-future/ Let’s take a look at the history and future of the ifcfg-rh format. Read more on Thomas Haller’s Blog. How to set up your NetworkManager environment [link] https://networkmanager.dev/blog/set-up-your-networkmanager-dev-environment/ Tue, 19 Jan 2021 12:00:00 +0100 https://networkmanager.dev/blog/set-up-your-networkmanager-dev-environment/ Why should you contribute to NetworkManager? What do you need to know? Discover more on Fernando Mancera’s Blog. NetworkManager 1.28 [link] https://networkmanager.dev/blog/networkmanager-1-28/ Sun, 06 Dec 2020 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-28/ A new NetworkManager version 1.28.0 was released today, on 6th December 2020. Read more on Thomas Haller’s Blog. Looking forward to Linux network configuration in the initial ramdisk (initrd) [link] https://networkmanager.dev/blog/network-configuration-in-the-initrd/ Tue, 24 Nov 2020 12:00:00 +0100 https://networkmanager.dev/blog/network-configuration-in-the-initrd/ One of the tasks that the initrd might be responsible for is network configuration. This article explains the cases in which network configuration early in the boot process is necessary, how it’s implemented, and the improvements that Red Hat Enterprise Linux 8.3 brings. Read more on the Enable Sysadmin Blog. NetworkManager 1.26 [link] https://networkmanager.dev/blog/networkmanager-1-26/ Mon, 13 Jul 2020 12:00:00 +0100 https://networkmanager.dev/blog/networkmanager-1-26/ A new NetworkManager version 1.26.0 was released today. Read more on Thomas Haller’s Blog. Internet connection sharing with NetworkManager [link] https://networkmanager.dev/blog/internet-connection-sharing-networkmanager/ Wed, 17 Jun 2020 12:00:00 +0100 https://networkmanager.dev/blog/internet-connection-sharing-networkmanager/ NetworkManager is the network configuration daemon used on Fedora and many other distributions. It provides a consistent way to configure network interfaces and other network-related aspects on a Linux machine. Among many other features, it provides a Internet connection sharing functionality that can be very useful in different situations. Read more on the Fedora Magazine. Why NetworkManager? [link] https://networkmanager.dev/blog/why-networkmanager/ Fri, 10 Apr 2020 12:00:00 +0100 https://networkmanager.dev/blog/why-networkmanager/ What makes NetworkManager unique among network configuration projects? Read more on Thomas Haller’s Blog. Please welcome: NetworkManager 1.20 [link] https://networkmanager.dev/blog/please-welcome-networkmanager-1-20/ Tue, 06 Aug 2019 12:00:00 +0100 https://networkmanager.dev/blog/please-welcome-networkmanager-1-20/ Another three months have passed since NetworkManager’s 1.18, and 1.20 is now available. What follows is a quick overview of what’s new. Read more on Lubomir Rintel’s web log. Becoming friends with NetworkManager [link] https://networkmanager.dev/blog/becoming-friends-with-networkmanager/ Mon, 05 Aug 2019 12:00:00 +0100 https://networkmanager.dev/blog/becoming-friends-with-networkmanager/ Do you disable NetworkManager, and wonder why your preferred Linux distro isn’t using the old IP tools as the default network configuration method? Do you think NetworkManager is “just for WiFi”? This blog post is for you. Leave behind prejudice and read more on the Enable Sysadmin Blog. WireGuard in NetworkManager [link] https://networkmanager.dev/blog/wireguard-in-networkmanager/ Fri, 15 Mar 2019 12:00:00 +0100 https://networkmanager.dev/blog/wireguard-in-networkmanager/ NetworkManager 1.16 got native support for WireGuard VPN tunnels. WireGuard is a novel VPN tunnel protocol and implementation that spawned a lot of interest. Read more on Thomas Haller’s Blog. MAC Address Spoofing in NetworkManager 1.4.0 [link] https://networkmanager.dev/blog/mac-address-spoofing-in-networkmanager-1-4-0/ Fri, 26 Aug 2016 12:00:00 +0100 https://networkmanager.dev/blog/mac-address-spoofing-in-networkmanager-1-4-0/ The new NetworkManager release 1.4.0 adds new features to change the current MAC address of your Ethernet or Wi-Fi card. This is also called MAC address “spoofing” or “cloning”. Read more on Thomas Haller’s Blog.