I've recently moved to a place with public WiFi (so I don't have access to the router or their DHCP config), and am running into issues connecting with my Arch laptop.
I've tried using both NetworkManager and netctl to connect, but both fail at getting a DHCP lease. It should be noted that every other device (Android and iOS phones, Windows and macOS laptops) does so without problems.
How do I go about debugging this? Am I missing a package, or am I connecting wrongly?
NetworkManager
I use nmcli
to connect:
$ nmcli dev wifi
* SSID MODE CHAN RATE SIGNAL BARS SECURITY
ssidOfWifi Infra 1 54 Mbit/s 52 ▂▄__ WPA2
ssidOfWifi Infra 13 54 Mbit/s 34 ▂▄__ WPA2
ssidOfWifi Infra 13 54 Mbit/s 22 ▂___ WPA2
$ nmcli dev wifi connect ssidOfWifi password passwordToWifi
Error: Connection activation failed: (5) IP configuration could not be reserved (no available address, timeout, etc.).
$ systemctl status NetworkManager
...
Jan 09 17:49:43 home NetworkManager[5621]: <info> [1483980583.9385] device (wlp2s0): Activation: (wifi) Stage 2 of 5 (Device Configure) successful. Connected to wireless network 'ssidOfWifi'.
Jan 09 17:49:43 home NetworkManager[5621]: <info> [1483980583.9386] device (wlp2s0): state change: config -> ip-config (reason 'none') [50 70 0]
Jan 09 17:49:43 home NetworkManager[5621]: <info> [1483980583.9390] dhcp4 (wlp2s0): activation: beginning transaction (timeout in 45 seconds)
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0055] dhcp4 (wlp2s0): state changed unknown -> timeout
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0214] dhcp4 (wlp2s0): canceled DHCP transaction
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0215] dhcp4 (wlp2s0): state changed timeout -> done
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0220] device (wlp2s0): state change: ip-config -> failed (reason 'ip-config-unavailable') [70 120 5]
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0223] manager: NetworkManager state is now DISCONNECTED
Jan 09 17:50:29 home NetworkManager[5621]: <warn> [1483980629.0233] device (wlp2s0): Activation: failed for connection 'ssidOfWifi'
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0319] device (wlp2s0): state change: failed -> disconnected (reason 'none') [120 30 0]
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0421] device (wlp2s0): set-hw-addr: set MAC address to AA:BB:CC:DD:EE:FF (scanning)
Jan 09 17:50:29 home NetworkManager[5621]: <warn> [1483980629.0453] sup-iface[0x1d5ec00,wlp2s0]: connection disconnected (reason -3)
Jan 09 17:50:29 home NetworkManager[5621]: <info> [1483980629.0454] device (wlp2s0): supplicant interface state: completed -> disconnected
Netctl
I use wifi-menu -o
to connect. This shows only one "ssidOfWifi", unlike nmcli
which shows one for each accesspoint.
$ sudo wifi-menu -o
Job for netctl@wlp2s0\x2dssidOfWifi.service failed because the control process exited with error code.
See "systemctl status "netctl@wlp2s0\\x2dssidOfNetwork.service"" and "journalctl -xe" for details.
$ journalctl -xe
...
Jan 09 23:10:34 home dhcpcd[14402]: wlp2s0: soliciting a DHCP lease
Jan 09 23:11:03 home dhcpcd[14402]: timed out
Jan 09 23:11:03 home dhcpcd[14402]: dhcpcd exited
Jan 09 23:11:03 home network[14363]: DHCP IPv4 lease attempt failed on interface 'wlp2s0'
Jan 09 23:11:03 home kernel: wlp2s0: deauthenticating from AA:BB:CC:DD:EE:FF by local choice (Reason: 3=DEAUTH_LEAVING)
Jan 09 23:11:03 home network[14363]: Failed to bring the network up for profile 'wlp2s0-ssidOfWifi'
Jan 09 23:11:03 home systemd[1]: netctl@wlp2s0\x2dssidOfWifi.service: Main process exited, code=exited, status=1/FAILURE