Free en fibre optique sans Freebox et avec IPv6
par , le samedi 3 mai 2014 à 23:41

Catégorie : Général
Mots clés :

Je viens de basculer mon accès Free de l'ADSL à la fibre optique sans utilisation de la FreeBox et avec IPv6.


Installation physique

Suite au passage d'un technicien Free, venant installer un autre abonné Free, j'ai appris que la fibre optique de Free est disponible dans mon immeuble.
J'ai donc demandé la bascule de mon accès ADSL FreeBox v5 Crytal vers la fibre optique toujours chez Free.

Environ une dizaine de jours plus tard et après une prise de rendez-vous téléphonique avec l'équipe technique, la fibre a été proprement et rapidement installée dans ma cage d'escalier jusqu'à mon logement. Le raccord sur boîtier fibre mutualisé dans la cage d'escalier et la prise fibre dans mon logement ressemblent à ceci :

(bon, il s'agit d'un vieil immeuble et c'est Neuf Telecom qui a installé le boîtier dans la cage d'escalier)

Moins de 5 jours après, et de manière automatique, j'ai reçu une nouvelle FreeBox v5 Crystal avec le Kit Optique :

Ce qui est intéressant ici c'est que la FreeBox v5 n'a pas de port fibre, contrairement à la FreeBox v6 Révolution, et du coup nous avons droit à un adaptateur Fibre_optique<->Ethernet (à brancher sur le port Ethernet TV de la FreeBox et donc ne permet plus d'y brancher directement le dit boîtier TV).

Grâce à cet adaptateur on peut accéder directement au réseau Free par la fibre sans la FreeBox et donc avec le débit maximum permis par Free (1Gb/s en download et 200Mb/s en upload).

Accès internet sans FreeBox

Les informations nécessaires ont été fournies par Pilou42. Il faut brancher le câble Ethernet sur une carte réseau 1Gb/s sur votre serveur/routeur Linux, puis configurer le VLAN 836 pour l'accès à Internet. Dans le cas de GNU/Linux-Debian, cela donne pour le fichier /etc/network/interfaces :

auto eth0.836
iface eth0.836 inet dhcp

ou en IP statique :

iface eth0.836 inet static
       address W.X.Y.Z
       netmask 255.255.255.0
       gateway` `X.Y.Z``.254
       dns-nameservers 212.27.40.240 212.27.40.241
       post-up nohup ping -i 20 www.free.fr > /dev/null 2>&1 &

où W.X.Y.Z est l'adresse IP attribuée par Free (voir la console web Free qui donne cette IP), celle-ci étant différente de l'ADSL (de quoi se prendre la tête sur vos pointages DNS et autres accès publics). En général l'adresse de la passerelle par défaut se termine par .254, mais c'est à vérifier (en DHCP par exemple). Le script post-up permet de maintenir la connexion ouverte.

Avant de faire un ifup eth0, il faut installer le package vlan.

Contrairement à l'article de Pilou42, je n'ai pas réinstallé la FreeBox derrière mon serveur/routeur Linux. Pour le téléphone fixe, j'ai installé un boitier ATA486 GrandStream qui me permet de téléphoner à travers la passerelle SIP.

IPv6 sans FreeBox

Free est le premier et le plus grand opérateur IPv6 grand publique. Il fourni à chaque abonné un réseau IPv6 en /64 (voir /60). Il était déjà possible d'utiliser le réseau IPv6 avec une FeeBox en mode bridge, mais ici c'est encore plus simple puisque le serveur/routeur Linux va servir de sortie au tunnel 6to4 (ou 6rd) et donc le réseau IPv6 sera directement monter sous Linux.

Grace à la documentation fournie par JinKazama il est assez facile de monter le tunnel 6rd dans Debian dans /etc/network/interfaces :

auto sit1  
iface sit1 inet6 v4tunnel  
        address wwww:xxxx:yyyy:zzzz::1  
        netmask 128  
        endpoint any  
        local W.X.Y.Z  
        gateway ::192.88.99.101  
        mtu 1480  
        pre-up modprobe ipv6  
        post-up echo 1 > /proc/sys/net/ipv6/conf/all/forwarding  
        post-up nohup ping6 -i 20 www.free.fr > /dev/null 2>&1 &  

wwww:xxxx:yyyy:zzzz est le prefix attribué par Free (voir la console web Free qui donne ce prefix), wwww:xxxx:yyyy:zzzz::1 est l'IP de votre serveur/routeur, c'est aussi la passerelle par défaut en IPv6 pour vos PC; W.X.Y.Z est l'IPv4 attribuée par Free (la même que dans le chapitre précédent).

Pour les PC à l'intérieur du réseau il faut annoncer le prefix IPv6. L’auto-configuration sans état fait le reste. Il faut donc installer le service radvd et remplir le fichier /etc/radvd.conf :

interface eth1  
{  
   AdvSendAdvert on;  
   prefix` `wwww:xxxx:yyyy:zzzz``::/64  
   {  
      AdvOnLink on;  
   };  
};    

Routage et firewall

Pour permettre l'accès à internet en IPv4 depuis le réseau privé il faut activer le routage et configurer un firewall avec translation d'adresse (source NAT). J'ai opté pour le package shorewall dont voici les fichiers de configuration :

et modifier les réglages du firewall :

/etc/shorewall/interfaces :

net   eth0.836   detect     dhcp,tcpflags,routefilter,nosmurfs,logmartians  
loc   eth1       detect     tcpflags,nosmurfs

/etc/shorewall/zones :

fw    firewall  
net   ipv4  
loc   ipv4  

/etc/shorewall/masq :

eth0.836  eth1

/etc/shorewall/policy :

loc   all   ACCEPT  
$FW   all   ACCEPT  
net   all   DROP          
all   all   REJECT          

pour autoriser le routage, ne pas oublier d'ajouter la ligne suivante dans dans /etc/sysctl.conf :

net.ipv4.ip_forward=1

Dans le cas d'IPv6, il faut aussi activer le routage et configurer un firewall mais sans translation d'adresse cette fois-ci car les adresses IPv6 fournies par Free sont toutes publiques. C'est l'un des grands avantages du passage à IPv6; mais en revanche il faut obligatoirement un firewall puisque le NAT n'existe plus et n'offre donc plus sa 'protection'. J'ai opté pour le package shorewall6 qui se configure indépendamment de shorewall :

/etc/shorewall6/interfaces :

net   sit1    detect       tcpflags  
loc   eth1    detect       tcpflags

/etc/shorewall6/zones :

fw    firewall  
net   ipv6  
loc   ipv6

/etc/shorewall6/policy :

loc   all   ACCEPT      
$FW   all   ACCEPT  
net   all   DROP          
all   all   REJECT         

dans /etc/sysctl.conf il faut activer/ajouter les lignes suivantes :

net.ipv6.conf.all.forwarding=1  
net.ipv6.conf.default.forwarding=1

Tests

Il ne reste plus qu'à tester tout ça.

Pour IPv4 il suffit d'accéder à différents sites.

Pour IPv6 il y a le site de validation du IPv6 Day, ce qui doit donner quelque chose comme :

sur le server/routeur Linux :

et depuis un PC dans le LAN privé, derrière le routeur Linux :

Concernant IPv6 il est conseillé de vérifier si les PC du LAN privé sont bien protégés. Les ports des clients ne doivent pas être accessibles.

Il est aussi possible de faire un test combiné IPv4 & IPv6.

Configuration DNS

Petit additif; pour profiter de nos nouvelles IPs il faut bien sûr ajouter quelques entrées DNS en IPv6. Exemple pour un serveur Web sur le serveur Linux :

www   IN   AAAA  2a01:e34:ec1c:2fd0::1

A bientôt

Antoine

Ecrire à l'auteur