Auteur Sujet: Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).  (Lu 100269 fois)

atlas974 et 2 Invités sur ce sujet

ubune

  • Client Bbox fibre
  • *
  • Messages: 192
<-- Tutoriel vous permettant de remplacer votre Livebox par un routeur tournant sous Openwrt 18.06.02 et plus récent. -->

----------#Edit 22/08/20: Fichiers et explication pour mise en service immédiate dispo sur Github => https://github.com/ubune/openwrt-livebox ;)  #----------



Edit 27/09/18: Changement au niveau de l'authentification (option 90).
Edit 02/12/18: Changement eth0, ipv6 et igmpproxy préparation version 18.06.02.
Edit 31/01/19: Openwrt 18.06.2 est désormais disponible => https://downloads.openwrt.org/releases/18.06.2/
Edit 12/02/19: Maj du tuto pour la version 18.06 désormais, avec les fichiers en pièce jointe permettant une installation très rapide.
Edit 16/02/20: Tuto compatible avec la version 19.07 ;)

Info => https://openwrt.org/releases/19.07/start


Informations sur Openwrt =>

Dans ce tutoriel j'ai utilisé Openwrt 18.06.02, il est le fruit de nombreux échange sur le Topic LEDE (ex futur d'openwrt), merci à tous ceux qui ont contribué pour qu'on en arrive là. :)

Pour récupérer votre version, il faut identifier le soc de votre routeur, exemple sur un ubiquiti edgerouterx => https://openwrt.org/toh/hwdata/ubiquiti/ubiquiti_edgerouter_x
On retrouve dans target : ramips et subtarget : mt7621.
Une fois ces éléments identifiés, on peut aller sur https://downloads.openwrt.org pour récupérer la version correspondante.

