[Problem] sporadisches DNS-Problem (ggf. nur bei WLAN oder Android-Clients ab 4.4.4 od. 5.0.0)

m.kress

Neuer User
Mitglied seit
30 Aug 2006
Beiträge
167
Punkte für Reaktionen
5
Punkte
18
Hallo,

ich habe heute einen Call bei AVM bezügl. des o.g. Problems aufgemacht. Aufgrund meiner eher schlechteren Erfahrungen des AVM-Supports, hoffe ich evtl. auf Hilfe hier im Forum. Ggf. hat ja der eine oder andere das gleiche Problem. Ich konnte jedoch noch nicht herausfinden, wann und bei welchen bestimmten Clients (nur über WLAN oder nur bei Android-Clients ab 4.4.4 od. 5.0.0) das Problem auftritt. Das es sehr wahrscheinlich ein Problem der Box ist, kann ich aufgrund des mitgeschnittenen Datenpakten bereits jetzt sagen.

Ganz kurz beschrieben: DNS Anfragen gehen vom Client zur Box und werden von dort an den Provider-DNS gesendet. Die Antwort des Provider-DNS kommt in der Box an, wird jedoch nicht an den Client weitergereicht. Weiterhin verwundert es mich, dass eine DNS-Query des Clients per IPv6 stattfindet, die Box jedoch nur den IPv4-DNS-Servers der Providers befragt.


Hier meine ausführliche Beschreibung, welche an AVM ging:

Problem:
Webseiten (oder andere Dienste) werden zum Teil nur verzögert, in manchen Fällen gar nicht aufgebaut/angezeigt.

Randbedingungen:
Alle Clients (Android, Windows, Linux) nutzen IPv4 und IPv6. Verwendet wird Dual-Stack des Providers Telekom (Annex-J, Full-IP) und dessen zugewiesenen DNS-Server. Die Android-Clients werden mit DHCP konfiguriert und sind per WLAN verbunden (2,4 GHz). Das Problem trat auch unter 6.20 auf. Unter dieser Version wurde die komplette Fritzbox-Konfiguration manuell neu eingegeben inkl. vorherigem Recover-Flash.

Ursache:
DNS Antwort des Provider-DNS-Server wird von der Fritzbox nicht immer an den Client weitergeleitet.

Betroffene Clients:
Betrifft anscheinend nur WLAN-Geräte (beobachtet mit Clients vom Typ Google-Nexus, Nexus 4 und Nexus 9 unter Android 5.0.0 und 5.0.1, ggf. auch schon unter 4.4.4). Bisher wurde das Problem nicht unter Windows 8.1 oder Linux Debian Wheezy/Jessi (per LAN angebunden) festgestellt.

Analyseverfahren:
Da der WLAN-Durchsatz im lokalen Netz keine Auffälligkeiten zeigt, musste das Problem an anderer Stelle liegen. Ich habe auf den betroffenen Clients deshalb ein DNS-Tool-App installiert. Mit dieser lassen sich manuell DNS-Abfragen (für unterschiedliche Record-Typen wie z.B. A, AAAA, CNAME usw.) durchführen. Diese zeigt immer wieder sporadische Timeouts.
Ich habe daraufhin die Datenpakete auf der Fritzbox (mittels capture.lua) für die Schnittstelle 0 ('internet') und AP (2.4 GHz, ath0) - Schnittstelle 0 über ein Windows-LAN-Client mitgeschnitten.

In der Analyse mittels Wireshark ist die DNS-Query des Clients zur Fritzbox, die weitergeleitete DNS-Query der Fritzbox zum Provider-DNS auch die Anwort des Provider-DNS zurück zur Fritzbox zu sehen. Jedoch unterbleibt die Weitergabe der Antwort von der Fritzbox an den (WLAN-)Client. Hier ein Auschnitt aus der DNS-Query für den A-Record von www.hurz.de:

2906 2014-12-19 22:16:33.360874 2003:51:ac18:bb00:a0ab:bc75:ea5:f7ac fd00::a96:d7ff:fe50:8a98 DNS 111 Standard query 0x74da A www.hurz.de
119 2014-12-19 22:16:33.361545 87.185.226.131 217.237.150.51 DNS 79 Standard query 0x5e99 A www.hurz.de
120 2014-12-19 22:16:33.407236 217.237.150.51 87.185.226.131 DNS 95 Standard query response 0x5e99 A 185.53.178.17

