You are not logged in.
Hello, I have a simple config with systemd-networkd & wpa_supplicant based config to manage a wireless interface, ie connect & authenticate to wireless network at boot.
I have noticed however that `/lib/systemd/systemd-networkd-wait-online --any` fails. If I supply the interface manually like `/lib/systemd/systemd-networkd-wait-online --interface=wlp0s20u4`, the process terminates. Why would this be? Help for `--any` states that it will "Wait until at least one of the interfaces is online". I'd rather not enable any systemd-networkd-wait-online@ services and just allow any available interface to satisfy an "online" check.
I also noticed that the interface (wlp0s20u4) is reported as "unmanaged" by networkctl, is this expected?
> networkctl list
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 eno1 ether no-carrier unmanaged
3 wlp3s0 wlan no-carrier unmanaged
4 wlp0s20u4 wlan routable unmanaged
5 wg0 wireguard routable unmanaged
6 tun0 none routable unmanaged
7 br-e494102d60e0 bridge routable unmanaged
8 docker0 bridge no-carrier unmanaged
10 veth7454682 ether enslaved unmanaged
12 veth92ebb7e ether enslaved unmanaged
14 veth5e1646d ether enslaved unmanaged
11 links listed.
Finally, I enabled dhcpcd@wlp0s20u4 because without it I never obtained an IP on that interface. I don't remember having to enable this on a previous config for a different wireless adapter, but maybe I did... what then is the point of `DHCP=yes` in `/etc/systemd/network/25-wireless.network` as mentiond in the systemd-networkd wiki page?
My config is below. In summary:
1. Why does `/lib/systemd/systemd-networkd-wait-online --any` fail when the interface is up?
2. Is it normal that the interface be reported as "unmanaged" by networkctl?
3. Why do I need to start dhcpcd@ when DHCP=yes is in the .network file?
Config:
> ls /etc/systemd/network/
25-wireless.network
> cat /etc/systemd/network/25-wireless.network
[Match]
Name=wlp0s20u4
[Network]
DHCP=yes
IgnoreCarrierLoss=3s
> cat /etc/wpa_supplicant/wpa_supplicant-wlp0s20u4.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1
network={
<redacted>
}
> find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
audiobookshelf.service | multi-user.target.wants
caddy.service | multi-user.target.wants
cronie.service | multi-user.target.wants
dbus-org.freedesktop.network1.service | system
dhcpcd@wlp0s20u4.service | multi-user.target.wants
docker.service | multi-user.target.wants
fail2ban.service | multi-user.target.wants
fstrim.timer | multi-user.target.wants
gcr-ssh-agent.socket | sockets.target.wants
getty@tty1.service | getty.target.wants
gnome-keyring-daemon.socket | sockets.target.wants
ip6tables.service | multi-user.target.wants
iptables.service | multi-user.target.wants
jellyfin.service | multi-user.target.wants
krb5-kdc.service | multi-user.target.wants
lm_sensors.service | multi-user.target.wants
nix-daemon.service | multi-user.target.wants
ntpd.service | multi-user.target.wants
p11-kit-server.socket | sockets.target.wants
pipewire-pulse.socket | sockets.target.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
prometheus-node-exporter.service | multi-user.target.wants
prometheus-systemd-exporter.service | multi-user.target.wants
rankmirrors.timer | timers.target.wants
remote-fs.target | multi-user.target.wants
sshd.service | multi-user.target.wants
systemd-networkd.service | multi-user.target.wants
systemd-networkd.socket | sockets.target.wants
systemd-networkd-wait-online@wlp0s20u4.service | network-online.target.wants
systemd-network-generator.service | sysinit.target.wants
systemd-timesyncd.service | sysinit.target.wants
tor.service | multi-user.target.wants
wg-quick@wg0.service | multi-user.target.wants
wireplumber.service | pipewire.service.wants
wpa_supplicant@wlp0s20u4.service | multi-user.target.wants
xdg-user-dirs-update.service | default.target.wants
yggdrasil.service | multi-user.target.wants
(I have systemd-networkd-wait-online@wpl0s20u4 enabled, for now, in the above.)
Last edited by tsj (2024-05-17 21:32:31)
Offline
Solved, seems like the issue was 600 permissions with user root on the .network file. Seems like there's no error message about this, even in the debug output.
Offline