I have an mvebu router with radio0 set up as follows:
AP to provide “local” network
STA mode bridging to a router which provides internet access
All works fine with bleeding edge build from 9/12, but a newer build (10/3 or 10/6) results in no IP address being acquired on the STA interface.
In the non-working /var/run/wpa-supplicant-phy0-sta0.conf file there is a new line (not present in the working build):
multi_ap_backhaul_sta=0
This line appears to be associated with getting a 4-way IP address. If I set up the radio (in /etc/config/wireless) to pass this parameter to hostpad (set to 1), the AP no longer works. Any ideas on how to have this line removed from the sta config file, set to 1 in the sta config file, or other ideas as to what changed? Thanks in advance!
Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
Remember to redact passwords, VPN keys, MAC addresses and any public IP addresses you may have:
It is wifi-iface wifinet2, ssid network-hb-bridge that’s in question. I vaguely remember configuring this when the mwlwifi driver was being developed - this AP/STA mode was a late-breaking feature added for which I had a use.
Interestingly, I also have alternate configs using wds – with notes indicating they work, but I settled on this.
It appears you are using firmware that is not from the official OpenWrt project.
When using forks/offshoots/vendor-specific builds that are "based on OpenWrt", there may be many differences compared to the official versions (hosted by OpenWrt.org). Some of these customizations may fundamentally change the way that OpenWrt works. You might need help from people with specific/specialized knowledge about the firmware you are using, so it is possible that advice you get here may not be useful.
Ask for help from the maintainer(s) or user community of the specific firmware that you are using.
Provide the source code for the firmware so that users on this forum can understand how your firmware works (OpenWrt forum users are volunteers, so somebody might look at the code if they have time and are interested in your issue).
If you believe that this specific issue is common to generic/official OpenWrt and/or the maintainers of your build have indicated as such, please feel free to clarify.
In normal OpenWrt, you generally only alter this to a value of 100 or greater. Just FYI. Although I'll add, a lot of your other configs are odd, unnecessary, or foreign to official OpenWrt firmware and usual configs.
It is a custom build by me, largely just automatically including all my package selections and using openssl, nginx, full versions of hostapd for features, etc.
The question is basically what changed in openwrt since 9/12 that would take the same wireless config and generate different .conf files for hostapd. Close this topic by all means if this is an unacceptable use of the forums but it is incorrect to mark it “solved” – that helps nobody.
I'd start by using a standard build of 24.10.3 and see if it works as expected. Then, use a customized 24.10.3 image (via the firmware selector) and test again. Finally, you could repeat the tests (standard and customized) using the latest snapshot via the firmware selector again. These steps will help you establish if there is something wrong with the newer snapshots and/or your customization, or if it might be a config related issue.
I’m pretty convinced the parsing of the wireless config changed within the last month, resulting in the multi_ap_backhaul_sta=0 setting in the wpa_supplicant config for the “bridge” STA network.
Adding the following to the radio0 config:
list hostapd_options 'multi_ap_backhaul_sta=1'
results in the STA mode acquiring an IP address and working, but breaks the local AP network. This is likely because the setting ends up in the “hostapd” config file NOT just the STA configuration file.
What I’m looking for is a way to modifiy the /etc/config/wireless file to set multi_ap_backhaul_sta=1 for the STA config only. Pretty sure this will fix things.
In summary:
9/12 build results in NO multi_ap_backhual_sta setting in wpa-supplicant config file: everything works
10/3 build results in multi_ap_backhaul_sta=0 setting in wpa-supplicant config file: AP works, STA will not acquire IP
I would like to understand how to toggle the multi_ap_backhaul_sta setting to 1 in the wireless config, for the STA interface only, if possible.
It seems to be a generic SNAPSHOT build from the Official OpenWrt project based on the Build Date, kernel bump version, and latest commit from ubus call system board. I see nothing that points to a fork, offshoot, or vendor-specific build.
See above.
Of course it won't reflect the version and revision of the daily SNAPSHOT build from the buildbots, but that doesn't confirm the build is not built from the OpenWrt project source code. TMU customizing a build from the project source code is expected and fully supported by the project e.g. using openssl or wolfssl instead of mbedtls.
The question remains, what is considered an Offical Firmware Build? Apparently only Release and SNAPSHOT builds compiled by the buildbots and available on https://openwrt.org/downloads qualify by your reckoning. If this is the consensus, it should be pinned in the forum as: If you build your own firmware from Project Source, you're on your own.
Here are the generated config file differences relative to the working version:
/var/run/hostapd-phy0.conf
spectrum_mgmt_required=0
airtime_mode=0
rssi_reject_assoc_rssi=0
rssi_ignore_probe_request=0
acs_exclude_dfs=0
enable_background_radar=0
min_tx_power=0
channel=0
ssid2="network-hb" <diff: original is ssid (not ssid2) + no quotes>
ap_isolate=0
multi_ap <NOT PRESENT IN NONWORKING VERSION>
multicast_to_unicast=0
dtim_period=2
start_disabled=1
rrm_neighbor_report=1
rrm_beacon_report=1
rnr=1
wds_bridge= <NOT PRESENT IN NONWORKING VERSION>
vlan_no_bridge=1 <NOT PRESENT IN NONWORKING VERSION>
/var/run/wpa_supplicant-phy0-sta0.conf
disabled=0
multi_ap_backhaul_sta=0
ieee80211w=0
These config differences are larger than I expected, it will take me a while to work through the rat’s nest of scripts that translate the configuration to generate these, and figure out which of these differences matter and how to correct.
What part of a custom / personal build is not a REAL OpenWrt image. These inane rote posts leave a lot to be desired in terms of intelligent thought as to what this forum is here to address.
I’m going to dispute the simplicity of this resolution as nothing will work “out of the box” on the network (not on 192.168.x.x, multiple routed (some encrypted) networks, etc) which means network, firewall, wireless, dhcp, etc config files all have to be modified from whatever comes up as default config.
There’s a very high probability the baseline OpenWRT was modified such that the mode in which I was using the mwlwifi driver is broken. The question is whether the ability to alter configs to bring this mode back exists, or whether additional changes would be required to bring this back.
I am working to identify which of the recent changes impact this, so more to come.