So würde eine korrekte Vollständige Antwort aussehen:
834 2014-12-20 17:29:08.406677 2003:51:ac54:700:f8d9:b19e:254c:c64 fd00::a96:d7ff:fe50:8a98 DNS 111 Standard query 0x83c3 A www.hurz.de
318 2014-12-20 17:29:08.407273 93.212.100.150 217.237.150.51 DNS 79 Standard query 0xe89c A www.hurz.de
319 2014-12-20 17:29:08.461954 217.237.150.51 93.212.100.150 DNS 95 Standard query response 0xe89c A 185.53.178.17
836 2014-12-20 17:29:08.462893 fd00::a96:d7ff:fe50:8a98 2003:51:ac54:700:f8d9:b19e:254c:c64 DNS 127 Standard query response 0x83c3 A 185.53.178.17

Der letzte Schritt - die Weitergabe zum Client - fehlt. Im kompletten Mitschnitt sind auch die weiteren Abfragen des AAAA und CNAME-Records zu sehen (diese werden mittels der Andriod-APP sequenziell durchgeführt). Für mich ist jedoch sehr verwunderlich, warum wird eine DNS-Abfrage, welche vom Client per IPv6 gestellt wird, zum Provider-DNS per IPv4 weitergeleitet, obwohl ein IPv6-Provider-DNS der Fritzbox zugewiesen wurde? Ist hier ggf. das Problem zu suchen?

Gruß
Markus

Edit:
- Pakete mit Echtzeit-Timestamps
- Beispiel für vollständige (korrekte) Antwort
Hier ist dann auch zu sehen das die DNS-Abfrage auch dann funktioniert, wenn diese per IPv4 an den Provider weitergeben wurde und die Antwort dann wieder per IPv6 an den Client weitergereicht wurde.
 
Zuletzt bearbeitet:
...

2906 167.339490 2003:51:ac18:bb00:a0ab:bc75:ea5:f7ac fd00::a96:d7ff:fe50:8a98 DNS 111 Standard query 0x74da A www.hurz.de
119 25.377756 87.185.226.131 217.237.150.51 DNS 79 Standard query 0x5e99 A www.hurz.de
120 25.423447 217.237.150.51 87.185.226.131 DNS 95 Standard query response 0x5e99 A 185.53.178.17
...

Was mich wundert ist, warum der Client mit dem globalem Präfix die Abfrage macht anstelle seiner ULA-Adresse.
fd00::/64 als ULA-Präfix ist auch keine so gute Idee. Solange kein Subnetting im Spiel ist würde ich ULA komplett deaktivieren.

jo
 
Hallo Rollo,

also in der FB die empfohlene Einstellung von
"Unique Local Addresses (ULA) zuweisen, solange keine IPv6-Internetverbindung besteht (empfohlen)"
nach
"keine Unique Local Addresses (ULA) zuweisen (nicht empfohlen)"
ändern?
Am Android-Gerät kann ich nichts dazu einstellen.

Aber sollte es nicht mit allen IPv6 Adressen funktionieren (es sei denn, der Kernel oder Router-Daemon hat ein Bug)?

Subnetting nutze ich nicht (außer Gastzugang).

Edit:
Ein Linux-Client (Debian-Jessie) und Windows 8.1 verwendeen auch den globalen Präfix. Getestet mit IPv6 Ping:
Linux:
158 2014-12-20 18:06:09.246572 2003:51:ac54:700:230:48ff:fedd:d172 2a02:2e0:3fe:1001:7777:772e:2:85 ICMPv6 118 Echo (ping) request id=0x22f0, seq=5, hop limit=255 (reply in 160)
Windows 8.1:
135 2014-12-20 18:10:19.013060 2003:51:ac54:700:45f2:1f31:374c:61f3 2a02:2e0:3fe:1001:7777:772e:2:85 ICMPv6 94 Echo (ping) request id=0x0001, seq=17, hop limit=128 (reply in 136)

Edit:
Ok. Beim Ping nach außen muss er ja den globalen Präfix nehmen. Beim DNS wäre die ULA ausreichend, wenn der DNS-Server der FB befragt werden sollte. Aber es sollte trotzdem egal sein, welche der IPv6 Adressen genutzt wird.
 
