.titleBar { margin-bottom: 5px!important; }

Kernel Bug mit openvpn

Dieses Thema im Forum "Freetz" wurde erstellt von scuba, 17 Feb. 2009.

  1. scuba

    scuba Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    24
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ahoi,

    zunächst meine Box:
    FON WLAN 7270-16 AVM
    Firmware Labor DSL 54.04.99-13225
    freetz-trunk-3083



    SystemStatus:
    FRITZ!Box Fon WLAN 7270-B-010205-000500-017530-415076-837902-540499-13225-avm

    FRITZ!Box Modifikation freetz-devel-3083, --- Optionen: +busybox -assistant -help +enum +getcons +maxdevcount +signed +usbstorage +syslogd-cgi-0.2.3 +callmonitor-1.12.3 +avm-firewall-2.0.4_rc2 +dropbear-0.52 +rrdtool-1.2.30 +vsftpd-2.0.7 +wol-cgi-0.6 +openvpn-2.1_rc15 +knock-0.5 +samba-3.0.24 +rrdstats-0.6.9 +fstyp-0.1 +haserl-0.9.25 +ldd-0.1 +lsof-4.81 +ltrace-0.5_81 +mc-4.6.1 +modcgi-0.2 +nano-shell-0.1 +ntfs-1.5130 +openssh-5.1p1 +pciutils-3.0.0 +screen-4.0.3 +strace-4.5.18 +usbutils-0.73

    Ich beobachte seit längerem folgendes Verhalten meiner Box:
    Box läuft stabil, bis eine OpenVPN-Client-Connection (bridge-mode) von außen initiiert wird. Bei bestehender Client-Verbindung folgen im Abstand von mehreren Sekunden folgende Meldungen im Syslog reproduzierbar auf:

    Code:
    Feb 17 15:04:53 fritz user.err kernel: BUG: warning at /home/hjortmann/HR08/RELEASE_WLAN_TOOLS_ur8_build/driver/core/net80211/ieee80211_output.c:1180/ieee80211_skbhdr_adjust()
    Feb 17 15:04:53 fritz user.err kernel: Call Trace:
    Feb 17 15:04:53 fritz user.err kernel: [<9400d824>] dump_stack+0x8/0x34
    Feb 17 15:04:53 fritz user.err kernel: [<c037b2cc>] ieee80211_encap_normal+0xc6c/0xffcfc9a0 [wlan]
    Feb 17 15:04:53 fritz user.err kernel: [<c037c258>] ieee80211_encap+0x258/0xffcfb000 [wlan]
    Feb 17 15:04:53 fritz user.err kernel: [<c03b1184>] ath_tx_prepare+0x5c/0xffd4fed8 [ath_pci]
    Feb 17 15:04:53 fritz user.err kernel: [<c03b17b0>] ath_tx_xmit_normal+0x3c/0xffd4f88c [ath_pci]
    Feb 17 15:04:53 fritz user.err kernel: [<c03b2110>] owl_hardstart+0x7c4/0xffd4f6b4 [ath_pci]
    Feb 17 15:04:53 fritz user.err kernel: [<94181520>] __qdisc_run+0xd0/0x1d8
    Feb 17 15:04:53 fritz user.err kernel: [<94172708>] dev_queue_xmit+0x158/0x264
    Feb 17 15:04:53 fritz user.err kernel: [<c0379ff0>] ieee80211_hardstart+0xad0/0xffcfdae0 [wlan]
    Feb 17 15:04:53 fritz user.err kernel: [<94181520>] __qdisc_run+0xd0/0x1d8
    Feb 17 15:04:53 fritz user.err kernel: [<94172708>] dev_queue_xmit+0x158/0x264
    Feb 17 15:04:53 fritz user.err kernel: [<941d7e04>] br_dev_queue_push_xmit+0x94/0xa8
    Feb 17 15:04:53 fritz user.err kernel: [<941d7e84>] br_forward_finish+0x6c/0x80
    Feb 17 15:04:53 fritz user.err kernel: [<941d7fa8>] __br_forward+0x8c/0x98
    Feb 17 15:04:53 fritz user.err kernel: [<941d8e04>] br_handle_frame_finish+0xbc/0x158
    Feb 17 15:04:53 fritz user.err kernel: [<941d90f0>] br_handle_frame+0x208/0x238
    Feb 17 15:04:53 fritz user.err kernel: [<94172d4c>] netif_receive_skb+0x26c/0x398
    Feb 17 15:04:53 fritz user.err kernel: [<94172f24>] process_backlog+0xac/0x198
    Feb 17 15:04:53 fritz user.err kernel: [<941730a4>] net_rx_action+0x94/0x150
    Feb 17 15:04:53 fritz user.err kernel: [<9402e1dc>] __do_softirq+0x60/0xcc
    Feb 17 15:04:53 fritz user.err kernel: [<9402e290>] do_softirq+0x48/0x68
    Feb 17 15:04:53 fritz user.err kernel: [<941729a8>] netif_rx_ni+0x30/0x44
    Feb 17 15:04:53 fritz user.err kernel: [<9414c378>] tun_chr_aio_write+0x228/0x280
    Feb 17 15:04:53 fritz user.err kernel: [<9406b5c4>] do_sync_write+0xc4/0x128
    Feb 17 15:04:53 fritz user.err kernel: [<9406b6e0>] vfs_write+0xb8/0x190
    Feb 17 15:04:53 fritz user.err kernel: [<9406b8a4>] sys_write+0x54/0x98
    Feb 17 15:04:53 fritz user.err kernel: [<94010300>] stack_done+0x20/0x3c
    Feb 17 15:04:53 fritz user.err kernel: 
    
    Die Box lässt sich zunächst nichts weiter anmerken. Der Client ist normal verbunden und kann auch Traffic produzieren (Wuala, RDP, FTP, SSH etc).

    Wenn ich allerdings versuche, aus dem Fritzbox-LAN den VPN-Clienten zB mit Remote Desktop zu erreichen, laufe ich in 3 von vier Fällen in einen Timeout. Im letzten Fall rebootet die Box hart.

    Dieses Verhalten beobachte ich seit freetz-2990.

    Hat da jemand ne Erklärung bzw nen Lösungsvorschlag?
     
  2. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Hat das wirklich was mit Freetz zu tun? Sieht für mich eher so aus, als ob AVM was geändert hätte?
    Wie ist denn dein openvpn gelinkt? Mal statisch probiert?

    MfG Oliver
     
  3. scuba

    scuba Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    24
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #3 scuba, 17 Feb. 2009
    Zuletzt bearbeitet: 17 Feb. 2009
    Ich habe es eben noch einmal verifiziert.
    Es macht keinen Unterschied, ob die ssl-libaries statisch oder dynamisch gelinkt sind im OpenVPN-Package. Es kommt immer wieder reproduzierbar zu oben beschriebenem Phänomen.
     
  4. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Kannst du mal mit einer anderen Firmware testen? In Freetz kannst du die Erweiterten DSL Einstellungen ja auch in die Release Firmware reinpatchen.

    MfG Oliver
     
  5. mehle

    mehle Mitglied

    Registriert seit:
    26 Jan. 2009
    Beiträge:
    273
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ich kann dies Problem bestätigen. Mit openvpn in bridge mode musste ich auch schon meine 7270 mehrfach rebooten, da verschiedene Dienste nacheinander den Geist aufgeben nach einer openvpn-Verbindung. Ich habe aber noch nicht die dmesg-Ausgabe mir angesehen.

    Ciao
    Stephan
     
  6. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die Library-Problematik sollte sich nicht auf Funktionen im Kernel auswirken.

    Weiß jemand, was es mit dieser Datei /home/hjortmann/HR08/RELEASE_WLAN_TOOLS_ur8_build/driver/core/net80211/ieee80211_output.c auf sich hat? Ich vermute mal, hjortmann ist jemand von AVM und diese Meldung kommt aus einem Modul, zu den es keine Quellen gibt. Oder verwendest Du kein "Replace Kernel"? In diesem Fall versuche es mal mit "Replace Kernel".

    Kann es sein, daß wieder die richtige Kernel-Config für die aktuellen Quellen fehlet und das nicht zusammen paßt?
     
  7. scuba

    scuba Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    24
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    In der freetz-Konfiguration ist für die Firmware DSL 54.04.99-13225 die Option 'Replace Kernel' nicht wählbar. Ich vermute also, es wird der AVM-Kernel verwendet ...

    Vielen Dank schonmal für die Reaktionen!

    Ich werde mal ein freetz mit der aktuellen stable 54.04.67 bauen, ohne Veränderung des Restes. Mal sehen was dabei herauskommt.
     
  8. Matthy

    Matthy Mitglied

    Registriert seit:
    23 Feb. 2005
    Beiträge:
    262
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Das Problem kenne ich seit der 54.04.67. Bei mir führten oft schon ein paar Pings über den Openvpn-Tunnel zu einem Reboot der Box. In der 59er Firmware war das noch nicht. Interessanterweise tritt es nur auf, wenn ich per WLAN an der Fritzbox angedockt bin. Per LAN geht's ohne Probleme. Openvpn im TUN-Modus macht ebenfalls keine Probleme. Weder mit WLAN noch über LAN.
     
  9. Pace

    Pace Neuer User

    Registriert seit:
    29 Sep. 2005
    Beiträge:
    28
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #9 Pace, 18 Feb. 2009
    Zuletzt bearbeitet: 18 Feb. 2009
    Ich habe so wie es scheint mit dem gleichen Problem zu kämpfen:

    FB-7270, 54.04.67 mit freetz-1.0.2-3083 mit openvpn (statically linked, sonst gehts gar nicht wegen libcrypto.so).

    Das war schonmal ein rumprobieren bis ich überhaupt mal ein funktionierendes freetz auf die Box bekommen habe.
    Und nun habe ich das Problem, dass sobald ich erfolgreich eine vpn-Verbindung aufbaue, die Fritzbox noch ca 10s erreichbar ist bevor sie abstürzt und neustartet.
    Die Ping-Antworten der box sind in dieser Zeit sehr hoch (80-500).
    Über dmesg konnte ich ähnliche Ausgaben wie oben beobachten.

    Ok, ich baue testweise die VPN-Verbindung direkt aus dem LAN der FB auf, wobei ich aber ihre externe IP anspreche (port-forwarding funktioniert).
    Sollte doch eigentlich kein Problem sein...

    Gibt es hierfür irgendwelche Workarounds?
    Hat jemand openvpn auf ner 7270 mit der 67er firmware erfolgreich am laufen ?

    Nachtrag:
    Bei mir spielt es keine Rolle ob ich per WLAN verbunden bin oder nicht.
    Ich benutze Zertifikate.
    Habe es mit und ohne LZO und mit AES-256 sowie Blowfish (natürlich beidseitg) getestet.

    2. Nachtrag:
    Am WLAN der box scheint es dennoch zu liegen. Wenn ich das deaktiviere läuft openvpn problemlos.
    Habe nochmal nachgeschaut: Der Fehler im log ist exakt der gleiche wie bei scuba.

    Grüße
    Patrick
     
  10. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Bei mir läuft openvpn ohne Probleme mehrere stunden auf der 7270!
     
  11. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    @matze1985: Was ist mit WLAN? An oder aus?

    MfG Oliver
     
  12. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    An, sonst würde ich nicht ins Netz kommen :)
    FW ist 54.04.67freetz-devel-3002M, mit openvpn dynamisch gelinked.
    Zugriff von außen, aktuell seit 2,5h aufrecht, mit Datenfluss.
     
  13. Pace

    Pace Neuer User

    Registriert seit:
    29 Sep. 2005
    Beiträge:
    28
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hmm, interessant. Und wie hast du das geschafft dass das mit der libcrypto.so funktioniert? Hast du die libavmhmac ersetzt ? Bei mir hat das nichts gebracht...

    Falls du mal ein wenig Zeit übrig hast, würde es mich interessieren ob die getagte 1.0.2er Version 3083 bei dir dann auch geht?
    Oder könntest du vllt deine config posten?

    Viele Grüße,
    Patrick
     
  14. Matthy

    Matthy Mitglied

    Registriert seit:
    23 Feb. 2005
    Beiträge:
    262
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    TAP- oder TUN-Modus? Also Bridge oder Tunnel?
     
  15. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    @Pace: die config wird dir nicht viel bringen, da ich mit der Weile jede Menge im Image habe. Ja damit die libcrypto ohne Probleme mit AVM zusammen arbeitet, habe ich die libavmhmac ersetzt, dass geht bei mir seit Jahren ohne Probleme.
    Zeit ist im Moment aber schlecht, da ich nicht zu Hause und deswegen aktuell nix ändern möchte, sonst bin ich nachher ausgesprerrt. Außerdem würde ich doch gerne beim trunk bleiben :)

    @Matthy: Die Konfig läuft im TAP-Modus, aber ich habe die Netzwerkinterfaces zum Heimnetz nicht überbrück, es ist also immernoch ein eingenes Netz, welches ich in mein Heimnetz route.
     
  16. mr-migagi

    mr-migagi Neuer User

    Registriert seit:
    11 Juli 2007
    Beiträge:
    4
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Servus,

    ich habe nach einem Update auch Probleme mit OpenVPN im Bridge-Modus. habe statisch und dynamisch gelinkte libs getestet. Leider bekomme ich im Debug-Modus keine hinweise auf Probleme. Fehlermeldungen gibt es keine - die Verbindung kommt einfach nicht zustande (Konfiguration ist getestet und definitiv ok).

    Gruß
     
  17. Pace

    Pace Neuer User

    Registriert seit:
    29 Sep. 2005
    Beiträge:
    28
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #17 Pace, 19 Feb. 2009
    Zuletzt bearbeitet: 19 Feb. 2009
    Ich habe nun einmal den aktuellen trunk (freetz-devel-3086) compiliert und getestet.
    Genau das gleiche Problem:

    Wenn ich das WLAN der Fritzbox deaktiviere klappt alles wunderbar.
    Ist es aktiv, tritt der o.g. Fehler auf.

    Sehr ärgerlich, hat jemand eine Idee für eine Lösung ?

    Viele Grüße,
    Patrick
     
  18. scuba

    scuba Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    24
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Bei mir besteht das Problem ebenfalls noch.

    Ich habe jetzt die Labor-AiO, Labor-DSL und die Stable 04.67 mit dem freetz-trunk 3083 durch.

    Es ist in der Tat so, dass es bei abgeschaltetem WLAN keine Fehlermeldungen gibt. Sobald das WLAN läuft, kommt es zu den Kernel Bugs wie in #1 beschrieben. Es ist egal, ob SSL in OpenVPN statisch oder dynamisch gelinkt ist.

    Es scheint also wirklich an den Kernel-WLAN-Treibern zu liegen oder?

    Edit: OpenVPN läuft dabei immer im BridgeModus (TAP)
     
  19. Pace

    Pace Neuer User

    Registriert seit:
    29 Sep. 2005
    Beiträge:
    28
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich hatte mal openvpn von hand als binary gestartet, mit der originalen FW 54.04.67 ohne freetz.
    Da ging es wenn ich mich recht erinnere auch mit eingeschaltetem WLAN. Gut möglich dass freetz an dem Problem nicht ganz unschuldig ist...

    Könnte ev. das Ersetzen des Kernels abhilfe schaffen?
    Oder gibts damit irgendwelche anderen Probleme?

    Du sagst du beobachtest das Problem seit freetz 2990 ?
    Vllt sollte man mal schauen was davor alles für Änderungen gemacht wurden....
     
  20. scuba

    scuba Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    24
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Naja, die Beobachtung seit 2990 liegt daran, dass ich davor noch kein OpenVPN eingesetzt habe ;-) Also ob der Fehler davor existiert hat oder nicht ist in dieser Aussage nicht enthalten.