Si, comme moi, vous disposez d'un Freebox Revolution (v6), vous pouvez connecter votre boîtier ADSL (Freebox Server ou FS) à votre boîtier HD (Freebox Player ou FP) de deux manières : soit avec les FreePlugs basée sur la technologie CPL (Courants Porteurs en Ligne), soit avec un cable Ethernet qui courent à travers le salon, le plus souvent quand les FreePlugs ne fonctionnent pas ou mal ! Nous nous proposons ici de proposer une alternative sans fil basé sur un tunnel wifi entre le FS et le FP
Voici un petit schéma récapitulatif :
Internet <--adsl--> FS <--ether--> PC1 <--wifi--> PC2 <--ether--> FP <--> TV
En guise de PC 1 et 2, nous utilisons des Raspberry Pi 3 sous Raspbian, qui disposent des interfaces eth0 (ethernet) et wlan0 (wifi) Pour commencer, il faut noter que le FP et FS discutent à travers un VLAN avec le tag 100 (interface eth0.100). L'idée de base va donc être de réaliser :
La FS (en mode routeur) dispose d'un serveur DHCP. Le LAN de la Freebox (ether et wifi) est 192.168.0.0/24 avec FS en 192.168.0.254 qui fait office de passerelle vers Internet. Le VLAN 100 est 192.168.27.0/28 avec FS en 192.168.27.14 et FP en 192.168.27.1.
On installe quelques paquets Linux/Debian :
sudo apt-get install openvpn openssl vlan bridge-utils
On génère une clef statique pour le tunnel VPN :
sudo openvpn --genkey --secret openvpn.key
Il faut également stopper le Network Manager :
sudo /etc/init.d/network-manager restart # Debian ... # Raspbian
En tant que root, il faut lancer le script server suivant :
# reseau wifi ad-hoc ifconfig wlan0 down iwconfig wlan0 essid pouet mode ad-hoc channel 1 ifconfig wlan0 192.168.1.1/24 # reseau local ifconfig eth0 up # tunnel VPN openvpn server.conf & sleep 1 # vlan 100 modprobe 8021q vconfig add eth0 100 vconfig add tap0 100 ifconfig eth0.100 up ifconfig tap0.100 up # bridge brctl addbr br0 brctl addif br0 tap0.100 brctl addif br0 eth0.100 ifconfig br0 up
dev tap ifconfig 10.8.0.1 255.255.255.0 secret openvpn.key
En tant que root, il faut lancer le script client suivant :
# reseau wifi ad-hoc ifconfig wlan0 down iwconfig wlan0 essid pouet mode ad-hoc channel 1 ifconfig wlan0 192.168.1.2/24 # reseau local ifconfig eth0 up # tunnel VPN openvpn client.conf & sleep 1 # vlan 100 modprobe 8021q vconfig add eth0 100 vconfig add tap0 100 ifconfig eth0.100 up ifconfig tap0.100 up # bridge brctl addbr br0 brctl addif br0 tap0.100 brctl addif br0 eth0.100 ifconfig br0 up
remote 192.168.1.1 dev tap ifconfig 10.8.0.2 255.255.255.0 secret openvpn.key
rmmod 8021q ifconfig eth0 down ifconfig wlan0 down ifconfig tap0 down ifconfig br0 down brctl delbr br0 pkill -9 openvpn
Bon, ça marche ! Voici une archive avec les scripts et les configs freebox-tunnel.tgz. Mais le débit a l'air juste suffisant pour regarder la TV avec un flux ADSL bas débit. On peut également remplacer la connexion wifi ad-hoc en utilisant simplement l'Access Point du Freebox Server : freebox-tunnel-v2.tgz.
Afin d'améliorer le débit, il faudrait remplacer le tunnel OpenVPN par un tunnel de niveau 2, a priori plus léger et performant. Même si OpenVPN est remarquement simple à configurer, c'est vrai qu'on a pas besoin d'une technologie VPN sécurisé !
Bench à faire…