Zuletzt bearbeitet:
Es funktioniert auch intern mit ULA und Global, allerdings sollte intern nur die Link-Lokale Adresse benutzt werden. Die Fritz!Box propagiert allerdings die ULA für den DNS im Gegensatz zum Gateway, da ist es die Link-Lokale.
Warum AVM ULA empfiehlt habe ich nie verstanden, das macht nur bei mehreren Netzen Sinn. Bei mir habe ich es nur zu Test-/Schulungszwecken aktiviert.
Mein Win7 PC übernimmt übrigens den propagierten IPv6-DNS-Server nicht, ich werde mir das auf anderen Clients nochmal ansehen.

jo
 
Letztendlich funktioniert es i.d.R. auch mit der ULA. Nur manchmals, aktuell nicht deterministisch reproduzierbar, wird die DNS-Antwort nicht weitergeleitet. Für mich ist die FB schuld, da auch mit ULA i.d.R. alles OK ist.
 
Mal sehen, was AVM dazu meint. Mein Win8.1 nimmt den DNS übrigens auch nicht aus den Router Advertisements. Ist mir bisher nie aufgefallen, da DNS ja über IPv4 funktioniert. Da wäre ich nur bei einer IPv6-only Umgebung drüber gestolpert.

jo
 
Gibt's was neues zum Thema? AVM hat sich bisher nicht gemeldet. Das Problem tritt auch auf, wenn die Verbindung per WLAN über Powerline 546E läuft.
 
Ich nutze mit meiner 7490 und os6.23 auch IPv6 mit der Telekom und habe mit der Firmware auch nur Wlanproblem mit Win 8.1 Schleppi (IPv6) sowie Samsung S4 Handy die sich nur ein und ausbuchen.
 
Hallo page,

das o.g. Problem hat nichts mit dem Aus- und Einbuchen im WLAN zu tun.
 
Also Nexus 5 mit Android 5.0.1 blanko installation.
Sporadische Probleme ( 2 mal pro Woche ) Wlan und Mobilfunk mit Ausrufezeichen. 7490 + DVB-C Repeater + 300e Repeater 5GHz Netz. ( neueste Firmwares )
1 Mal beobachtet KD-Router D-Link oder so das gleiche.
 
Was bitte hat das mit der DNS-Auflösung zu tun? :noidea:
Ach ja: es gibt keine "neueste Firmware"! Die haben immer Nummern und manchmal sogar den Zusatz "Labor" oder "Beta".

Joe
 
Hallo,

es scheint so, als würde das Problem auf IPv6 zurückzuführen sein. Nach Deaktivierung des Dual-Stacks bzw. IPv6 in der 7490 verschwindet das Problem (3 Tage ohne irgendwelche Probleme). Da nun alles sehr flott und irgendwelche Lags läuft, vermute ich mal, dass es neben DNS evtl. auch andere Auswirkungen haben könnte.

Wie Joe_57 bereits gesagt hat, dieses Thema hat rein gar nichts mit irgend welchen WLAN-Abbrüchen oder Reconnects zu tun. Das WLAN ist bei mir zu jeder Zeit, auch während der Probleme, stabil.
 
  • Like
Reaktionen: gixgax
@m.kress: Meine Hochachtung für die gründliche und fundierte Recherche des Problems! Ich habe das Verhalten bei mir auch beobachten können (3xNexus 4, 1xNexus 5, jeweils mit Android 5.0.1, Telekom-Anschluss mit IPv6 DualStack) und mich gewundert...
 

Muss ein anderes Problem sein. Ping6 geht auch bei ausgeschaltetem Nexus9. Darüberhinaus gehen ja DNS Responses verloren.

