Bypasser sa Neuf Box
Un article de Neuf Box 4.
Cette procédure s'adresse à ceux qui sont clients Neuf fibre optique (FTTH) et qui souhaiteraient "bypasser" (passer outre) leur Neuf Box pour obtenir un accès plus direct au Net. En d'autres termes, obtenir plus ou moins la même chose que lorsqu'on utilise le mode bridgé avec l'ADSL (sauf que là, on n'a même plus besoin de Neuf Box !).
Cela peut vous intéresser si vous vous trouvez dans un des cas suivants (liste non exhaustive) :
- Vous n'avez qu'un seul ordinateur qui accède à Internet et vous n'utilisez ni la TV ni le téléphone, auquel cas la Neuf Box est un intermédiaire superflu ;
- Vous avez un serveur personnel chez vous que vous aimeriez utiliser comme passerelle en lieu et place de la Neuf box en vue d'obtenir un plein contrôle sur votre réseau et une plus grande souplesse dans la gestion du trafic, et également pour éliminer l'intermédiaire inutile que constitue la Neuf Box.
A noter que du fait de la faible puissance de calcul de la Neuf Box, cette dernière supporte très mal certaines situations "stressantes" qui peuvent arriver sur une connexion fibre optique, par exemple le routage de centaines de flux TCP simultanément, et qui font fondre le débit total. Bypasser la Neuf Box peut constituer une solution à ce genre de problèmes.
Sommaire |
Notes préliminaires
- Ce document présuppose que vous disposez d'un accès fibre via un media converter Fibre-Ethernet (qui est pour le moment relié à la Neuf Box). C'est normalement le cas de tout abonné FTTH, du moins lors de la publication de ce document. Théoriquement, vous pourriez pousser le vice encore plus loin et bypasser le media converter en reliant carrément la fibre elle-même à votre machine avec le matériel approprié, cependant cela est fortement déconseillé car cela implique une intervention sur la partie media converter-fibre, qui n'est pas sous votre responsabilité, et peut donc vous causer du tort pour un intérêt discutable.
- Si l'ordinateur que vous comptez connecter directement à Internet sert de passerelle pour un réseau local (en gros, vous êtes dans le cas n°2), il est tout à fait possible de connecter votre Neuf box sur votre réseau local ; cela vous permettrait, entre autres, de conserver le téléphone. La Neuf Box accède alors à l'extérieur en passant par votre passerelle. Reconfigurer la Neuf Box pour faire fonctionner la VoIP dans cette situation a déjà été réalisé avec succès, mais la procédure n'a pas encore été mise au propre. Concernant la TV, il n'y a aucune information car personne ne semble l'avoir essayé pour le moment. D'autres configurations plus exotiques, comme par exemple utiliser la Neuf Box comme passerelle Wi-Fi/Filaire au niveau du réseau local, sont possibles mais demanderont probablement une lourde reconfiguration du firmware.
- La procédure est conçue pour une machine tournant sous Linux. L'auteur ne sait pas comment modifier les détails des requêtes DHCP sous Windows, vous êtes donc livrés à vous mêmes sur ce système.
- Cette procédure n'a pas été détaillée et testée de manière rigoureuse (plus précisément, l'auteur a la flemme de la refaire entièrement sur sa machine pour vérifier qu'il n'a rien oublié), aussi, elle peut comporter des oublis ou nécéssiter quelques retouches. Des commentaires seraient très appréciés (postez sur le forum) pour compléter, détailler ou corriger le document.
Le principe
La procédure que suit la Neuf Box pour obtenir un accès à Internet en utilisant le profil Médiafibre est d'une simplicité déconcertante : elle ne fait que formuler une requête DHCP. Il suffit que votre machine imite cette requête pour obtenir une IP, la route, et les DNS. Simple, non ? Il y a juste un détail qui complique quelque peu les choses : le DHCP ne vous répondra que si vous prenez soin de forger correctement le champ "Vendor class identifier" de la requête DHCP (qui n'est pas transmis en temps normal).
Le "Vendor class identifier"
Ce champ de la requête DHCP, systématiquement transmis par la Neuf Box, est défini dans le fichier /etc/init.d/rc.wan du firmware de la Neuf Box :
"neufbox_"$productid"_"$main_version"_"$adsl_version
Par exemple :
neufbox_NB4-FXC-r1_NB4-R1.4.50-MAIN_NB4-A2pB022b
On distingue en effet le product ID ("NB4-FXC-r1"), la version du firmware ("NB4-R1.4.50-MAIN") et enfin la version du driver ADSL ("A2pB022b", qui ici ne doit pas servir à grand chose).
En fait, la règle est simple : pour que le DHCP vous réponde, il faut et il suffit que vous transmettiez un "Vendor class identifier" qui commence par la chaîne "neufbox". Par exemple :
neufboxblahblablah
Néanmoins, dans le souci de faire comprendre clairement à "l'autre côté" qu'il a affaire non pas à une Neufbox mais à un truc "fait maison", et ainsi permettre aux techniciens de comprendre ce qui se passe, il est de bon ton de choisir un Vendor class identifier explicite, par exemple :
neufbox-BypassedNeufBox-DirectConnectionToFTTH-votremail@contact.xyz
En pratique
Pour commencer, vous devez connecter le Media Converter à votre machine via le câble Ethernet qui était jusqu'à présent branché au port WAN (ou PC3) de la Neuf Box. Tout le reste se déroule sur la machine ainsi connectée.
La procédure en elle-même est relativement simple, il suffit de configurer le client DHCP. Toutes les commandes décrites doivent être exécutées avec des droits de superutilisateur (root).
Internet
Configurer le client DHCP
Le client DHCP utilisé pour cette procédure est le client "standard" (développé par l'ISC), dont l'utilitaire se nomme dhclient. Il s'agit du client préféré de Debian, dans lequel il est packagé sous le nom dhcp3-client. Il y a de fortes chances pour que votre distribution inclue ce paquetage dans son système de base. Vous pouvez utiliser un client DHCP différent, du moment que celui-ci vous permet de modifier le Vendor class Identifier des requêtes DHCP qu'il envoie.
Pour que le serveur DHCP de Neuf nous réponde, il nous faut modifier le Vendor class identifier utilisé par le client dans sa requête. Pour cela, modifions le fichier /etc/dhcp3/dhclient.conf et ajoutons les lignes suivantes :
interface "eth0" {
send vendor-class-identifier "neufbox-BypassedNeufBox-DirectConnectionToFTTH-xxx@yyy.zzz";
}
En remplaçant bien entendu eth0 par l'interface appropriée si besoin est, et l'adresse e-mail par la vôtre. Vous pouvez aussi utiliser un Vendor class identifier différent si vous le souhaitez, du moment que celui-ci commence par la chaîne "neufbox".
Tester
Une fois le VLAN et le client DHCP configurés, testons ! La commande suivante va demander au DHCP du Neuf de nous ouvrir le Passage (comme d'habitude, remplacez eth0 si approprié) :
dhclient eth0
Si la commande réussit, félicitations ! dhclient devrait avoir configuré vos routes et vos DNS, et votre machine est maintenant pleinement connectée à Internet... sans Neuf box entre les deux.
TV
Pour ceux qui sont intéressés par la TV en bypassant la neufbox fibre le programme qui sert de gateway s'appelle igmpproxy (http://sourceforge.net/projects/igmpproxy/). Dispo dans les ports de FreeBSD.
D'après le post de popof dans le topic OpenWrt et la TV
Le proxy IGMP relais les paques multicast recus sur l'interface dit "montante" (le WAN) vers l'interface dit "descendante" (le LAN) seulement si le flux multicast à été joint via une requête IGMP.
La configuration /etc/igmpproxy.conf :
##------------------------------------------------------
## Enable Quickleave mode (Sends Leave instantly)
##------------------------------------------------------
quickleave
phyint lo0 disabled
phyint fwe0 disabled
phyint fwip0 disabled
##------------------------------------------------------
## Configuration for em0 (Upstream Interface)
##------------------------------------------------------
phyint em0 upstream ratelimit 0 threshold 1
altnet 10.10.0.0/16
altnet 10.200.0.0/16
altnet 10.0.0.1/24
altnet 233.0.0.0/8
altnet 224.0.0.0/8
altnet 93.17.149.15
altnet 93.17.149.158
altnet 86.65.232.22
altnet 84.96.146.150
altnet 86.65.94.9
altnet 86.65.232.10
##------------------------------------------------------
## Configuration for nfe0 (Downstream Interface)
##------------------------------------------------------
phyint nfe0 downstream ratelimit 0 threshold 1
Lancer le démon :
/bin/igmpproxy
Pour voir les options :
/bin/igmpproxy -h
Configuration du firewall
Pour ce qui est de la configuration du firewall, avec pf il faut rajouter ces lignes:
pass in proto igmp all allow-opts pass out proto igmp all allow-opts
Catégories: TV | FTTH | Bypass