Si vous êtes déja sur Lede ou Openwrt, vous pouvez utiliser en cli la commande sysupgrade pour passer en 19+, il suffit de copier en scp l'archive téléchargée sysupgradeXXX.tar (dans /tmp par exemple) et de faire la commande
sysupgrade chemindufichier.tar vous pouvez aussi mettre à jour via LUCI (l'interface web) si vous l'aviez installé.

Présentation rapide de l'architecture Openwrt :

Initialement, le routeur possède les interfaces suivantes :
wan (eth1.2)
br-lan (bridge de l'eth0.1 et de vos interfaces wifi).

(attention, certains routeurs n'ont qu'un seul eth, c'est le cas du edgerouterX par exemple, dans ce cas on reste sur eth0 pour le wan ET le lan (eth0.1 => vlan 1 => lan, eth0.2 vlan 2 => wan).

L'interface Wan est en dhcp client et l'interface Lan(ou br-lan si wifi) est configurée en 192.168.1.1/24 avec serveur dhcp actif, il est atteignable en ssh user root mdp vide.

Sur Openwrt, vos fichiers de configurations se retrouvent dans /etc/config, par exemple par défaut on retrouve :
/etc/config/network pour la configuration des interfaces réseau, des routes statiques et du Switch (gestion vlan).
/etc/config/Firewall pour la configuration du parefeu, du nat, des zones etc.
/etc/config/dhcp pour la config du serveur dhcp (RA ipv6...).

Si vous installez un nouveau package son fichier de configuration va donc apparaître dans /etc/config, pour luci ça sera /etc/config/uhttpd et pour igmpproxy ça sera le fichier /etc/config/igmpproxy par exemple.

PARTIE 1 : INTERNET V4+V6 =>

Préparation du Routeur :

Avant de débuter la configuration permettant de faire fonctionner votre routeur à la place de votre livebox, il faut ajouter certains packages :

Obligatoire :
iptables-mod-ipopt pour la gestion dscp d'iptables.
igmpproxy pour router le flux multicast (votre routeur agira comme proxy, afin de distribuer le flux multicast à votre livebox TV).
ip-full pour le script plus bas (mapping vlan).
tcpdump (pour tracer les flux si ça ne fonctionne pas).

Vivement Conseillé :
Luci => Interface web (luci-ssl si vous voulez être en https).
Nano => éditeur de fichier (que je trouve personnellement + facile que vi).

Utile :
xxd => Pour faire la conversion hexa de votre fti.
iperf => Pour faire des tests de débit depuis le Routeur <=> Serveur/MachineX.
iftop => Pour voir la consommation de flux en temps reel des machines (classé par utilisation, on visualise en cli).
luci-app-adblock => blocage des sites (ads, malware...) avec des listes maj par la communauté.

Pour installer ces packages, il faut que votre routeur ait accès à Internet, au départ vous pouvez mettre la patte wan du routeur derrière votre livebox (qui est en dhcp client par défaut), et donc pour les installer :
Votre pc sur l'interface lan du routeur puis :  ssh root@192.168.1.1 (terminal linux/mac os, ou depuis le powershell sur windows 10, sinon putty).
opkg update
opkg install iptables-mod-ipopt igmpproxy ip-full luci-ssl tcpdump xxd


INTERNET IPV4 :

Pour pouvoir faire fonctionner le wan Orange nous avons besoin :

- De votre identifiant de connexion que l'on va mettre en hexa, dans l'exemple du tuto, on va utiliser (définit au hasard): fti/qpq8888
- De configurer l'interface Wan en utilisant le VLAN 832 en dhcp => /etc/config/network
- De configurer le "switch" pour taguer le vlan 832, il faut taguer sur l'interface wan ET sur le cpu qui correspond à l'ETH (détail plus bas). => /etc/config/network
- D'envoyer les bonnes options dhcp permettant l'authentification auprès d'orange  => /etc/config/network
- D'envoyer tout le flux qui ne passe pas par iptables en priorité CS6 (en faite ça sera juste le dhcpV4) => /etc/vlanprio.sh 
- Gérer les files pour éviter les pb de débit (on remet bien le flux normal avec des priorités cohérentes) => iptables custom rules dans le fichier /etc/firewall.user

Identifiant de connexion en héxa:
Depuis le routeur (package xxd précédemment installé) => vous pouvez exécuter la commande suivante en remplaçant 'fti/qpq8888' par votre identifiant :
Commande : echo -n 'fti/qpq8888' | xxd  -p
Résultat : 6674692f71707138383838

Ou sinon sur : https://www.rapidtables.com/convert/number/ascii-to-hex.html
Exemple : fti/qpq8888 = 66 74 69 2f 71 70 71 38 38 38 38 (il faudra supprimer les espace dans le tuto).

Fichier /etc/config/network

Sur nos routeurs, nous avons (généralement) 2 interfaces Eth ayant chacune un CPU correspondant, l'un pour le lan (eth0.1 par défaut), l'autre pour le port wan (eth1.2 par défaut).
Ce qu'il faut comprendre, c'est que pour la gestion des vlan, il faut obligatoirement qu'un vlan associé à l'Eth en question soit aussi taggué vers son CPU.
Exemple le VLAN 832 qui est donc sur mon ETH1, doit être en taggué sur l'ETH1 mais AUSSI sur le CPU.

Dans le fichier network on doit retrouver :

La config Switch :

config switch_vlan
        option device 'switch0'
        option vlan '2'  # index
        option ports '4t 6t' # t pour tag, on tag sur le port 4 (qui est le port wan) et le 6 c'est mon cpu eth1.
        option vid '832' # id du vlan


La gestion des VLANs est plus clair sur Luci => :


La config ETH1 :

config interface 'wan'
        option ifname 'eth1.832' #eth1 vlan 832
        option proto 'dhcp' # en dhcp client
        option broadcast '1'
        option vendorid 'sagem' # on envoi le vendor id sagem
        option reqopts '1 15 28 51 58 59 90' # liste des options demandées
        option sendopts '77:2b46535644534c5f6c697665626f782e496e7465726e65742e736f66746174686f6d652e4c697665626f7834 90:00000000000000000000001a0900000558010341010d6674692f71707138383838'
# option 77 + 90 (fti)


Le script vlanprio.sh (il inclut aussi la partie TV qu'on verra + tard, il doit être exécuté à chaque démarrage du routeur ou changement sur une interface) :
On va le créer dans /etc, et lui ajouter le droit d’exécution.

nano /etc/vlanprio.sh (il faut copier le contenu en bleu qui suit).
chmod a+x /etc/vlanprio.sh

#!/bin/sh
set -x
for i in 0 1 2 3 4 5 6 7; do
    ip link set eth1.832 type vlan egress $i:$i >/dev/null  ## Chaque file devient en priorité $numdefile
    ip link set eth1.840 type vlan egress $i:5 >/dev/null   ## tout en prio 5 sur le vlan 840

done
    ip link set eth1.832 type vlan egress 1:0 >/dev/null    ## La file (1) était donc en prio 1 on la repasse à 0, ça deviendra (via IPTABLES) la nouvelle file par défaut.
    ip link set eth1.832 type vlan egress 0:6 >/dev/null    ## Tout le flux devient en prio 6 ! sauf le flux qui passera par IPTABLES (donc juste nos requêtes dhcp)


Pour qu'il se lance à chaque boot : on modifie nano /etc/rc.local =>


sleep 10
ifdown wan # J'ai eu besoin de faire ça pour être sûr d'éviter l'ip privée sur le wan, depuis la maj 18.02.
sh /etc/vlanprio.sh
ifup wan
exit 0



Fichier /etc/config/firewall

config zone
        option name 'wan'
        option output 'ACCEPT'
        option masq '1'  #masquerade, on nat le flux ipv4 sortant du wan par l'ip public reçu sur eth1.
        option input 'DROP'
        option forward 'DROP'
        option network 'wan'
        option family 'ipv4'

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config include
        option path '/etc/firewall.user'




iptables custom rules
Pour gérer les files correctement il faut lancer au démarrage : Chez moi si je laisse tout le flux en CS6, j'ai 14Mbps descendant et 0.8Mbps montant maximum, que ce soit en V4 ET en V6, (945/300 avec les rules).
Il faut ajouter ces règle dans le fichier /etc/firewall.user :


iptables -t mangle -A POSTROUTING -j CLASSIFY --set-class 0000:0001 ## En gros tout le flux sortant passe dans la file 1 qui est en prio 0
iptables -t mangle -A POSTROUTING -p icmp -j CLASSIFY --set-class 0000:0006 ##On passe le flux icmp dans la file 6 qui est en prio 6
iptables -t mangle -A POSTROUTING -p igmp -j CLASSIFY --set-class 0000:0006 ## On passe le flux igmp (celui qui part vers eth1.832) dans la file 6 qui est en prio 6
iptables -t mangle -A POSTROUTING -o eth1.832 -p udp --dport 67 -j CLASSIFY --set-class 0000:0006 ## On passe le flux dhcp dans la file 6 qui est en prio 6, necessaire pour le DHCP Renew

#la même chose en ipv6 (avec cette fois le dhcpv6)
ip6tables -t mangle -A POSTROUTING -j CLASSIFY --set-class 0000:0001
ip6tables -t mangle -A POSTROUTING -p ipv6-icmp -j CLASSIFY --set-class 0000:0006
ip6tables -t mangle -A POSTROUTING -p udp --dport 547 -j CLASSIFY --set-class 0000:0006



Une fois tout ceci fait, vous pouvez supprimer votre livebox et connecter directement votre nouveau routeur openwrt sur l'ont orange. Vous devriez recevoir votre ip publique sur l'eth1.832, la route par défaut et les dns Orange, et comme dans la config zone wan nous avions activé le nat, vous devriez avoir accès à internet depuis votre pc qui est raccordé sur le lan.
commande utile pour vérifier tout ça  : ifstatus wan  =>

- 1 = Votre ip WAN
- 2 = Votre route par défaut
- 3 = Dns d'orange

INTERNET + Firewall IPV6 :
Pour IPV6, après avoir envoyé les bonnes options vous recevez votre prefixe (un /56 donc 256 /64 possibles) et la passerelle par défaut (l'ip link local du prochain routeur Orange). Dhcpv6 sera uniquement utilisé pour recevoir le préfixe (IA_PD).

Pour recevoir le tout nous avons besoin  (Merci à Simon Topic LEDE, ainsi que Sywolf pour l'intégration dans le fichier network) :

D'envoyer les  options 11, 15 et 16 /etc/config/network
On demande les options 11,17,23 et 24 /etc/config/network

[On désactive l'envoi d'un hostname dans etc/config/network (Openwrt 18.06.02 obligatoire)

[On désactive le support de l'opcode reconfigure dans etc/config/network (Openwrt 18.06.02 obligatoire)

L'option 15 est l'user-class et doit contenir la même valeur que pour DHCPv4 cette fois elle est écrite en ASCII ici et non en hexa comme précédemment.
L'option 16 est le vendor id (sagem).
L'option 11 est notre identifiant (la seule chose que vous devez personnaliser).

Coté Firewall il faut aussi :
Autoriser dhcpv6 pour le wan6 (ATTENTION, si vous ne personnalisez pas la zone wan en family ipv4 uniquement, il faut l'autoriser sur le wan et non wan6.

Pour cela nous allons donc modifier notre fichier /etc/config/network
Pour rappel l'identifiant fti du tuto en hexa (la seule chose que vous devez personnaliser) : 6674692f71707138383838


------------------------------------------
Puis votre interface wan6 dans /etc/config/network =>

   
config interface 'wan6'
        option ifname 'eth1.832'
        option proto 'dhcpv6'
        option reqprefix 'auto'
        option reqaddress 'none'
        option defaultreqopts '0'
        option sendopts '11:00000000000000000000001a0900000558010341010d6674692f71707138383838 15:FSVDSL_livebox.Internet.softathome.livebox4 16:0000040e0005736167656d'
        option reqopts '11 17 23 24'
        option noclientfqdn '1' # OPENWRT 18.06.02 et plus récent
        option noacceptreconfig '1'#OPENWRT 18.06.02 et plus récent


Votre Firewall doit avoir ce paramétrage des zones + ces règles :

config zone
        option name 'wan'
        option output 'ACCEPT'
        option masq '1'
        option input 'DROP'
        option forward 'DROP'
        option network 'wan'
        option family 'ipv4'

config zone
        option name 'wanipv6'
        option network 'wan6'
        option output 'ACCEPT'
        option forward 'DROP'
        option family 'ipv6'
        option input 'DROP'

config rule
        option name 'Allow-DHCPv6'
        option proto 'udp'
        option src_ip 'fc00::/6'
        option dest_ip 'fc00::/6'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'
        option src 'wanipv6'

config rule
        option name 'Allow-MLD'
        option proto 'icmp'
        option src_ip 'fe80::/10'
        list icmp_type '130/0'
        list icmp_type '131/0'
        list icmp_type '132/0'
        list icmp_type '143/0'
        option family 'ipv6'
        option target 'ACCEPT'
        option src 'wanipv6'

config rule
        option name 'Allow-ICMPv6-Input'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'
        option src 'wanipv6'

config rule
        option name 'Allow-ICMPv6-Forward'
        option dest '*'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'
        option src 'wanipv6'


Désormais, vous devriez recevoir votre préfixe ipv6 + route par défaut V6 :
La commande pour vérifier si c'est le cas : ifstatus wan6 =>

1 = Votre préfixe ipv6
2 = Votre route par défaut ipv6.
3 = Dns d'orange IPV6, ah ba non, Orange n'a toujours pas de dns IPV6  ::)

On peut distribuer le premier /64 du /56du préfixe obtenu au lan :

Dans le fichier /etc/config/dhcp :

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option leasetime '4h'
        option ra 'server'
        list dhcp_option '6,192.168.1.1'
        option limit '30'

Votre interface Lan dans /etc/config/network doit désormais ressembler à ça :

config interface 'lan'
        option type 'bridge' #chez moi c'est un bridge car j'ai un SSID wifi + l'eth0
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option delegate '0'
        option mtu '1500'
        option ifname 'eth0.1'
        option ip6assign '64' # Pour que le routeur s'attribue une adresse du premier /64

Et voila ! Vous devriez être IPV6 Ready un test sur http://ipv6-test.com/ et vous obtiendrez un score de 19/20 (si vous avez laissez le forward icmpv6 et que votre machine accepte l'icmpv6).


Et voila, la partie Internet devrait désormais être pleinement opérationnelle, un petit speedtest =>


Pour les detenteurs de Raspberry, voir le post de bulle21 ici => https://lafibre.info/remplacer-livebox/remplacement-de-la-livebox-par-un-routeur-openwrt-18-dhcp-v4v6-tv/msg779570/#msg779570
« Modifié: 19 mars 2021 à 15:10:51 par ubune »

ubune

  • Client Bbox fibre
  • *
  • Messages: 192
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #1 le: 03 juillet 2018 à 09:17:54 »
Partie 2 : TV + REPLAY

Pour être sûr du fonctionnement de la suite, si vous commencez cette partie c'est que vous avez déjà configuré et rendu fonctionnel la partie 1, surtout vérifiez bien que vous avez l'interface eth1.840 dans le script vlanprio.sh

Pour faire simple, avec cette config vous devez brancher le décodeur TV sur le lan port 3 (en pvid vlan 19) et le lan port 4 sera utilisé pour envoyer les 2 vlan sur un autre Switch, dans ce cas on aura pas besoin de s’embêter avec l'igmp snooping.

Pour que cela fonctionne nous allons :

- Configurer une nouvelle interface coté (v)LAN avec serveur dhcp, qui enverra les dns d'orange et qui accueillera votre/vos décodeur TV, dans ma config c'est donc le vlan 19 ( vlantv ).
- Configurer l'interface eth1.840 sur laquelle arrivera le flux igmp, et qui sera routé vers l'interface vlantv (package igmpproxy).
- Configurer le firewall pour gerer (autoriser) ces flux, on va créer une zone wanTV qui contiendra l'eth1.840 et la zone lanTV qui contiendra uniquement l'interface eth0.19 vlanTV.
- Configurer le switch pour les vlan, on va tagguer le vlan 840 sur l'eth1 et le cpu eth1, on tag le vlan 19 sur eth0, et met ce vlan en untagged sur le port 3 pour brancher la box, la config du port 4 c'est pour un cas éventuel liaison vers un switch qui aura une box TV derrière aussi.

Les différents flux de votre box TV :
- Dialogue au travers de l'eth1.840 pour le flux igmp (qui sera routé entres ces interfaces grâce à votre routeur qui agira comme proxy).
- Dialogue au travers de l'eth1.832 pour divers flux (replay, ntp par exemple).


Configuration des nouvelles interfaces :

nano /etc/config/network =>

config interface 'vlantv'
        option proto 'static'
        option ipaddr '192.168.19.254' ## Adressage arbitraire mais j'aime bien la corrélation n°vlan/réseau.
        option netmask '255.255.255.0'
        option ifname 'eth0.19'

config interface 'tvorange'
        option ifname 'eth1.840'
        option proto 'static'
        option ipaddr '192.168.255.254' #Adressage arbitraire
        option netmask '255.255.255.255'
        option delegate '0'


Configuration du serveur DHCP pour l'interface vlantv :

nano /etc/config/dhcp =>

config dhcp 'vlantv'
        option leasetime '12h'
        option interface 'vlantv'
        option start '10'
        option limit '10'
        list dhcp_option '6,81.253.149.10,80.10.246.3'
        list dhcp_option '15,orange.fr'
        list dhcp_option '125,00:00:0d:e9:24:04:06:YY:YY:YY:YY:YY:YY:05:0f:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:06:09:4c:69:76:65:62:6f:78:20:34'


Nouveauté pour le nouveau décodeur TV5, l'option 125 est obligatoire, les Y en Orange c'est les 6 octets correspondant à l'adresse mac de votre livebox routeur, et il faut remplacer les XX:XX par votre numéro de série de livebox routeur, après l'avoir converti en Hexa.



Configuration du Firewall :

nano /etc/config/firewall =>

config zone
        option name 'tv'
        option output 'ACCEPT'
        option network 'vlantv'
        option input 'ACCEPT'
        option forward 'ACCEPT'
        option family 'ipv4'

config zone
        option name 'wanTV'
        option output 'ACCEPT'
        option masq '1'
        option network 'tvorange'
        option input 'DROP'
        option forward 'DROP'
        option family 'ipv4'

config forwarding
        option dest 'wanTV' #On autorise la box tv à sortir sur le wanTV.
        option src 'tv'

config forwarding
        option dest 'wan' #On autorise la box tv à atteindre le flux wan classique (Replay/ntp par exemple).
        option src 'tv'

config rule
        option target 'ACCEPT'
        option name 'igmp' #On autorise le flux IGMP provenant du vlan 840 à destination du routeur.
        option family 'ipv4'
        option proto 'igmp'
        option src 'wanTV'

config rule
        option target 'ACCEPT'
        option name 'multicast' #On autorise le flux multicast provenant du vlan 840 à destination de la zone tv (le vlan TV ou se trouvera le décodeur).
        option family 'ipv4'
        option proto 'udp'
        option src 'wanTV'
        option dest 'tv'
        option dest_ip '224.0.0.0/4'




IGMPPROXY :
Pour installer et lancer automatiquement igmpproxy au démarrage =>

opkg update
opkg install igmpproxy
/etc/ini.d/igmpproxy enable

On va éditer le fichier de configuration d'igmpproxy, attention à bien respecter le nommages des interfaces (sensible à la casse) créés précédemment :

nano /etc/config/igmpproxy=>

config igmpproxy
    option quickleave 1

config phyint
    option network tvorange
    option zone wanTV # 18.06.02
    option direction upstream
        list altnet "0.0.0.0/0"

config phyint lan
    option network vlantv
    option zone tv # 18.06.02
    option direction downstream


Maintenant on le relance : /etc/init.d/igmpproxy restart

Désormais si on fait un more /etc/igmpproxy.conf on va retrouver :

quickleave

phyint eth1.840 upstream ratelimit 0 threshold 1
        altnet 0.0.0.0/0

phyint eth0.19 downstream ratelimit 0 threshold 1


Et voilà, tout devrait fonctionner ;).



« Modifié: 07 avril 2019 à 10:23:31 par ubune »

ubune

  • Client Bbox fibre
  • *
  • Messages: 192
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #2 le: 03 juillet 2018 à 17:38:30 »
Alternatives  :

(TV)

Si vous vouliez avoir la TV sur le LAN :

Changement Firewall :

config rule
        option src      wanTV
        option proto    igmp
        option target   ACCEPT
config rule
        option src      wanTV
        option proto    udp
        option dest     lan
        option dest_ip  224.0.0.0/4
        option target   ACCEPT
        option family   ipv4

config forwarding
        option dest 'lan'
        option src 'wanTV'

Changement igmpproxy :

config igmpproxy
    option quickleave 1

config phyint
    option network tvorange
    option direction upstream
    option zone wanTV
        list altnet "0.0.0.0/0"

config phyint lan
    option network lan
    option zone lan
    option direction downstream

Changement network :

config interface 'lan'
      option igmp_snooping 1

Changement Dns :

Il faut envoyer les dns d'orange sur le lan (ou que votre routeur relaye vers Orange).

Attention, si vous utilisez cette configuration et que votre décodeur est raccordé sur un switch derrière le routeur, il faudra gérer l'igmp snooping dessus (si vous ne voulez pas que le flux TV soit broadcasté).


(Telephone)

Livebox derrière le routeur (pour avoir le téléphone fonctionnel)
Voir les échanges et surtout le post récap de Rhon ici : https://lafibre.info/remplacer-livebox/remplacement-de-la-livebox-par-un-routeur-openwrt-18-dhcp-v4v6-tv/msg589599/#msg589599

Attention, pour les cas ou vous avez un seul eth, ou si vos deux eth ne sont pas isolés, on doit utiliser un switch pour sortir l'interface tel en untagged sur un vlan (exemple 199) et l'associer au vlan 832 sur lequel notre livebox routeur tag (grâce au switch administrable).
Voir mon post récap ici => https://lafibre.info/remplacer-livebox/remplacement-de-la-livebox-par-un-routeur-openwrt-18-dhcp-v4v6-tv/msg639732/#msg639732

« Modifié: 22 avril 2019 à 10:09:58 par ubune »

Sywolf

  • Client Orange Fibre
  • *
  • Messages: 13
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #3 le: 30 juillet 2018 à 01:56:39 »
Testé sur wrt3200acm / openwrt 18.06.0-rc2, ça fonctionne merveilleusement bien, et j'ai meme gagné en débit ! :)

Un grand merci pour ce tuto, je galerais avec les vlan / authentification, et la, ça s'est fait en 5 minutes chrono avec ce tuto !!
« Modifié: 30 juillet 2018 à 16:06:56 par Sywolf »

ubune

  • Client Bbox fibre
  • *
  • Messages: 192
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #4 le: 30 juillet 2018 à 09:23:01 »
Testé sur wtr3200acm / openwrt 18.06.0-rc2, ça fonctionne merveilleusement bien, et j'ai meme gagné en débit ! :)

Un grand merci pour ce tuto, je galerais avec les vlan / authentification, et la, ça s'est fait en 5 minutes chrono avec ce tuto !!

Merci pour le retour et content que tout fonctionne :).

Dès que j'ai un peu de temps je compléterai la partie TV.

A+

lmn69

  • Client Orange Fibre
  • *
  • Messages: 11
  • Lyon 3 (69)
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #5 le: 31 juillet 2018 à 15:03:21 »
    Bonjour,

Êtes-vous sûr que les options DHCP v4 demandées (option reqopts) sont en hexa : 0x01 0x15 0x28 ... ?
Ça fait 1 (Subnet Mask) OK, 21 (Policy Filter), 40 (NIS Domain), 81 (Client FQDN), 88 (BCMCS Controller Domain Name list), 89 (BCMCS Controller IPv4 address option), 144 (GeoLoc) selon le registre de l'IANA
https://www.iana.org/assignments/bootp-dhcp-parameters/bootp-dhcp-parameters.xhtml

kgersen

  • Modérateur
  • Client Free Pro
  • *
  • Messages: 8 135
  • Paris (75)
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #6 le: 31 juillet 2018 à 16:25:52 »
merci pour le tuto. je l'ai mis dans l'index global (sujet épinglé).
« Modifié: 31 juillet 2018 à 18:54:04 par kgersen »

Sywolf

  • Client Orange Fibre
  • *
  • Messages: 13
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #7 le: 31 juillet 2018 à 21:49:29 »
Bien vu pour les options dhcp ipv4, ça mérite refléxion (mais à priori c'est issue du sniffage de ce que demande la livebox... c'est pas impossible qu'elle demande n'importe quoi)

Sinon j'avais commencé à regarder du coté dhcpv6 et du binaire odhcp6c sous jacent, et il semblerait qu'on puisse lui filer les options plus proprement qu'en modifiant une lib (c'est quand meme un peu crado de modifier une lib, sauf si c'est pour contribuer directement à openwrt ;) )
-x 15 gérable via odhcp6c via "userclass"
-x 16 gérable via odhcp6c via "vendorclass"
-x 11 => OPTION_AUTH => odhcp6c semble pouvoir le gérer via "sendopts:list(string)" (ainsi que les autres options -x, mais si on peut faire propre ;) )
-r sont gérables via "reqopts:list(uinteger)"
-Nnone gérable via "reqaddress"
-P0 gérable via "reqprefix"
-R gérable via "defaultreqopts"
-f non géré
-a non géré

Je n'ai pas encore trouvé comment bien les setter dans la config du network, mais ça va finir par se faire :D

Sywolf

  • Client Orange Fibre
  • *
  • Messages: 13
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #8 le: 01 août 2018 à 02:45:50 »
Du coup, pour l'ipv6, tu peux simplifier un peu le tuto :)

Dans la config network, plutot que de la laisser vide, et tout modifier dans la lib :

config interface 'wan6'
        option ifname 'eth1.832'
        option proto 'dhcpv6'
        option defaultreqopts '0'
        option sendopts '11:00000000000000000000006674692f3XXXXXXXXXXXX 15:FSVDSL_livebox.Internet.softathome.livebox3 16:0000040e0005736167656d'
        option reqopts '11 17 23 24'
        option reqaddress 'none'
        option reqprefix '0'

et dans /lib/netifd/proto/dhcpv6.sh, laisser le code d'origine et juste ajouter les options -f et -a.

        proto_export "INTERFACE=$config"                                                                                                                               
        proto_run_command "$config" odhcp6c \                                                                                                                           
                -s /lib/netifd/dhcpv6.script \                                                                                                                         
                $opts -f -a $iface

Apres avoir un peu lu le code de odhcp6c, on peut dire avec certitude que le -f correspond à DHCPV6_CLIENT_FQDN et -a à DHCPV6_ACCEPT_RECONFIGURE, et helas, ce ne sont pas des options (peut etre le client fqdn via l'option 39).  On est donc pour le moment obligé de modifier la lib :/

repo de odhcp6c : https://github.com/openwrt/odhcp6c/blob/master/src/odhcp6c.c
rfc diverse et variée de dhcpv6 : https://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml

A voir maintenant, si il existe des petites options qui seraient actives chez orange (je me suis fais ban temporerement à plusieurs reprises en faisant des essais :o)
Et peut etre en supprimer certaines pour l'ipv4.

djgreg13

  • Client Orange adsl
  • *
  • Messages: 36
  • Strasbourg (67)
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #9 le: 01 août 2018 à 10:03:45 »
Hello,

Si j'ai bien suivi le tuto, ça a l'air assez compliqué de remettre la box derrière le routeur, est ce exact ?

Flo_77

  • Client SFR fibre FttH
  • *
  • Messages: 270
  • MEA77
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #10 le: 01 août 2018 à 11:02:27 »
je me suis fais ban temporerement à plusieurs reprises en faisant des essais :o
Orange bloque la connexion quand on tente de bypasser leur box?  :o

ubune

  • Client Bbox fibre
  • *
  • Messages: 192
Remplacement de la Livebox par un routeur Openwrt 18+ (DHCP V4/V6 + TV).
« Réponse #11 le: 01 août 2018 à 11:15:59 »
Merci pour le retour Sywolf, je fais un test ce soir et j'éditerai le tuto en conséquence, openwrt 18.06.0 est disponible :).