An:
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=1 ttl=255 time=42.0 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=2 ttl=255 time=7.50 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=3 ttl=255 time=83.0 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=4 ttl=255 time=105 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=5 ttl=255 time=25.8 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=6 ttl=255 time=48.4 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=7 ttl=255 time=70.9 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=8 ttl=255 time=93.4 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=9 ttl=255 time=116 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=10 ttl=255 time=53.5 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=11 ttl=255 time=58.5 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=12 ttl=255 time=81.2 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=13 ttl=255 time=103 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=14 ttl=255 time=12.4 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=15 ttl=255 time=46.8 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=16 ttl=255 time=68.7 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=17 ttl=255 time=92.3 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=18 ttl=255 time=113 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=19 ttl=255 time=33.9 ms
Standby:
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=20 ttl=255 time=279 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=21 ttl=255 time=79.7 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=22 ttl=255 time=307 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=23 ttl=255 time=285 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=24 ttl=255 time=207 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=25 ttl=255 time=331 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=26 ttl=255 time=253 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=27 ttl=255 time=171 ms
An:
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=28 ttl=255 time=42.5 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=29 ttl=255 time=54.6 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=30 ttl=255 time=77.1 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=31 ttl=255 time=4.77 ms
Standby:
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=32 ttl=255 time=182 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=33 ttl=255 time=104 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=34 ttl=255 time=338 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=35 ttl=255 time=251 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=36 ttl=255 time=169 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=37 ttl=255 time=65.4 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=38 ttl=255 time=215 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=39 ttl=255 time=137 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=40 ttl=255 time=59.7 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=41 ttl=255 time=284 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=42 ttl=255 time=204 ms
...Minuten im Standby vergehen...
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=1 ttl=255 time=294 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=2 ttl=255 time=213 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=3 ttl=255 time=135 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=4 ttl=255 time=259 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=5 ttl=255 time=179 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=6 ttl=255 time=305 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=7 ttl=255 time=122 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=8 ttl=255 time=352 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=9 ttl=255 time=271 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=10 ttl=255 time=88.4 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=11 ttl=255 time=336 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=12 ttl=255 time=136 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=13 ttl=255 time=362 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=14 ttl=255 time=282 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=15 ttl=255 time=202 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=16 ttl=255 time=122 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=17 ttl=255 time=351 ms
64 bytes from 4006:57c2:c0a8:c91b:522e:5cff:fee5:bad3: icmp_seq=18 ttl=255 time=271 ms
 
@cvgrone:
Danke. Am besten auch ein Ticket bei AVM aufmachen. Ich befürchte AVM stellt dann eine Labor zur Verfügung, die man ausprobieren soll, aber das Problem aber nicht fixt. Mit aktiviertem IPv6 macht das Nexus jedenfalls keinen Spass.
 
Oh man, Antwort von AVM: Ich soll ein ipconfig /all auf dem Client machen und die LAN-Schnittstelle mitschneiden. Ich habe beim Call ausdrücklich Android-Clients im WLAN bei direkter Verbindung angegeben (ohne Repeater, ohne Powerline-Brücke).

Update: Ich soll nun eine ipconfig-APP installieren und die LAN-Schnittstelle soll mitgeschnitten werden, um zu sehen, ob die Daten aus dem falschen Interface kommen.
 
Zuletzt bearbeitet:
Lese gerade gespannt den Thread hier, habe nämlich ein quasi das gleiche Problem, allerdings nicht nur auf den Androidgeräten, sondern auch auf meinem Windows 7 Client. Ich bin von einer 7390 auf eine 7490 mit 6.23 gewechselt und habe jetzt das Problem, das Webseiten die über IPv6 erreichbar sind optisch einfach nicht antworten oder nur extrem verzögert. Deaktiviere ich IPv6, so dass nur noch IPv4 am Client aktiv ist, ist alles gewohnt schnell und der Fehler ist weg.

Zur Technik, ich verwende einen SixXs-Tunnel und gebe das öffentliche Präfix an die Clients weiter.
 
Hallo,

AVM hat mir folgendes empfohlen:

Können Sie in der Benutzeroberfläche der Fritz!Box unter "Heimnetz->
Netzwerk->IPv6-Adressen (Button)" die Option "Unique Local Addresses (ULA)
immer zuweisen" aktivieren.

Dafür ist allerdings die erweiterte Ansicht nötig.

Hat beim Nexus 9 nicht geholfen. Aber ggf. hilft es bei anderen Endgeräten. Was bei mir hilft ist das WLAN am Nexus kurz abzuschalten und wieder zu aktivieren. Dann klappt es wieder für eine gewisse Zeit.

Gruß
Markus
 
ULA wird nur für internes Routing bei verschiedenen Netzen benötigt. Die Empfehlung von AVM ist wie bereits erwähnt absolut nicht nachvollziehbar. Wenn die Endgeräte nach extern kommunizieren, wird dazu der globale Präfix genutzt, intern der linklokale. Ich vermute die Probleme eher in der WLAN-Anbindung. Immerhin funktioniert bei AVM IPv6 per WLAN im Prinzip, ich kenne auch APs, die das nicht können, obwohl ja eigentlich nur eine Layer2 Verbindung hergestellt wird.

Es kann natürlich auch mal sein, dass die Verbindung über den SixXs-Tunnel langsamer oder gestört ist.

jo
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.