LINUX.ORG.RU
ФорумAdmin

Ubuntu 24.10 NetworkManager bgscan

 ,


0

1

В логе NetworkManager вижу, что задается параметр сканирования bgscan

фев 13 02:34:26 latuk-Vivobook-ASUSLaptop-X7400PC-N7400PC NetworkManager[2154]: [1739403266.2183] Config: added ‘bgscan’ value ‘simple:30:-65:300’

‘bgscan’ value ‘simple:30:-65:300’ хочется сделать его таким ‘bgscan’ value ‘simple:5:-50:120’

для более агрессивного роуминга в mesh на двух Tenda AX5700 RX27 Pro WiFi6E клиент MT7925

когда поднимаю сеть вручную, параметр задается в wpa_supplicant.conf параметром bgscan=«simple:5:-50:120» но хочется удобства NetworkManager


напрасно штудировал мануал man 5 NetworkManager.conf параметр оказался захардкоженым NetworkManager-1.48.8/src/core/supplicant/nm-supplicant-config.c

gboolean
nm_supplicant_config_add_bgscan(NMSupplicantConfig *self,
                                NMConnection       *connection,
                                guint               num_seen_bssids,
                                GError            **error)
{
    NMSettingWireless         *s_wifi;
    NMSettingWirelessSecurity *s_wsec;
    const char                *bgscan;

    s_wifi = nm_connection_get_setting_wireless(connection);
    g_assert(s_wifi);

    /* Don't scan when a shared connection (either AP or Ad-Hoc) is active;
     * it will disrupt connected clients.
     */
    if (NM_IN_STRSET(nm_setting_wireless_get_mode(s_wifi),
                     NM_SETTING_WIRELESS_MODE_AP,
                     NM_SETTING_WIRELESS_MODE_ADHOC))
        return TRUE;

    /* Don't scan when the connection is locked to a specific AP, since
     * intra-ESS roaming (which requires periodic scanning) isn't being
     * used due to the specific AP lock. (bgo #513820)
     */
    if (nm_setting_wireless_get_bssid(s_wifi))
        return TRUE;

    /* Default to a very long bgscan interval when signal is OK on the assumption
     * that either (a) there aren't multiple APs and we don't need roaming, or
     * (b) since EAP/802.1x isn't used and thus there are fewer steps to fail
     * during a roam, we can wait longer before scanning for roam candidates.
     */
   bgscan = "simple:30:-70:86400";

    /* If using WPA Enterprise, Dynamic WEP or we have seen more than one AP use
     * a shorter bgscan interval on the assumption that this is a multi-AP ESS
     * in which we want more reliable roaming between APs. Thus trigger scans
     * when the signal is still somewhat OK so we have an up-to-date roam
     * candidate list when the signal gets bad.
     */
    if (num_seen_bssids > 1u
        || ((s_wsec = nm_connection_get_setting_wireless_security(connection))
            && NM_IN_STRSET(nm_setting_wireless_security_get_key_mgmt(s_wsec),
                            "ieee8021x",
                            "wpa-eap",
                            "wpa-eap-suite-b-192")))
        bgscan = "simple:30:-65:300";

    return nm_supplicant_config_add_option(self, "bgscan", bgscan, -1, FALSE, error);
} 
Latuk
() автор топика
Ответ на: комментарий от anonymous

пытаюсь собрать пакет meson setup build/ $CONFIGURE_OPTIONS

meson.build:378:2: ERROR: Assert failed: systemd required but not found, please provide a valid systemd user unit dir or disable it

но systemd есть в системе Уже установлен пакет systemd самой новой версии (256.5-2ubuntu3.1).

как исправить?

Latuk
() автор топика
Ответ на: комментарий от Latuk

собрал NetworkManager заменив bgscan в коде на «learn:5:-50:120:/etc/wpa_supplicant/network1.bgscan» теперь после первого коннекта клиент запоминает точку в /etc/wpa_supplicant/network1.bgscan и потом переключается между точками быстро sudo dpkg -i libnm0_1.50.2-1_amd64.deb network-manager_1.50.2-1_amd64.deb

libnm0_1.50.2-1_amd64.deb network-manager_1.50.2-1_amd64.deb

Latuk
() автор топика