Ceci est une ancienne révision du document !
Table des matières
Remplacer sa box Orange par un pfSense
Introduction
Internet
Il existe deux méthode d'attribution d'IP chez Orange :
- PPPOE : L'ancestrale méthode de chez Orange, ne supporte que l'IPv4 dynamique et est nativement compatible avec pfSense.
- DHCP : Méthode toute jeune, permet l'obtention de l'IPv6 mais non compatible nativement avec pfSense.
Bien évidement, on va utiliser la méthode du DHCP car l'IPv6 prime.
Étape 1
Il va falloir donc modifier le fichier suivant :
- dhcp6c –> /usr/local/sbin/dhcp6c
Cette étape sera à répéter à chaque mise à jour.
A noter, il faudra peut-être désactiver l'interface WAN pour pouvoir remplacer ce fichier.
Pour les versions inférieur a la 2.4.4, il vous faut aussi remplacer le fichier suivant :
- dhclient –> /sbin/dhclient
Étape 2
Ensuite nous allons avoir à déclarer sur l'interface relié à l'opérateur (ici em0) le VLAN 832 sans priorité.
Puis de l'assigné sur l'interface WAN.
Étape 3
Il va falloir transformer son identifiant Orange en base32, pour cela il suffit de lancer le script suivant :
- fti.sh
- #!/bin/bash
- USERNAME=$1
- AUTHSTRING=00:00:00:00:00:00:00:00:00:00:00:1a:09:00:00:05:58:01:03:41:01:0d:66:74:69:2f
- for (( i=0; i<${#USERNAME}; i++ )); do
- HEXCHAR=$(echo -n ${USERNAME:$i:1} | od -An -txC | xargs)
- AUTHSTRING=${AUTHSTRING}:${HEXCHAR}
- done
- echo ${AUTHSTRING}
avec pour argument les 7 caractères de l'identifiant Orange (après le fti/).
<html> <style> .htmlcode {
background-color: lightblue; padding: 25px;
} </style>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.min.js"></script> <script type="text/javascript"> window.onload=function(){
(function(){
btn2.onclick = function(){ var st11zero = '00:00:00:00:00:00:00:00:00:00:00'; var idorange = '01'; // variable var idsalt= '3c'; // 16 var idhash = '03'; //1+16 var fixed = '1a:09:00:00:05:58:01:03:41'; function TLofTLS(id,l) { var toAdd = l.toString(16).toUpperCase(); if (toAdd.length<2) toAdd = '0' + toAdd; return id + ':' + toAdd; } function SofTLS (s) { var i, toAdd; var res = ''; for(i = 0; i < s.length; i++) { toAdd = s.charCodeAt(i).toString(16).toUpperCase(); if (toAdd.length<2) toAdd = '0' + toAdd; res += toAdd; if (i<s.length-1) res += ":"; } return res; } var Orange = 'fti/'+orange.value; var Salt = salt.value; var Byte = byte.value; var md5 = CryptoJS.MD5(Byte + password.value + Salt).toString(); console.log(md5); var md5s = ''; for(i = 0; i < md5.length; i+=2) { md5s += md5[i]+md5[i+1]; if (i<md5.length-2) md5s += ":"; } console.log(md5s); output.value = st11zero + ':' + fixed + ':' + TLofTLS(idorange,2+Orange.length)+ ':' + SofTLS(Orange)+ ':' + TLofTLS(idsalt,2+16)+ ':' + SofTLS(Salt) + ':' + TLofTLS(idhash,2+1+16)+ ':' + SofTLS(Byte) + ':' + md5s; }
})();
}
</script>
</head> <body>
<h3>Générateur pour option 90 DHCP Orange - version 2.01 (septembre 2018)</h3>
<a href=“https://lafibre.info/remplacer-livebox/cacking-nouveau-systeme-de-generation-de-loption-90-dhcp/”>voir ce sujet sur lafibre.info</a><br> <hr> login Orange : fti/<input id=“orange” placeholder=“identifiant Orange”/><br> mot de passe Orange: <input id=“password” placeholder=“password”/><br> Salt: <input id=“salt” value=“1234567890123456”/ maxlength=“16” size=“16”><br> Byte: <input id=“byte” value=“A” maxlength=“1” size=“1”/> <br>(execution locale au navigateur, les valeurs ne sont pas envoyées sur le réseau)<br> <hr> <button id=“btn2”>Générer la chaine</button><br>
chaine option dhcp 90:<textarea id=“output” placeholder=“”></textarea><br>
<script> // tell the embed parent frame the height of the content if (window.parent && window.parent.parent){ window.parent.parent.postMessage(["resultsFrame", { height: document.body.getBoundingClientRect().height, slug: "3mnsc6wy" }], "*") } </script>
</body> </html>
Étape 4
Nous allons configurer les DHCP.
Pour cela, voici la configuration standard :
Avec dans le Send Options IPv4 :
dhcp-class-identifier "sagem",user-class "+FSVDSL_livebox.Internet.softathome.Livebox4",option-90 XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX
dans le Request Options IPv4 :
subnet-mask,broadcast-address,dhcp-lease-time,dhcp-renewal-time,dhcp-rebinding-time,domain-search,routers,domain-name-servers,rfc3118-auth
et dans le Send Options IPv6 :
ia-pd 0, raw-option 15 00:2b:46:53:56:44:53:4c:5f:6c:69:76:65:62:6f:78:2e:49:6e:74:65:72:6e:65:74:2e:73:6f:66:74:61:74:68:6f:6d:65:2e:6c:69:76:65:62:6f:78:33,raw-option 16 00:00:04:0e:00:05:73:61:67:65:6d,raw-option 6 00:0b:00:11:00:17:00:18,raw-option 11 XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX
A noter que le XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX est le contenu obtenu l'étape 3.
Vous devriez recevoir une IPv4 et un /56 IPv6.
Étape 5
Il faudra ajouter la route suivante pour pouvoir profiter de l'IPv6 :
A noter qu'il faudra changer le nom de l'interface par la votre.
Étape 6
Vous pouvez désormais mettre des IPv6 fixe a vos adresses LAN de votre pfSense et activer le Router Advertisement.
Vous avez la complète liberté sur vos préfixes.
Télévision
Étape 1
Génération de l'identifiant :
Étape 2
Il vous faut créer les deux interfaces VLAN 838 et 840
Étape 3
Ajout du DHCP sur l'interface vlan 838 comme ceci :
avec pour options :
Étape 4
Création des règles de pare-feu
Étape 5
Création de bail statique pour le décodeur