Differences between revisions 10 and 12 (spanning 2 versions)
Revision 10 as of 2019-12-19 10:18:10
Size: 2425
Editor: ?cipher
Comment:
Revision 12 as of 2021-10-02 11:20:07
Size: 2452
Comment: use semantic newlines, for simpler email-reported diffs and to ease editing on smaller screens
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
DebianPkg:iwd is a new component aiming to potentially replace DebianPkg:wpasupplicant in the future. It is currently available in what should be considered a 'tech preview' state since debian Buster / 10. Both ConnMan and NetworkManager has support for using iwd as a backend. Further information below will focus on using NetworkManager with iwd. (Please note that iwd heavily relies on linux features which means you need a recent kernel version.) DebianPkg:iwd is a new component aiming to potentially replace DebianPkg:wpasupplicant in the future.
It is currently available in what should be considered a 'tech preview' state since debian Buster / 10.
Both ConnMan and NetworkManager has support for using iwd as a backend.
Further information below will focus on using NetworkManager with iwd.
(Please note that iwd heavily relies on linux features which means you need a recent kernel version.)
Line 7: Line 11:
Line 9: Line 14:
The iwd backend is available in upstream NetworkManager since 0.11.x but disabled by default, both at build-time and run-time. The DebianPkg:network-manager package has enabled the iwd backend at build-time since 0.11.4 (available since Buster/10.0). This means you can easily test using iwd backend just by enabling it at runtime yourself. The iwd backend is available in upstream NetworkManager since 0.11.x but disabled by default, both at build-time and run-time.
The DebianPkg:network-manager package has enabled the iwd backend at build-time since 0.11.4 (available since Buster/10.0).
This means you can easily test using iwd backend just by enabling it at runtime yourself.
Line 24: Line 32:
Please also refer to the [[https://iwd.wiki.kernel.org/networkmanager|upstream iwd information page on NetworkManager]].
Line 25: Line 34:
Please also refer to the [[https://iwd.wiki.kernel.org/networkmanager|upstream iwd information page on NetworkManager]].
Line 29: Line 37:
As of right now the only known issue with iwd is the [[https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/285|inability to connect to hidden SSIDs]] using NetworkManager. Feedback about your success or failure with iwd is warmly welcome! Please file a bug report. As of right now the only known issue with iwd is
the [[https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/285|inability to connect to hidden SSIDs]] using NetworkManager.
Feedback about your success or failure with iwd is warmly welcome! Please file a bug report.
Line 31: Line 41:
Note: Enterprise networks might not work when using official Debian kernel as it used to lack the required config options enabled. This has been fixed since linux 5.3.9-1 (see #924705) and should be available since Bullseye. Buster users are adviced to compile their own kernel if they have the need to connect to enterprise networks (or use wpa_supplicant until upgrading to Bullseye). Note: Enterprise networks might not work when using official Debian kernel
as it used to lack the required config options enabled.
This has been fixed since linux 5.3.9-1 (see DebianBug:924705) and should be available since Bullseye.
Buster users are advised to compile their own kernel
if they have the need to connect to enterprise networks
(or use wpa_supplicant until upgrading to Bullseye).
Line 36: Line 51:
If you're having problems getting wifi working in NetworkManager with the iwd backend enabled, please make sure the iwd service is running. See '''systemctl status iwd''' If you're having problems getting wifi working in NetworkManager with the iwd backend enabled,
please make sure the iwd service is running.
See '''systemctl status iwd'''

Intro

iwd is a new component aiming to potentially replace wpasupplicant in the future. It is currently available in what should be considered a 'tech preview' state since debian Buster / 10. Both ConnMan and NetworkManager has support for using iwd as a backend. Further information below will focus on using NetworkManager with iwd. (Please note that iwd heavily relies on linux features which means you need a recent kernel version.)

Please consider reading the Upstream Wiki for more in-depth and up to date information.

Prerequisites

The iwd backend is available in upstream NetworkManager since 0.11.x but disabled by default, both at build-time and run-time. The network-manager package has enabled the iwd backend at build-time since 0.11.4 (available since Buster/10.0). This means you can easily test using iwd backend just by enabling it at runtime yourself.

Enabling iwd backend

To enable the iwd backend you need to:

  • Install iwd: apt install iwd
  • configure NetworkManager to enable/use the iwd backend (instead of the wpasupplicant backend), see code snippet below.

  • Stop NetworkManager.service and wpa_supplicant.service, then restart NetworkManager.service

Append the following snippet in /etc/NetworkManager/NetworkManager.conf

[device]
wifi.backend=iwd

Please also refer to the upstream iwd information page on NetworkManager.

Known issues

As of right now the only known issue with iwd is the inability to connect to hidden SSIDs using NetworkManager. Feedback about your success or failure with iwd is warmly welcome! Please file a bug report.

Note: Enterprise networks might not work when using official Debian kernel as it used to lack the required config options enabled. This has been fixed since linux 5.3.9-1 (see 924705) and should be available since Bullseye. Buster users are advised to compile their own kernel if they have the need to connect to enterprise networks (or use wpa_supplicant until upgrading to Bullseye).

Troubleshooting

If you're having problems getting wifi working in NetworkManager with the iwd backend enabled, please make sure the iwd service is running. See systemctl status iwd