You are not logged in.

#1 2025-05-26 06:56:58

vee
Member
Registered: 2012-10-30
Posts: 4

[solved] wpa_supplicant fail-loop on bonding wired and wireless

hello folks,

my goal is to have the wired and wifi interfaces bonded, with a single static-ip (or dhcp), and using systemd-networkd with wpa_supplicant

the problem is wpa_supplicant never hits the state "COMPLETED"; it loops from SCANNING to ASSOCIATED until it disables itself after N failures.
stdout/error mentions "auth_failures=1" though it is the same config that works if the wifi is not part of a bond...
and "-d" flag shows, with the bond setup, it completing the connection attempt but disconnects for unknown reason

at the current moment i am thinking wpa_supplicant needs to know of both the bond0 and wifi0 interfaces, maybe some combination of socket files and -N ?



ive config'd the .network and .netdev files as described in https://wiki.archlinux.org/title/System … _interface
- with an additional `00_wifi.link` file setup, matching the wifi's macadder and renaming it to `wifi0`


other notes:
  - ssid is hidden, so ive enabled the ap_scan=1 and scan_ssid=1 options
  - since creating this, ive toggled a few options (frequency, bssid, protos)
  - using a broadcom wireless device BCM4313, driver from the AUR: b43-firmware




- command: wpa_supplicant -c /etc/wpa_supplicant/test.conf  -i wifi0

config files as follows:

- /etc/wpa_supplicant/test.conf

ap_scan=1 ## fix for error "could not read SSID from driver"  ## 2 "nl80211 not designed"
update_config=0
ctrl_interface=/var/run/wpa_supplicant
# ctrl_interface_group=wheel
network={
  # bssid=aa:bb:cc:11:22:33 ## mock
  # frequency=1234 ## mock data
  ssid="hidden"
  psk=blablablablablablablablablablablablablablablablablablablablabla
  scan_ssid=1 ## reqired for hidden ssid
  key_mgmt=WPA-PSK
  # proto="WPA" ## both WPA and RSN work!
  # proto="RSN"
}


- /etc/systemd/network
  - basically 1:1 with wiki for contents, except with device names matching my system
    - 10_bond0.netdev ( wiki's 30-bond0.netdev )
    - 11_bond_wire.network ( wiki's 30-ethernet-bond0.network )
    - 12_bond_wifi.network ( wiki's 30-wifi-bond0.network )
  - 13_bond.network

[Match]
Name=bond0

[Network]
BindCarrier=eno1 wifi0
DHCP=yes

[Link]
RequiredForOnline=routable



thanks in advance!

Last edited by vee (2025-05-27 08:12:52)

Offline

#2 2025-05-26 16:07:51

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,051

Re: [solved] wpa_supplicant fail-loop on bonding wired and wireless

it loops from SCANNING to ASSOCIATED until it disables itself after N failures.
stdout/error mentions "auth_failures=1" though it is the same config that works if the wifi is not part of a bond...

Please don't paraphrase, https://bbs.archlinux.org/viewtopic.php?id=57855
Post the actual wpa_supplicant I/O - it'll likely also post a reason for the failure, make sure the SSID is correct, you're not spoofing the MAC and then, ultimately, check the AP.
The AP might figure that you already have a lease and you're not getting another one - ie. no bonding for you. And the NIC might be incapable of bonding or there maybe driver bugs.

Have you tried one of the high-level setups like in netctl or networkmanager to establish that bonding principally works in the context?

Online

#3 2025-05-27 01:03:33

vee
Member
Registered: 2012-10-30
Posts: 4

Re: [solved] wpa_supplicant fail-loop on bonding wired and wireless

edit:
solved: config stuff was all good, turns out i had installed (and forgot about) broadcom-wl; removing that and the wpa_supplicant no longer fail-loops when the wifi is part of a bond

pre-edit left unchanged:


i did not want to post the full direct logs as i didnt really want to push up my local area's wifi's and mac addrs - i'll work on sed'ing out that data, and likely the hexdump items too if need be
- no, i did not spoof any macs and yes the ssid is correct (it is the same wpa_conf that works without the bond)

in comparing the bridged vs non bridged outputs, they start out the same (line by line) all the way until the "Connect event" line (below is where it fails) ( i did not need to mask/filter any of the below):

nl80211: Connect request send successfully
wifi0: Setting authentication timeout: 10 sec 0 usec
EAPOL: External notification - EAP success=0
EAPOL: External notification - EAP fail=0
EAPOL: External notification - portControl=Auto
nl80211: Drv Event 46 (NL80211_CMD_CONNECT) received for wifi0

nl80211: Connect event (status=16 ignore_next_local_disconnect=0)
wifi0: Event ASSOC_REJECT (12) received
wifi0: CTRL-EVENT-ASSOC-REJECT bssid=00:00:00:00:00:00 status_code=16


without the bond, it has:

nl80211: Connect event (status=0 ignore_next_local_disconnect=0)


but it does appear this status=16 is the "reason" => i'll attempt with NM next i suppose (or an alt driver); at the moment i'm going to place my bet on a driver issue or if the NIC requires


one thing i did notice on the AP side of things (dd-wrt) - when wpa_supplicant connect without the bond, exiting the process had instantly removed itself from the Wireless Nodes on the router. but in bonded mode, the client listed would reset after 7 or 8 secs .. and exiting wpa_supplicant the client still appeared (like the loop-event of wpa_supplicant didnt release properly)


thanks again

Last edited by vee (2025-05-27 05:06:26)

Offline

#4 2025-05-27 07:03:26

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,051

Re: [solved] wpa_supplicant fail-loop on bonding wired and wireless

\o/ (And condolences for using broadcom wifi…)
Please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.

Online

Board footer

Powered by FluxBB