title: Problème bizarre
date: 2012-01-06
tags: Internet, Linksys, Belkin
authors: alex
url: probleme-bizarre

**Article mis à jour avec la solution.**

Je rencontre un problème bizarre. Un modem routeur ADSL qui plante quand je
tente de regarder une vidéo sur Youtube.

**ATTENTION : article écrit en mode "36-15 MaVie"**

Seb> Alex, tu pourrais passer à la maison ? J'ai des problèmes de connexion internet. Là, j'en suis à 20 coupures en une heure, je dois débrancher et rebrancher le modem pour que la connexion remarche.

Alex> Je t'installe un outil de surveillance, laisse le tourner pendant une semaine et on pourra déterminer s'il s'agit du modem ou de la connexion Orange.

Seb> Ok.

[…]

_Quelques jours plus tard._

Seb> Bizarre, depuis que c'est sous "surveillance", il n'y a pas eu une seule coupure.

Alex> En effet, sur les courbes, ça parait stable. Dans le doute, je configure mon Linksys, je te le prête et je récupère ton Belkin.

[…]

_Installation du Linksys_

Alex> Voilà, c'est branché, configuré et fonctionnel. Laisse le tourner et préviens moi si ça déconnecte.

[…]

_Installation du Belkin chez moi_

Alex> Bon, pas moyen de configurer le modem en ADSL2+, il saute en ADSL… tant pis, je le force en ADSL2, le débit sera moins élevé mais ça suffira pour tester.

Alex> Seb, aucun problème avec le modem chez moi. De ton côté, ça fonctionne toujours ?

Seb> Aucun problème, la connexion est parfaitement stable.

[…]

_Le lendemain_

Nina> Alex, tu devrais regarder cette vidéo sur youtube.

_Clic sur le lien_

_Perte de la liaison réseau_

_ping 8.8.8.8_

Timeout

_ping 192.168.2.254_

Timeout

Alex> Bizarre, ça. Bon, je débranche et je rebranche le modem, mais je pense avoir une idée…

_Débranchement et rebranchement du modem._

Alex> Fermons toutes les applications, pidgin, adium, irc, puis testons avec une autre vidéo…

_Nouveau crash du modem._

_Débranchement et rebranchement du modem._

Alex> Bon, l'affichage d'une vidéo Youtube semble faire planter le modem…

_Recherche google_

Alex> Super, je ne suis pas le seul à rencontrer ce problème. Plus qu'à faire les manips de base, comme réinitialiser le modem (configuration usine), reflasher son firmware, appuyer sur reset, …

[…]

_Quelques jours plus tard…_

Alex> Bon, aucune manip ne fonctionne, ça plante toujours. Il reste la solution du démontage (de toute façon, ça fait longtemps qu'il n'est plus sous garantie). Mais avant, autant demander l'avis de son propriétaire.

Alex> Seb, je pense avoir trouvé le problème de plantage… Tu ne regardais pas des vidéos quand le modem plantait ?

Seb> Probablement, pourquoi ?

Alex> Je viens de faire des tests, et le simple fait de regarder une vidéo suffit à faire planter le modem. Pas moyen de corriger ce problème. Je peux toujours le démonter, mais sans grand-espoir.

Seb> Forcément… Le plus simple, c'est d'acheter un nouveau modem ? Le réparer ne servirait pas à grand-chose, vu son âge.

Alex> C'est le plus simple…

Alex> En attendant, garde mon modem, je le récupèrerai plus tard.

**Update :** Je viens de passer du temps pour tenter de reproduire ce plantage inexpliqué, surtout que ce n'est pas à chaque fois que ça plante.

Une petite analyse des URL via firebug me donne ça :

   http://ams03s07.ams03s08.ams03s11.ams03s12.ams04s07.ams04s08.ams04s09.ams04s10.ams03s09.ams03s10.ams03s13.ams03s14.ams03s15.ams03s16.ams04s11.ams04s12.o-o.v23.lscache3.c.youtube.com

[![Capture d'écran de youtube](/images/belkin/youtube-t.png)](/images/belkin/youtube.png)

La taille de l'URL est absolument énorme, et dès que Firefox tente d'ouvrir cette url, ça plante. Ni une ni deux, je lance wireshark après avoir débranché et rebranché le modem, et je surveille les trames.

[![Capture d'écran de wireshark](/images/belkin/wireshark-t.png)](/images/belkin/wireshark.png)

Tiens tiens, aucune réponse du dns, et des paquets perdus juste après (tcp retransmission). J'arrête wireshark, je débranche et rebranche le modem, et lance une console.

   alex@Yue ~
   $ ping 8.8.8.8

   Envoi d'une requête 'Ping'  8.8.8.8 avec 32 octets de données :
   Réponse de 8.8.8.8 : octets=32 temps=32 ms TTL=56
   Réponse de 8.8.8.8 : octets=32 temps=32 ms TTL=56

   ^C
   alex@Yue ~
   $ nslookup ams03s07.ams03s08.ams03s11.ams03s12.ams04s07.ams04s08.ams04s09.ams04s10.ams03s09.ams03s10.ams03s13.ams03s14.ams03s15.ams03s16.ams04s11.ams04s12.o-o.v3.lscache7.c.youtube.com
   ;; connection timed out; no servers could be reached


   alex@Yue ~
   $ ping 8.8.8.8

   Envoi d'une requête 'Ping'  8.8.8.8 avec 32 octets de données :

   ^C
   alex@Yue ~
   $

Je pense avoir trouvé le problème. Le modem Belkin intègre un serveur dns, et il semble planter sur un lookup avec une URL très longue.

Pour le confirmer, effectuons un test simple : utilisons les DNS de google (dont tout le monde devrait connaître l'IP, ceux qui ne la connaissent pas le font vraiment exprès, parce que 8.8.8.8, c'est pas difficile à retenir) à la place du DNS du modem.

Sous Windows : Connexion réseau, paramétrage de la carte, IPv4, DNS : 8.8.8.8

Nouveau redémarrage du modem (j'aurais du fermer ma session irc, ça n'a pas arrêté de faire des timeout), nouvelle tentative sur youtube, et là…

# W00T !!!!!!!

[![Capture d'écran de youtube](/images/belkin/youtube2-t.png)](/images/belkin/youtube2.png)

Plus de plantage, la vidéo passe sans problème, l'url à rallonge est toujours là, mais ÇA MARCHE !!!!!

Maintenant, il reste à trouver une solution de contournement avant de restituer le modem à son propriétaire.

Lui demander d'utiliser un dns sur son pc, pourquoi pas, mais il faudra qu'il pense à refaire la manipulation si quelqu'un vient chez lui… et lui demander d'installer un serveur dns (genre, bind ?) serait exagéré.

Belkin ne fournissant pas les sources du firmware pour ce modem (Belkin G Wireless Modem Router, Model F5D7634-4, ver 1000ed), je ne peux malheureusement pas en recompiler un, en tentant de corriger (ou de mettre à jour) le service dns.

En conclusion, le problème n'était pas forcément évident à trouver. Qui aurait pu penser qu'il s'agirait d'un problème de DNS et non d'un problème matériel comme je le supposais.