J'ai été client Free Mobile en 2012 mais cela n'a pas duré car au bout de 6 mois la qualité du réseau internet 3G s'est considérablement dégradée : les sites en https, Youtube et Google Play ne marchaient plus du tout. Ce problème est connu depuis toujours et survient lorsque l'abonné accroche une antenne Orange en itinérance, et c'est souvent le cas vu qu'il y a peu d'antennes Free Mobile.
J'ai récemment retenté l'expérience car mademoiselle utux, ma copine, avait besoin d'un forfait pas cher. J'ai sauté sur une vente privée à 3,99€ / mois pour le forfait normalement proposé à 19,99€ et dès réception de la carte SIM nous avons pu l'essayer. Il s'avère qu'en ville (Nantes) ça marche plutôt bien car y a beaucoup d'antennes Free Mobile, par contre en campagne c'est la galère, on passe toujours sur de l'itinérance Orange et donc internet ne fonctionne plus. Sur l'autoroute par exemple il est impossible de lire une vidéo Youtube et difficile de charger une carte sur Google Maps alors que mon téléphone sous Sosh n'a aucun problème (nous l'avons d'ailleurs utilisé comme point d'accès durant le voyage).
Free Mobile en 2016 c'est donc toujours du vent, du bluff renforcé par des publicités et des tarifs agressifs agrémentés de dénigrement de la concurrence. Et ce marketing est visiblement efficace car on trouve beaucoup de gens persuadés que si tu n'as pas 50GB de data dans ton forfait c'est que tu es un pigeon. Je n'utilise jamais plus de 500 Mo par mois même avec de la synchronisation ActiveSync (YunoHost + Z-Push) et la seule fois où j'ai atteint ma limite de consommation (3Go à l'époque, 5Go aujourd'hui) est quand j'ai passé 1 semaine sans connexion à internet fixe.
L'accord d'itinérance Free / Orange n'est pas éternel et le désengagement va d'ailleurs bientôt commencer. Lorsque les vannes seront totalement coupées tous ceux qui n'habitent pas en ville vont se retrouver en zone blanche et cela représente beaucoup de monde.
Tout a commencé avec des problèmes de lenteur sur notre connexion à internet au bureau. Un petit tour dans l'interface d'administration de la Freebox a montré une utilisation importante de la bande passante en upload même la nuit lorsque toutes les stations de travail sont éteintes. Heureusement derrière la Freebox il y a un routeur sous Linux par lequel tout le trafic passe, nous avons donc des outils plus poussés pour analyser ce qui transite.
iptraf a montré que le trafic n'était pas émis depuis une station de travail mais était généré en local (par le routeur lui-même) : était-il compromis ? Présence d'un rootkit ? Une petite vérification des processus avec ps et top semble indiquer que non, rien d'anormal. J'ai également vérifié à coup de md5sum que les binaires bash, ps, w, who, top n'avaient pas été altérés (en comparant avec une version sauvegardée il y a 1 mois).
Donc le routeur génère le trafic mais ne semble pas compromis, d'où vient donc le problème ? Sortons l'artillerie lourde : tcpdump. On sniffe 10secondes de trafic puis on récupère notre fichier pour l'ouvrir dans wireshark, c'est plus simple à lire. L'analyse montre un trafic composé exclusivement de paquets UDP / protocole Portmap. Une petite recherche rapide sur Google "high portmap trafic" me mène vers des articles d'Aout 2015 détaillant une forme de ddos basée sur portmap. C'est un ddos par amplification, c'est à dire que nous recevons des requêtes forgées qui font que nous générons ensuite des attaques vers d'autres serveurs. Or il se trouve que suite à un lourd historique (dette technique) la configuration du pare-feu était incorrecte et le port 111/UDP (portmap) du routeur était accessible depuis internet. La fermeture de ce port a mis fin aux attaques.
tcpdump / wireshark sont les meilleurs amis du sysadmin, et j'ai découvert également iptraf qui permet d'avoir une vue d'ensemble du trafic ce qui permet d'établir un premier diagnostic. Un pare-feu bien configuré est indispensable car même si des services ne sont pas utilisés ou sont censés répondre uniquement en local, des failles sont toujours possibles.
Comme je l'ai dit dans mon article sur la fibre Free, la Freebox n'est vraiment pas terrible, j'ai donc rapidement acheté un routeur pour la remplacer. J'ai pris un Asus RT-AC66U, modèle relativement satisfaisant qui supporte le Wi-Fi 5GHz mais aussi plusieurs firmwares alternatifs (actuellement Merlin).
J'ai beaucoup hésité à écrire cet article sachant qu'il serait indigeste, mais il constitue un bon exercice pour IPv6 et peut aider ceux qui ont leur Freebox en bridge.
Principe
En IPv4 le principe est simple : on configure la Freebox en bridge ce qui permet au routeur de récupérer directement l'IP publique. A lui ensuite de faire le NAT pour donner l'accès à internet aux machines du réseau. Mais en IPv6, comment fait-on ?
Tout d'abord la stack IPv4 ne change pas, on va configurer notre IPv6 à côté sans incidence. On n'utilise pas de "NATv6" mais du bon vieux routage à l'ancienne, avec de la délégation de préfixe, bref un vrai réseau tout propre. En fait, chaque machine du réseau aura une "IPv6 publique" (cette affirmation est un pléonasme). On va avoir besoin de :
- 1 sous-réseau IPv6 en /64 pour la partie WAN, avec 2 adresses (Freebox et Routeur côté WAN)
- 1 sous-réseau IPv6 en /64 pour la partie LAN, avec 1 adresse (Routeur côté LAN)
Voici ce que cela donne avec un schéma et des adresses bidon :
Mise en place
La première chose à faire consiste à se rendre dans l'interface de configuration de la freebox grâce à l'adresse mafreebox.free.fr qui fonctionne même si vous êtes en bridge.
Puis rendez-vous dans : Paramètres de la Freebox, onglet Mode avancé, Configuration IPv6.
- A cocher, bien évidemment.
- Adresse IPv6 de lien local de la Freebox.
- Le premier préfixe qu'on va déléguer au routeur (pour le WAN). Notez qu'il se termine par 5430.
- Mettre l'adresse IPv6 de lien local de l'interface WAN du routeur (à récupérer par exemple avec ip addr ou ifconfig en SSH sur le routeur).
- Le second préfixe qu'on va aussi déléguer au routeur (pour le LAN cette fois). Il se termine par 5431.
- Mettre l'adresse IPv6 de lien local de l'interface WAN du routeur - la même que pour le point 4.
- Encore un préfixe, mais on ne va pas l'utiliser, on a tout ce qu'il nous faut !
Maintenant, on passe à la configuration du routeur. Voici pour l'Asus RT-AC66U :
- Type de connexion, ici c'est du statique.
- Le WAN du routeur (premier préfixe 5430 suivi de ::2).
- 64.
- Le WAN freebox (premier préfixe 5430 suivi de ::1).
- Le LAN du routeur (second préfixe 5431 suivi de ::1).
- 64.
- Pour info.
- Type d'advertisement sur votre LAN. Le stateless laisse les machines s'auto-configurer. Stateful est du DHCPv6. Il vaut mieux sélectionner stateless.
Comment tester
Conclusion
La Freebox n'a pas une seule IPv6, ni même un seul réseau IPv6, elle en a plusieurs. Et dans notre cas elle en délègue deux à notre routeur. Les avantages ? Possibilité de gérer vous-même le pare-feu (la Freebox n'en a pas) et aussi de modifier plusieurs éléments (comme les DNS diffusés).