Wlan AP instabil mit Trixie

  • Hallo!

    Ich habe meine Wlan-Brigde frisch mit Trixie installiert, vorher lief Raspbian 10.

    Leider wirft hostapd die Clients alle paar Minuten aus dem Netz, angeblich wegen Inaktivität. Man muss dann die Clients zwingen, neu einzubuchen.

    Mit Raspbian 12 habe ich das Problem gar nicht.

    In beiden Fällen ist hostapd mit einer Brücke installiert, jeweils mit nmtui konfiguriert.

    Die Hardware ist ein Pi 1 mit MediaTek Inc. MT7612U 802.11a/b/g/n/ac.

  • Leider wirft hostapd die Clients alle paar Minuten aus dem Netz, angeblich wegen Inaktivität.

    Starte mal (als Test) auf deinem PI mit dem hostapd, alle 2 Minuten einen cronjob (oder gleichwertig) mit einem arp-request an die WLAN-Clients, damit diese immer mit einem arp-reply antworten müssen und so nicht inaktiv werden können.

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.0R-p4 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p0 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited once, last by rpi444 (December 11, 2025 at 1:18 PM).

  • … mein Handy alle 4 Sekunden gepingt.

    Naja, man kann’s ja auch übertreiben. Hat das Handy auch immer schön geantwortet?

    Sniffe mal auf deinem Pi das wlan-rekeying und den 4-way-handshake, um zu sehen wer was sendet bzgl. Erhalten und (Wieder)herstellen der WLAN-Verbindung zwischen hostapd und WLAN-Clients.

  • Ja teilweise und dann fliegt's raus. Liegt bestimmt am Treiber. Einbuchen klappt auch nicht immer. Man sieht aber nix besonderes:


    22:18:53 STA MLME: MLME-DELETEKEYS.request(Handy-MAC)
    22:18:53 STA IEEE 802.11: binding station to interface 'wlan0'
    22:18:53 STA WPA: event 1 notification
    22:18:53 STA WPA: sending 1/4 msg of 4-Way Handshake
    22:18:53 STA WPA: received EAPOL-Key frame (2/4 Pairwise)
    22:18:53 STA WPA: sending 3/4 msg of 4-Way Handshake
    22:18:53 STA WPA: received EAPOL-Key frame (4/4 Pairwise)
    22:18:53 STA IEEE 802.1X: authorizing port
    22:18:53 STA RADIUS: starting accounting session 4D8761CE53DE60D8
    22:18:53 STA WPA: pairwise key handshake completed (RSN)
    - - - Flieg raus
    22:20:56 STA IEEE 802.11: authentication OK (open system)
    22:20:56 STA WPA: event 0 notification
    22:20:56 STA MLME: MLME-AUTHENTICATE.indication(Handy-MAC, OPEN_SYSTEM)
    22:20:56 STA MLME: MLME-DELETEKEYS.request(Handy-MAC)
    22:20:56 STA IEEE 802.11: association OK (aid 1)
    22:20:56 STA IEEE 802.11: associated (aid 1)
    22:20:56 STA MLME: MLME-ASSOCIATE.indication(Handy-MAC)
    22:20:56 STA MLME: MLME-DELETEKEYS.request(Handy-MAC)
    22:20:56 STA IEEE 802.11: binding station to interface 'wlan0'
    22:20:56 STA WPA: event 1 notification
    22:20:56 STA WPA: sending 1/4 msg of 4-Way Handshake
    22:20:56 STA WPA: received EAPOL-Key frame (2/4 Pairwise)
    22:20:56 STA WPA: sending 3/4 msg of 4-Way Handshake
    22:20:56 STA WPA: received EAPOL-Key frame (4/4 Pairwise)
    22:20:56 STA IEEE 802.1X: authorizing port
    22:20:56 STA RADIUS: starting accounting session 4D8761CE53DE60D8
    22:20:56 STA WPA: pairwise key handshake completed (RSN)
    22:20:57 STA IEEE 802.11: authenticated

  • Ja teilweise und dann fliegt's raus.

    Installiere auf deinem PI:

    Code
    sudo apt install arp-scan

    und trage dann (ergänzend) als letzte Zeilen in die /etc/crontab, mit nano:

    Code
    sudo nano /etc/crontab

    die Zeilen:

    Code
    */2 *	* * *	root	/usr/sbin/arp-scan -I wlan0 --localnet > /dev/null 2>&1
    # - - - 

    ein und speichere bzw. nano verlassen. Danach testen.

    EDIT:

    BTW: Wenn Du die IP-Adressen der Wlan-Clients kennst, musst Du nicht das ganze localnet (256 hosts) scannen lassen. Man kann mit arp-scan auch eine IP-range scannen. Z. B.:

    Code
    /usr/sbin/arp-scan -I wlan0 192.168.178.2-192.168.178.50

    Das ist dann 1 Sekunde schneller.

    Wi-Fi_Signal_Strength  txpower
    iptables chains order scheme iptables-diagram
    nftables-diagram

    Meine PIs

    PI4B/8GB (border device) FreeBSD 15.0R-p4 (arm64): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server

    PI4B/4GB FreeBSD 14.4R-p0 (arm64): SSH-Serv., WireGuard-Serv., ngircd-Serv., Mumble-Serv., ddclient

    PI4B/8GB Bookworm-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, Mumble-Server, botamusique, ample

    Edited 2 times, last by rpi444 (December 11, 2025 at 10:45 PM).

  • Ich habe das Handy schon gepingt, das ändert nichts.

    arp ist eine andere Ebene als icmp (Ping) und arp geht auch dann, wenn icmp (noch) nicht geht. Das hat aber nur mit dem halten der Wlan-Verbindung zu tun.
    Zum herstellen (Einbuchen) der Wlan-Verbindung muss man wo anders suchen/optimieren.

  • Kein Unterschied. Ich habe das Wlan auch mal umbenannt, da ich ja Roaming mit anderen AP mache.

    Handy hat auch da Probleme mit Einbuchen:

    Dec 11 22:53:30 wlan0: STA IEEE 802.11: authentication OK (open system)
    Dec 11 22:53:30 wlan0: STA MLME: MLME-AUTHENTICATE.indication(Handy, OPEN_SYSTEM)
    Dec 11 22:53:30 wlan0: STA MLME: MLME-DELETEKEYS.request(Handy)
    Dec 11 22:53:30 wlan0: STA IEEE 802.11: authenticated
    Dec 11 22:53:30 wlan0: STA IEEE 802.11: association OK (aid 1)
    Dec 11 22:53:38 wlan0: STA WPA: event 3 notification
    Dec 11 22:53:38 wlan0: STA IEEE 802.1X: unauthorizing port
    Dec 11 22:53:38 wlan0: STA IEEE 802.11: deauthenticated
    Dec 11 22:53:38 wlan0: STA MLME: MLME-DEAUTHENTICATE.indication(Handy, 3)
    Dec 11 22:53:38 wlan0: STA MLME: MLME-DELETEKEYS.request(Handy)

    Password stimmt, 2-3 versuchen dann war ich drin.

  • Kein Unterschied. Ich habe das Wlan auch mal umbenannt, da ich ja Roaming mit anderen AP mache.

    Handy hat auch da Probleme mit Einbuchen:

    Password stimmt, 2-3 versuchen dann war ich drin.

    Ist das nur mit dem Handy so? Oder auch mit einem richtig konfigurierten Linux-Wlan-Client? Was passiert wenn Du kein Roaming (mit anderem AP) zur Verfügung stellst bzw. machst?

  • Versuch mal in der hostapd.conf, mit

    Code
    ap_max_inactivity=600
    disassoc_low_ack=0
    wpa_group_rekey=300
    wpa_ptk_rekey=300
  • Post by egon12 (December 12, 2025 at 1:00 PM).

    The post was deleted, no further information is available.
  • Ich hab den Pi mal eine weile mit Raspbian 12 und dann mit 13 laufen lassen. Parallel alle 60s ein Ping.

    Bei 12 sieht man, wie er sich alle 5 Minuten beim AP meldet:

    Mit 13 gibt es Probleme, es ist aber genau die gleiche hostapd.conf:

    Da sind noch Unterschiede zwischen 12 und 13.

    12 macht die Brücke mit dem Paket ifupdown, 13 mit dem NetworkManager. Die Mac-Adresse der Brücke ist nicht gleich.

    Inwieweit das Android stört, weiss ich nicht. Die SSID ist jedenfalls gleich. Andere AP sind weit weg und nur schwach empfangbar, der Problembär steht nämlich im Keller ;)

    Edited once, last by egon12: Format (December 12, 2025 at 5:25 PM).

  • [code]
    Dec 12 13:48:27 wlan0: STA Handy MLME: MLME-DEAUTHENTICATE.indication(Handy, 15)
    Dec 12 13:48:27 wlan0: STA Handy MLME: MLME-DELETEKEYS.request(Handy)
    [/code]

    Da sind noch Unterschiede zwischen 12 und 13.

    Wie ist auf 12 und auf 13 die Ausgabe von:

    Code
    apt policy hostapd

    ? Evtl. gibt es auch verschiedene default-Einstellungen bzgl. MLME (MAC Layer Management Entity) für den hostapd.


  • ps. Einguchen bei R13 geht aber schon, ist nur nicht stabil.

    Edited 3 times, last by egon12: ps format (December 12, 2025 at 5:24 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!