Translation(s): EnglishFrançaisItalianoGermanPortuguês (Brasil)简体中文Русский

NetworkManager attempts to keep an active network connection available at all times.

The point of NetworkManager is to make networking configuration and setup as painless and automatic as possible. If using DHCP, NetworkManager is intended to replace default routes, obtain IP addresses from a DHCP server and change nameservers whenever it sees fit. In effect, the goal of NetworkManager is to make networking Just Work.

Whilst it was originally targeted at desktops, it has more recently been chosen as the default network management software for some non-Debian server-oriented Linux distributions. If you have special needs, the upstream's developers would like to hear about them, but understand that NetworkManager is not intended to serve the needs of all users.

If not using Network Manager:

NetworkManager is composed of two layers:

  1. A daemon running as root: network-manager.

  2. A front-end: nmcli and nmtui (enclosed in package network-manager), nm-tray, network-manager-gnome (nm-applet), plasma-nm.

Additionally, there are various plugins available that enable NetworkManager to handle other, special connections like different types of VPN connections.

NetworkManager will only handle interfaces not declared in /etc/network/interfaces (see README file).

NetworkManager keeps connection information on known individual networks in configuration files called profiles. Those are stored at /etc/NetworkManager/system-connections/. For options in these files refer to the manpage on nm-settings: man nm-settings or online. They can be edited (as root) using a text editor or the nm-connection-editor (enclosed in network-manager-gnome).

For changes in configuration to become effective, you may have to restart the NetworkManager daemon:

sudo service network-manager restart

Starting with Debian 11 (bullseye), use:

sudo service NetworkManager restart


The features of NetworkManager are described on its homepage.


Make sure you read the fine manual:

Wired Networks are Unmanaged

As of Debian 6.0 "Squeeze", NetworkManager does not manage any interface defined in /etc/network/interfaces by default.

Unmanaged devices means NetworkManager doesn't handle those network devices. This occurs when two conditions are met:

  1. The file /etc/network/interfaces contains anything about the interface, even:

allow-hotplug eth0
iface eth0 inet dhcp
  1. And /etc/NetworkManager/NetworkManager.conf contains:



Enabling Interface Management

If you want NetworkManager to handle interfaces that are enabled in /etc/network/interfaces:

sudo service network-manager restart

Starting with Debian 11 (bullseye), use:

sudo service NetworkManager restart

"Auto Ethernet" and "Auto eth0"


Q. How do I configure a static IP address (for a server, etc) ?

A) Use nm-connection-editor or configure /etc/network/interfaces as described in NetworkConfiguration.

Q. How can I configure DNS for NetworkManager?

A) The short answer is to use nm-connection-editor. For the long answer see the corresponding entry in NetworkConfiguration.

Q. Why can't I see NetworkManager with my new user account ?

A) Make sure human users are in the netdev group (see /usr/share/doc/network-manager-gnome/README.Debian).

Q. How to set up a connection sharing ("hotspot") for a wired interface ?

A) First make sure to install dnsmasq-base (but not dnsmasq unless you disable the system daemon in /etc/default/dnsmasq). Then use nm-connection-editor and setup a new profile using "shared to other computer" as the method for IPv4 (not possible from Gnome3's gnome-control-center). This hides all the complexity (dnsmasq, iptables, sysctl). Finally, use that profile for the network interface connected to the shared network. For Wi-Fi interfaces, a hotspot functionality is provided which uses the same functionality besides setting up an ad-hoc WiFi network.

Q. How can I set up OpenVPN using NetworkManager?

A) Using the network-manager-openvpn-gnome package, it is possible to configure all aspects of OpenVPN, including importing configs from the service provider and automatically starting for specific connections (via nm-connection-editor).

See Also

CategoryNetwork CategorySoftware