You are not logged in.
I am aware there are many people with the same issue who have had help on here but I'm making a new thread because it will be easier for me to understand and apply in the context of my own issue.
I am trying to connect to school Wi-Fi on arch through iwd, I have made a config file and everything seems like it should work, so I am asking for help.
the terminal showed as follows (> indicating my input)
>iwctl
NetworkConfigurationEnabled: Disabled
StateDirectory: /var/lib/iwd
Version: 3.10
>station wlan0 connect <network name>
Type the network credentials for <network name>
Username: <name>
Password: Password: ***********
Operation faliedthe operation failed appeared after about 3 seconds
my config file is as follows:
[Security]
EAP-Method=PEAP
EAP-PEAP-Phase2-Method=MSCHAPV2
EAP-PEAP-Phase2-Identity=<name>
EAP-PEAP-Phase2-Password=<Password>
[Settings]
AutoConnect=trueThank you in advance
Last edited by U53RN4M3 (2026-04-01 08:46:06)
Offline
everything seems like it should work
Operation falied
![]()
connect to school Wi-Fi
eduroam? Your subject line should probably say that.
Check the system journal whether iwd logs details about the failure.
If no, stop iwd and manually start
export IWD_TLS_DEBUG=1
sudo iwd -dDoes the connection work w/ wpa_supplicant?
Also, sanity check:
find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -fOffline
By everything seems like it should work I mean from what I could get out of previous threads.
I don't know what eduroam is so maybe?
Offline
I don't know what eduroam is so maybe?
[Security]
EAP-Method=PEAP
EAP-PEAP-Phase2-Method=MSCHAPV2
Where did you get the idea for the iwd config?
https://wiki.archlinux.org/title/Networ … ss#eduroam
Then please address the other questions (iwd debug, wpa_supplicant and concurrent network services)
https://bbs.archlinux.org/viewtopic.php?id=57855
Offline
I have checked, the school wi-fi is not eduroam.
It's currently the weekend so I don't have school but I will try that on Monday.
Offline
$ find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
bluetooth.service | bluetooth.target.wants
dbus-org.bluez.service | system
dbus-org.freedesktop.network1.service | system
dbus-org.freedesktop.resolve1.service | system
dbus-org.freedesktop.timesync1.service | system
fstrim.timer | timers.target.wants
getty@tty1.service | getty.target.wants
iwd.service | multi-user.target.wants
nvidia-hibernate.service | systemd-hibernate.service.wants
nvidia-resume.service | systemd-hibernate.service.wants
nvidia-resume.service | systemd-suspend.service.wants
nvidia-resume.service | systemd-suspend-then-hibernate.service.wants
nvidia-suspend.service | systemd-suspend.service.wants
p11-kit-server.socket | sockets.target.wants
pipewire-pulse.socket | sockets.target.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
remote-fs.target | multi-user.target.wants
snapd.apparmor.service | multi-user.target.wants
snapd.socket | sockets.target.wants
systemd-networkd.service | multi-user.target.wants
systemd-networkd.socket | sockets.target.wants
systemd-networkd-varlink.socket | sockets.target.wants
systemd-networkd-wait-online.service | network-online.target.wants
systemd-network-generator.service | sysinit.target.wants
systemd-resolved-monitor.socket | sockets.target.wants
systemd-resolved.service | sysinit.target.wants
systemd-resolved-varlink.socket | sockets.target.wants
systemd-timesyncd.service | sysinit.target.wants
systemd-userdbd.socket | sockets.target.wants
var-lib-snapd-snap-bare-5.mount | multi-user.target.wants
var-lib-snapd-snap-bare-5.mount | snapd.mounts.target.wants
var-lib-snapd-snap-clip\x2dsnap\x2dpaint-2.mount | multi-user.target.wants
var-lib-snapd-snap-clip\x2dsnap\x2dpaint-2.mount | snapd.mounts.target.wants
var-lib-snapd-snap-core18-2976.mount | multi-user.target.wants
var-lib-snapd-snap-core18-2976.mount | snapd.mounts.target.wants
var-lib-snapd-snap-core18-2979.mount | multi-user.target.wants
var-lib-snapd-snap-core18-2979.mount | snapd.mounts.target.wants
var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount | multi-user.target.wants
var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount | snapd.mounts.target.wants
var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount | multi-user.target.wants
var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount | snapd.mounts.target.wants
var-lib-snapd-snap-snapd-25577.mount | multi-user.target.wants
var-lib-snapd-snap-snapd-25577.mount | snapd.mounts.target.wants
var-lib-snapd-snap-snapd-25935.mount | multi-user.target.wants
var-lib-snapd-snap-snapd-25935.mount | snapd.mounts.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2d6\x2dstaging-46.mount | multi-user.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2d6\x2dstaging-46.mount | snapd.mounts.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2druntime-402.mount | multi-user.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2druntime-402.mount | snapd.mounts.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2druntime-409.mount | multi-user.target.wants
var-lib-snapd-snap-wine\x2dplatform\x2druntime-409.mount | snapd.mounts.target.wants
wireplumber.service | pipewire.service.wants I dont have wpa_supplicant on my device but I can try that later.
My school doesnt use edu roam.
On monday I can try again and get the debug log.
Offline
Just an update.
I have been able to connect to the internet. But for some reason it doesn't work, journalctl shows "connected" status shows connected, waybar shows connected, but I am unable to ping any domain or open any website.
Why might this be?
Offline
Why might this be?
DNS, can you
ping -c1 _gateway
ping -c1 8.8.8.8
ping -c1 2001:4860:4860::8844resolvectl status
dig google.com
dig @8.8.8.8 google.comOffline
i tried pinging 8.8.8.8.
i got 10 sent, 0 recieved, 100% packet loss.
I will try the others now.
Offline
If 8.8.8.8 doesn't respond you don't have a global IPv4 connection.
ip a; ip rOffline
#resolvectl status
Global
Protocals: +LLMNR +mDNS -DNSoverTLS
DNSSEC = no/unsupported
resolv.conf mode:foreign
Current DNS Server: 9.9.9.9#dns.quad9.net
Fallback: 9.9.9.9#dns.quad9.net 2620:fe::9#dns.quad9.net 1.1.1.1#cloudflare-dns.com 2606:####:####::1111#cloudflare-dns.com 8.8.8.8#dns_google 2001:####:####::8888#dns_google
DNS domain:
Link 3 (wlan0)
some errors might be because im handwriting it and copying it down here, i dont have time for the rest, ill try what you said soon.
Offline
#ip a; ip r
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet ###.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 58:cd:c9:##:##:## brd ff:ff:ff:ff:ff:ff
inet 10.167.168.186/22 metric 600 brd 10.167.171.255 scope global dynamic wlan0
valid_lft 3552sec preferred_lft 3552sec
inet6 fe80::5acd:c9ff:fe36:8137/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
default via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.186 metric 600
10.###.64.##0 via 10.###.###.1 dev wlan0 proto dhcp src 10.###.168.### metric 600
10.###.64.### via 10.###.###.1 dev wlan0 proto dhcp src 10.###.168.### metric 600
10.###.233.### via 10.###.###.1 dev wlan0 proto dhcp src 10.###.168.### metric 600
10.###.###.0/22 dev wlan0 proto kernel scope link src 10.###.168.### metric 600
10.###.###.1 dev wlan0 proto dhcp scope link src 10.###.###.### metric 600 Offline
errors might be because im handwriting it
Good god, don't.
I's not only error prone but also tedious - in doubt rather link a photo if you see no other way to provide the data (eg. redirecting it into a file and usb-walk it to a system w/ internet access)
None of the numbers you obfuscated are any sensitive but the routing table looks too complicated and the resolvectl status pot. cut short?
So please provide the unaltered data.
Also can you
ping -c1 10.167.168.1?
NetworkConfigurationEnabled: Disabled
But did you meantime maybe https://wiki.archlinux.org/title/Iwd#En … figuration (don't if you want to use systemd-networkd) and just on a hunch for your routing situation, please disable snapd
Offline
The ip a; ip r was copy pasted, it's a few days before I'll have another chance to do things so it will be a bit before I can provide anything else.
I will provide the full resolvectl when I get a chance as well.
Offline
that ping also got 0 received with 100% loss.
I tried enabling network config and still the same.
Offline
Please post your complete system journal for the boot:
sudo journalctl -b | curl -F 'file=@-' 0x0.stafter trying to ping somthing
Offline
Hi there.
I have kind of managed to connect.
I am now able to access websites, get packages and update packages, but when I try to ping anything it's still 0 received 100% loss.
I should be fine using this for school, if there could be any problems arise from this please tell me otherwise I will say that it's working now.
Offline
I was trying to get my battery life optimised a bit better.
I found "powertop" as something to use.
after running powertop i cant connect, iwctl device list shows wlan0 as powered off but it wont turn back on.
How could I fix this?
Offline
Please post your complete system journal for the boot:
sudo journalctl -b | curl -F 'file=@-' 0x0.stafter trying to ping somthing [and wlan0 turning off]
Offline
sorry i forgot.
Here are the results.
$ ip a; ip r
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN g>
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue st>
link/ether 58:cd:c9:36:81:37 brd ff:ff:ff:ff:ff:ff
inet 10.167.168.25/22 scope global dynamic noprefixroute wlan0
valid_lft 3570sec preferred_lft 3570sec
inet 10.167.168.26/22 metric 600 brd 10.167.171.255 scope global >
valid_lft 3574sec preferred_lft 3574sec
inet6 fe80::5acd:c9ff:fe36:8137/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
default via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.25 metri>
default via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.26 metri>
10.160.64.120 via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.26>
10.160.64.121 via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.26>
10.160.233.120 via 10.167.168.1 dev wlan0 proto dhcp src 10.167.168.2>
10.167.168.0/22 dev wlan0 proto dhcp scope link metric 303
10.167.168.1 dev wlan0 proto dhcp scope link src 10.167.168.26 metric>
$ resolvectl
Global
Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsu
pported
resolv.conf mode: foreign
Current DNS Server: 8.8.8.8#dns.google
Fallback DNS Servers: 9.9.9.9#dns.quad9.net 2620:fe::9#dns.qu
ad9.net
1.1.1.1#cloudflare-dns.com
2606:4700:4700::1111#cloudflare-dns.com
8.8.8.8#dns.google
2001:4860:4860::8888#dns.google
DNS Domain: ~.
Link 3 (wlan0)
Current Scopes: DNS LLMNR/IPv4 LLMNR/IPv6 mDNS/IPv4 mDNS/
IPv6
Protocols: +DefaultRoute +LLMNR +mDNS -DNSOverTLS
DNSSEC=no/unsupported
Current DNS Server: 10.160.64.121
DNS Servers: 10.160.64.121 10.160.64.120 10.160.233.12
0
Default Route: yes Offline
Please dont copy and paste out of the pager (">" means the line was truncated because of this)
W're lacking the journal but there're apparently concurrent leases on the same device and on the same segment and to the same gateway - there's likely some concurrent network configuration but that's not explained by the service list you posted in #6
Offline
I'll do a service check again. I had some issues and had to mess around a bit and might have accidentally reactivated some things that were disabled.
Offline
$ find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
bluetooth.service | bluetooth.target.wants
dbus-org.bluez.service | system
dbus-org.freedesktop.network1.service | system
dbus-org.freedesktop.resolve1.service | system
dbus-org.freedesktop.timesync1.service | system
fstrim.timer | timers.target.wants
getty@tty1.service | getty.target.wants
iwd.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
remote-fs.target | multi-user.target.wants
systemd-networkd.service | multi-user.target.wants
systemd-networkd.socket | sockets.target.wants
systemd-networkd-varlink.socket | sockets.target.wants
systemd-networkd-wait-online.service | network-online.target.wants
systemd-network-generator.service | sysinit.target.wants
systemd-resolved-monitor.socket | sockets.target.wants
systemd-resolved.service | sysinit.target.wants
systemd-resolved-varlink.socket | sockets.target.wants
systemd-timesyncd.service | sysinit.target.wants
systemd-userdbd.socket | sockets.target.wants
wireplumber.service | pipewire.service.wants I will get the journalctl result later when I'm at school.
Offline
Journalctl, the system time is wrong, i will do
sudo journalctl -b | curl -F 'file=@-' 0x0.st as requested tomorrow.
$ journalctl -u iwd
Feb 27 00:25:12 MeBTW systemd[1]: Starting Wireless service...
Feb 27 00:25:12 MeBTW iwd[570]: Wireless daemon version 3.10
Feb 27 00:25:12 MeBTW iwd[570]: Loaded configuration from /etc/iwd/mai
n.conf
Feb 27 00:25:12 MeBTW systemd[1]: Started Wireless service.
Feb 27 00:25:12 MeBTW iwd[570]: Wiphy: 0, Name: phy0
Feb 27 00:25:12 MeBTW iwd[570]: Permanent Address: 58:cd:c9:36
:81:37
Feb 27 00:25:12 MeBTW iwd[570]: 2.4GHz Band:
Feb 27 00:25:12 MeBTW iwd[570]: Bitrates (non-HT):
Feb 27 00:25:12 MeBTW iwd[570]: 1.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 2.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 5.5 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 11.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 6.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 9.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 12.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 18.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 24.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 36.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 48.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 54.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: HT Capabilities:
Feb 27 00:25:12 MeBTW iwd[570]: HT40
Feb 27 00:25:12 MeBTW iwd[570]: Short GI for 2
0Mhz
Feb 27 00:25:12 MeBTW iwd[570]: Short GI for 4
0Mhz
Feb 27 00:25:12 MeBTW iwd[570]: HT RX MCS indexes:
Feb 27 00:25:12 MeBTW iwd[570]: 0-7
Feb 27 00:25:12 MeBTW iwd[570]: 32
Feb 27 00:25:12 MeBTW iwd[570]: 5GHz Band:
Feb 27 00:25:12 MeBTW iwd[570]: Bitrates (non-HT):
Feb 27 00:25:12 MeBTW iwd[570]: 6.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 9.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 12.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 18.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 24.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 36.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 48.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: 54.0 Mbps
Feb 27 00:25:12 MeBTW iwd[570]: HT Capabilities:
Feb 27 00:25:12 MeBTW iwd[570]: HT40
Feb 27 00:25:12 MeBTW iwd[570]: Short GI for 20Mhz
Feb 27 00:25:12 MeBTW iwd[570]: Short GI for 40Mhz
Feb 27 00:25:12 MeBTW iwd[570]: HT RX MCS indexes:
Feb 27 00:25:12 MeBTW iwd[570]: 0-7
Feb 27 00:25:12 MeBTW iwd[570]: 32
Feb 27 00:25:12 MeBTW iwd[570]: VHT Capabilities:
Feb 27 00:25:12 MeBTW iwd[570]: Short GI for 80Mhz
Feb 27 00:25:12 MeBTW iwd[570]: Max RX MCS: 0-9 for NSS: 1
Feb 27 00:25:12 MeBTW iwd[570]: Max TX MCS: 0-9 for NSS: 1
Feb 27 00:25:12 MeBTW iwd[570]: Ciphers: BIP-CMAC-256 BIP-GMAC-256 BIP-GMAC-128 CCMP-256
Feb 27 00:25:12 MeBTW iwd[570]: GCMP-256 GCMP-128 BIP-CMAC-128 CCMP-128
Feb 27 00:25:12 MeBTW iwd[570]: TKIP
Feb 27 00:25:12 MeBTW iwd[570]: Supported iftypes: ad-hoc station ap
Feb 27 00:25:13 MeBTW iwd[570]: event: state, old: disconnected, new: autoconnect_quick
Feb 27 00:25:13 MeBTW iwd[570]: udev interface=wlan0 ifindex=3
Feb 27 00:25:14 MeBTW iwd[570]: event: connect-info, ssid: SMMC-BYOD,
bss: 34:20:e3:9d:da:98, signal: -32, load: 151/255
Feb 27 00:25:14 MeBTW iwd[570]: event: state, old: autoconnect_quick,
new: connecting (auto)
Feb 27 00:25:15 MeBTW iwd[570]: EAP completed with eapSuccess
Feb 27 00:25:15 MeBTW iwd[570]: hardware_rekey not supported
Feb 27 00:25:15 MeBTW iwd[570]: event: state, old: connecting (auto), new: connecting (netconfig)
Feb 27 00:25:16 MeBTW iwd[570]: event: state, old: connecting (netconfig), new: connected
Feb 27 00:25:16 MeBTW iwd[570]: resolve-systemd: Failed to modify the DNS entries. org.freedesktop.resolve1.LinkBusy: Link wlan0 is managed.
Feb 27 00:25:16 MeBTW iwd[570]: resolve-systemd: Failed to modify the domains entries. org.freedesktop.resolve1.LinkBusy: Link wlan0 is managed.
Feb 27 00:27:31 MeBTW iwd[570]: Terminate
Feb 27 00:27:31 MeBTW systemd[1]: Stopping Wireless service...
Feb 27 00:27:31 MeBTW iwd[570]: Removing scan context for wdev 2
Feb 27 00:27:32 MeBTW iwd[570]: D-Bus disconnected, quitting...
Feb 27 00:27:32 MeBTW systemd[1]: iwd.service: Deactivated successfully.
Feb 27 00:27:32 MeBTW systemd[1]: Stopped Wireless service. Offline
That actually looks like https://wiki.archlinux.org/title/Iwd#En … figuration is enabled?
Disable it if you want to use systemd-networkd
Offline