ANN: NetworkManager 1.0.0 released!


I'm very happy to announce that after more than 10 years of development
and 10 years of making the world a better place, NetworkManager 1.0 has
been released!

This release brings a more modern GObject-based client library, many bug
fixes and updated translations, more flexible routing, hugely improved
nmcli with password support, improved nmtui, a light-weight internal
DHCP client, "configure and quit" mode, Bluetooth DUN support with
Bluez5, VPN connection persistence, improved cooperation with external
tools, expanded manpages and documentation, WWAN IPv6 support, and much
much more.  Full release notes are below...

A huge thanks to everyone who contributed to this release (and there are
many of you!), and to everyone who's been a part of the NetworkManager
project over the past 10 years.  Let's make the next 10 even better!

Grab NetworkManager, the applet/editor, and the VPN plugins here:



This is a new stable release of NetworkManager.  Notable changes include
the following features and fixes.

* New client library: libnm

    A new GObject-based client library, "libnm", has been written,
merging the existing libnm-util and libnm-glib and simplifying the API
while using modern GLib APIs (such as using GDBus rather than dbus-glib,
and providing "gio-style" asynchronous operations). IP addresses,
routes, hardware addresses, and other properties are now represented as
strings rather than binary types, allowing much simplified code for most
languages including C, Python, and Javascript.  For more information see

    libnm-util and libnm-glib are still available for backward
compatibility, and the D-Bus interface remains fully compatible with

* New internal DHCP client

    A faster, lighter-weight internal DHCP client based on code from
systemd-networkd has been added, and may be selected with the
"dhcp=internal" option in NetworkManager.conf or in a configuration
snippet.  (Note that it does not yet support as many DHCP options as
dhclient, and does not support DHCPv6.)

* "Configure interfaces and then quit" mode

    A  new 'configure-and-quit=yes' option has been added for
environments with less dynamic network configuration.  With this option
set in NetworkManager.conf, available interfaces will be configured and
NetworkManager will quit, spawning small "nm-iface-helper" processes for
each interface that uses DHCP and/or IPv6, to preserve DHCP leases and
IPv6 address lifetimes.  No helper will be spawned for purely static IP

* Improved cooperation with non-NetworkManager network configuration

    NetworkManager now does a better job of not interfering with devices
which it did not create itself. (In particular, it no longer sets IFF_UP
on externally-created devices.)

* Improvements to nmcli

    nmcli now supports password requests and PolicyKit authorizations,
allowing fully command-line based activation of connections that require
passwords.  (Note that activation of VPNs is not yet supported, because
of the additional complexity of VPN password properties.)

    'nmcli dev connect <interface>' will now automatically create a
connection if none exists.  This command is now a more useful shortcut
to activate a network interface by device name.

    'nmcli dev delete <interface>' lets you delete unused software
devices (bridge, bond, team, etc).

* IPv6 configuration improvements

    IPv6 router advertisement MTUs are now respected

    WWAN connections now support IPv6 if the modem and provider support

    When running on 3.17 and later kernels, NetworkManager will handle
IPv6 link-local address assignment to ensure that IPv6 connectivity is
not enabled on interfaces that are "up" but not active.  This means that
until an IPv6-enabled connection is started, the interface will have no
IPv6 link-local address. (If external tools add IPv6 addresses to the
interface, NetworkManager will immediately create the IPv6 link-local
address to ensure compliance with RFCs.  IPv6 interface configuration
that exists before NetworkManager starts is left unchanged.)

    Manually-configured static IPv6 configuration is kept even if
automatic configuration fails.  Previously, a connection configured for
automatic IPv6 addressing (SLAAC) with additional static IPv6 addresses
would fail if SLAAC  failed, and the additional static IP addresses
would be removed.

* VPN connection persistence

    VPN connections can now persist across link changes and
suspend/resume if their VPN plugin is updated to support this feature.
(As of 1.0.0 none have been.) When links change or suspend/resume events
occur, NetworkManager waits for the VPN plugin to re-establish
connectivity, and only if the VPN plugin cannot do so is the VPN
connection torn down.

    During the time that the VPN is reconnecting, NetworkManager will
advertise a limited connectivity state rather than indicating full
network connectivity.

* iBFT/iSCSI support for all distros

    A new 'ibft' settings plugin has been added to support
firmware-based iBFT/iSCSI configurations.  (This functionality existed
only for ifcfg-rh-based distributions in 0.9.10).  To enable this
plugin, it must be added to NetworkManager.conf or enabled with a
configuration snippet.

* Bluetooth DUN support

    Bluetooth DUN support now works again with Bluez 5.x, although the
GNOME GUI utilities that normally configure DUN are still only supported
with Bluez 4.x due to gnome-bluetooth limitations.

* Improved handling of routes

    Devices  and VPN connections now have individual default routes
instead of one global default route through the highest priority device.

    You can adjust the priority of the default routes, and thus the
default device, through the new "ipv4.route-metric" and
"ipv6.route-metric" connection properties.

* Documentation improvements

    The configuration syntax of the keyfile and ifcfg-rh plugins is now
documented in the "nm-settings-keyfile" and "nm-settings-ifcfg-rh" man

    The manpages, documentation, and GObject introspection bindings
annotations have received many cleanups and enhancements.

    Automatically created connections are now deleted when their device
goes away, preventing a build-up of stale software or default-DHCP

* NetworkManager no longer causes the nl80211 kernel module to be loaded
on systems with no Wi-Fi devices and 3.17 and later kernels

* NetworkManager now talks to the "polkit" daemon directly via D-Bus and
no longer links to polkit libraries, reducing disk footprint.  Polkit
support is used for fine-grained permission control and can also be
disabled at build time.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]