NetworkManager: Difference between revisions
Prabuanand (talk | contribs) (updated settings based on gentoo wiki) |
Prabuanand (talk | contribs) (edited and moved the note location about not running networkmanager and wpa_supplicant services) |
||
Line 35: | Line 35: | ||
== Wireless networks == | == Wireless networks == | ||
Install {{Pkg|networkmanager-wifi}} package if you want NetworkManager to connect and manage wifi:{{Cmd|# apk add {{Pkg|networkmanager-wifi}}}} | [[NetworkManager]] supports both wireless daemons i.e [[#iwd_backend|iwd]] and [[#wpa_supplicant_backend|wpa_supplicant]]. Using both daemons simulatenously leads to conflicts. First Install the {{Pkg|networkmanager-wifi}} package if you want NetworkManager to connect and manage wifi:{{Cmd|# apk add {{Pkg|networkmanager-wifi}}}} | ||
=== wpa_supplicant backend === | === wpa_supplicant backend === | ||
{{Main|Wi-Fi}} | {{Main|Wi-Fi}} | ||
[[Wi-Fi#wpa supplicant|wpa supplicant]] is the default in Alpine Linux | [[Wi-Fi#wpa supplicant|wpa supplicant]] is the default wifi daemon in Alpine Linux. Open {{path|/etc/NetworkManager/NetworkManager.conf}} in a text editor and change it to something like this: {{Cat|/etc/NetworkManager/NetworkManager.conf|<nowiki>[main] | ||
dhcp=internal | dhcp=internal | ||
plugins=ifupdown,keyfile | plugins=ifupdown,keyfile | ||
Line 56: | Line 50: | ||
wifi.backend=wpa_supplicant</nowiki>}} | wifi.backend=wpa_supplicant</nowiki>}} | ||
{{Note| | {{Note|Since {{ic|networkmanager}} is an alternate for {{ic|networking}} + {{ic|wpa_supplicant}} services, running them simulatenously might cause conflicts.}} | ||
Now you need to stop conflicting services: | Now you need to stop conflicting services: | ||
Line 64: | Line 58: | ||
Now restart NetworkManager:{{Cmd|# rc-service networkmanager restart}} | Now restart NetworkManager:{{Cmd|# rc-service networkmanager restart}} | ||
Now connect to a network using one of the interfaces configured. If that connects and stays connected with no issues | Now connect to a network using one of the interfaces configured. If that connects and stays connected with no issues add the <code>networkmanager</code> service and disable the <code>networking</code> and <code>wpa_supplicant</code> boot services: | ||
{{Cmd|# rc-update add networkmanager}} | {{Cmd|# rc-update add networkmanager}} | ||
{{Cmd|# rc-update del networking boot}} | {{Cmd|# rc-update del networking boot}} |
Revision as of 11:04, 28 March 2025
NetworkManager is the standard Linux network configuration tool suite.
Installation
Networkmanager needs to have udev to be setup properly. Otherwise your network devices can be listed as (strictly-)unmanaged. Setting up eudev on a desktop system is recommended in Alpine Linux. Without a fully functional device manager users will not be able to connect to input devices. The alpine-conf package provides setup-devd script to easily install and setup device managers.
Setup eudev.
# setup-devd udev
For more details and other options see eudev.
Install the basic network management daemon of NetworkManager suite:
# apk add networkmanager
To be able to use NetworkManager with your current user (i.e. not root), you need to add your user to the plugdev
group created by NetworkManager :
# adduser <YourUsername> plugdev
Some of the popular NetworkManager user interfaces or front ends available as sub-packages are:
- TUI: networkmanager-tui, a curses-based interface (run
nmtui
) - Command line: networkmanager-cli (run
nmcli
) - GUI: plasma-nm for Plasma integration and applet
- GUI: network-manager-applet for a GTK system tray applet
Networkmanager service
Ensure that network interfaces are configured and tested.
Start NetworkManager:
# rc-service networkmanager start
Set the service to autostart on boot:
# rc-update add networkmanager default
Wired networks
If wired networks do not appear or you get an error message like "Could not activate connection: Connection 'Ethernet connection 1' is not available on device eth0 because device is strictly unmanaged", add the following to /etc/NetworkManager/NetworkManager.conf:
Contents of /etc/NetworkManager/NetworkManager.conf
Wireless networks
NetworkManager supports both wireless daemons i.e iwd and wpa_supplicant. Using both daemons simulatenously leads to conflicts. First Install the networkmanager-wifi package if you want NetworkManager to connect and manage wifi:
# apk add networkmanager-wifi
wpa_supplicant backend
wpa supplicant is the default wifi daemon in Alpine Linux. Open /etc/NetworkManager/NetworkManager.conf in a text editor and change it to something like this:
Contents of /etc/NetworkManager/NetworkManager.conf
networkmanager
is an alternate for networking
+ wpa_supplicant
services, running them simulatenously might cause conflicts.Now you need to stop conflicting services:
# rc-service networking stop
# rc-service wpa_supplicant stop
Now restart NetworkManager:
# rc-service networkmanager restart
Now connect to a network using one of the interfaces configured. If that connects and stays connected with no issues add the networkmanager
service and disable the networking
and wpa_supplicant
boot services:
# rc-update add networkmanager
# rc-update del networking boot
# rc-update del wpa_supplicant boot
iwd backend
NetworkManager supports wireless networks with iwd as backend, however, consider existing issues before using it.
Using both wireless daemons i.e wpa_supplicant and iwd simultaneously lead to conflicts. Once iwd has been configured, ensure that wpa_supplicant and related services are stopped before continuing. Start the iwd service and restart NetworkManager:
# rc-service iwd start # rc-service networkmanager restart
To use iwd as backend edit NetworkManager's configuration because it still defaults to wpa_supplicant. Edit the file /etc/NetworkManager/NetworkManager.conf and ensure that [device]
section appears as follows:
Contents of /etc/NetworkManager/NetworkManager.conf
VPN support
NetworkManager has support for Wireguard and support for other VPN's are provided by plugins in the following subpackage:
- networkmanager-openvpn for OpenVPN
Plasma support


Troubleshooting
nm-applet not authorized to control networking
You can enable all users to edit connections without adding polkit.
First, make the conf.d
directory for networkmanager:
# mkdir -p /etc/NetworkManager/conf.d
Then, add following content to /etc/NetworkManager/conf.d/any-user.conf so that
Contents of /etc/NetworkManager/conf.d/any-user.conf
Finally, restart networkmanager:
# rc-service networkmanager restart
See also
- Networking - Main page
- wpa_supplicant - Default wifi daemon
- iwd - An alternate wifi daemon