Auteur Sujet: Remplacer la livebox avec DHCP+DHCPv6-pd (linux/openbsd)  (Lu 263215 fois)

0 Membres et 1 Invité sur ce sujet

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 256
  • Antibes (06) / Mercury (73)
Remplacer la livebox sans pppoe
« Réponse #12 le: 22 novembre 2015 à 17:46:07 »
Je suppose, que l'on est reconnu par @mac qui faut renseigner ?
Non, comme indiqué dans son premier message, authentification par option 90 (non supportée par l'ERL...).

Breizh 29

  • Client Bouygues Fibre +
  • Abonné Orange Fibre
  • *
  • Messages: 4 279
  • Guilers 29820 (29N)
Remplacer la livebox sans pppoe
« Réponse #13 le: 22 novembre 2015 à 18:34:42 »
Non, comme indiqué dans son premier message, authentification par option 90 (non supportée par l'ERL...).
Oui ok
Je ne sais pas ce qu'est l'option 90.

zommak

  • Abonné Orange Fibre
  • *
  • Messages: 37
    • Site CV
Remplacer la livebox sans pppoe
« Réponse #14 le: 22 novembre 2015 à 20:30:52 »
L'option 90 c'est l'option DHCP qui envoie un token d'authentification. Orange a fait le choix de simplement envoyer le login fti/****** . C'est sûrement ça qui est reconnu par le serveur DHCP pour attribuer l'ip.

J'ai modifié mon post original pour ajouter la configuration du serveur DHCP pour garder la box en cliente. J'ai fait un brige du vlan 832 avec les autres interfaces réseaux. Au passage la box se connecte  même si je garde la connexion internet en ppp (comme j'ai toujours des problème de débit pour le momen). Ça permettra à tout ceux qui ont la bonne version de firmware de commencer à virer le pppoe-server et de simplifier la configuration pour avoir la box en client ( besoin que d'un seul vlan le 832 )

Dernier truc, avec le serveur, comme celui ci ne prend pas en charge l'option 90 j'envoie une séquence manuelle en hexadécimal que j'ai récupéré avec wireshark. Je pense qu'on peut faire la même chose avec un client dhcp. Ça permettrait à ceux qui ont un ERL d'utiliser le client dhclient-isc pour se connecter en DHCP. Je vais tenter la chose demain.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 256
  • Antibes (06) / Mercury (73)
Remplacer la livebox sans pppoe
« Réponse #15 le: 22 novembre 2015 à 20:35:34 »
Dernier truc, avec le serveur, comme celui ci ne prend pas en charge l'option 90 j'envoie une séquence manuelle en hexadécimal que j'ai récupéré avec wireshark. Je pense qu'on peut faire la même chose avec un client dhcp. Ça permettrait à ceux qui ont un ERL d'utiliser le client dhclient-isc pour se connecter en DHCP. Je vais tenter la chose demain.
J'avais pensé essayer ça pour le client DHCP de l'ERL, mais ma crainte c'était le RDM (qui en théorie est sensé s'incrèmenter à chaque fois pour éviter les attaques par rejeu). Mais comme tu as dit que chez Orange il est toujours à 0 j'ai espoir qu'on puisse s'en sortir avec ce genre d'astuce...

zommak

  • Abonné Orange Fibre
  • *
  • Messages: 37
    • Site CV
Remplacer la livebox sans pppoe
« Réponse #16 le: 22 novembre 2015 à 20:46:40 »
exacte mais comme orange n'effectue aucun controle sur le RDM et utilise exclusivement le token ça ne devrait vraiment pas être un soucis. Sauf que pour le moment je n'ai pas trouvé comment envoyer une option manuel à chaque étape du processus DHCP. Je réessaierai dès que j'ai un peu de temps.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 256
  • Antibes (06) / Mercury (73)
Remplacer la livebox sans pppoe
« Réponse #17 le: 22 novembre 2015 à 21:00:43 »
A priori il faut définir l'option dans le fichier de config (au niveau global, hors interfaces), du genre:

option rfc3118-auth code 90 = string;
puis dans la configuration spécifique de l'interface:

option rfc3118-auth = xx:xx:xx:xx:xx:xx:.....;
avec xx = valeur entre 0 et 255 (1 octet en fait) en hexa.


Edit: Je viens de voir que c'est ce que tu as fait pour le serveur. Pour moi ça devrait également fonctionner pour le client si je me fie à la doc...

kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 078
  • Paris (75)
Remplacer la livebox sans pppoe
« Réponse #18 le: 22 novembre 2015 à 22:08:37 »
les options dhcp client pour l'ERL sont:

ubnt@ubnt# set interfaces ethernet eth0 dhcp-options client-option ?
Possible completions:
  <text> Additional options for DHCP client. You must
                use the syntax of dhclient.conf in this text-field. Using this
without proper knowledge may result in a crashed DHCP client.
Check system log to look for errors.

par exemple pour le bypass des Neufbox (SFR) on utilise (si eth1 est branché sur l'ONT):

set interfaces ethernet eth1 dhcp-options client-option "send vendor-class-identifier &quot;neufbox6-votre.email@email.com&quot;;"

A priori, il faudrait une option supportée par dhclient.conf(5) (voir dhcp-options(5)), c'est a dire le client ISC-DHCP qui , a priori ne supporte pas l'option 90 (le nom n'est pas définit dans le tableau des options supportées... y'a pas d'option générique pour mettre '90' en dur a ma connaissance).

Donc je le sens mal la ... ca va etre coton avec nos ERL & Orange...il va surement falloir bidouiller pour installer un autre client DHCP.

petrus

  • Expert AS206155
  • Expert
  • *
  • Messages: 1 064
Remplacer la livebox sans pppoe
« Réponse #19 le: 22 novembre 2015 à 22:28:05 »

Normalement ça permet d'avoir une ipv4 sans pppoe


Yeah Zommak, tu gères :)

zommak

  • Abonné Orange Fibre
  • *
  • Messages: 37
    • Site CV
Remplacer la livebox sans pppoe
« Réponse #20 le: 22 novembre 2015 à 23:03:24 »
En lisant les deux posts mon erreur m'a sauté aux yeux. Quand j'avais essayé j'avais fait ça
option authsend code 90 = string;
option authsend 00:00:00:00.........etc;
send authsend;
Sauf qu'en fait il faut faire ça pour envoyer une commande en temps que client
option authsend code 90 = string;
send authsend  00:00:00:00.........etc;
Je teste ça dès que possible. il faudra juste adapter la séquence hexadécimal et ça devrait le faire

A priori il faut définir l'option dans le fichier de config (au niveau global, hors interfaces), du genre:

option rfc3118-auth code 90 = string;
puis dans la configuration spécifique de l'interface:

option rfc3118-auth = xx:xx:xx:xx:xx:xx:.....;
avec xx = valeur entre 0 et 255 (1 octet en fait) en hexa.


Edit: Je viens de voir que c'est ce que tu as fait pour le serveur. Pour moi ça devrait également fonctionner pour le client si je me fie à la doc...
en fait comme ça on définit une option qui sera envoyé en réponse par exemple à une requête (donc plus pour le côté serveur)


les options dhcp client pour l'ERL sont:

ubnt@ubnt# set interfaces ethernet eth0 dhcp-options client-option ?
Possible completions:
  <text> Additional options for DHCP client. You must
                use the syntax of dhclient.conf in this text-field. Using this
without proper knowledge may result in a crashed DHCP client.
Check system log to look for errors.

par exemple pour le bypass des Neufbox (SFR) on utilise (si eth1 est branché sur l'ONT):

set interfaces ethernet eth1 dhcp-options client-option "send vendor-class-identifier &quot;neufbox6-votre.email@email.com&quot;;"

A priori, il faudrait une option supportée par dhclient.conf(5) (voir dhcp-options(5)), c'est a dire le client ISC-DHCP qui , a priori ne supporte pas l'option 90 (le nom n'est pas définit dans le tableau des options supportées... y'a pas d'option générique pour mettre '90' en dur a ma connaissance).

Donc je le sens mal la ... ca va etre coton avec nos ERL & Orange...il va surement falloir bidouiller pour installer un autre client DHCP.

Pas besoin en fait le client permet de définir manuellement une option. La seule obligation ça va être d'envoyer toute la séquence héxadécimale de l'option. Mais ça ne devrait pas être plus compliqué que ça puisqu'on peut capturer la séquence avec wireshark ou même convertir le username à la main en hex
« Modifié: 23 novembre 2015 à 01:11:20 par zommak »

zommak

  • Abonné Orange Fibre
  • *
  • Messages: 37
    • Site CV
Remplacer la livebox sans pppoe
« Réponse #21 le: 23 novembre 2015 à 01:13:36 »
Voilà j'ai modifié le sujet d'origine. Ça marche avec dhclient. Plus besoin d'utiliser le client modifié. Il faut juste adapter les séquences hexadécimal. Il reste à adapter le fichier pour pouvoir faire la requête ipv6. Par contre j'ai toujours un problème de débit et je ne sais toujours pas d'où ça vient.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 256
  • Antibes (06) / Mercury (73)
Remplacer la livebox sans pppoe
« Réponse #22 le: 23 novembre 2015 à 07:42:54 »
OK, c'est une bonne nouvelle.

Pour l'ERL il suffira donc de patcher le fichier perl qui génère le fichier de configuration DHCP. Pas très difficile.

Update: Alors, pour un firmware 1.7 (et sans doute suivants), il faut modifier le fichier /opt/vyatta/sbin/vyatta-interfaces.pl. Rechercher la ligne

$output .= "option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;\n\n";
et rajouter en dessous

$output .= "option rfc3118-auth code 90 = string;\n\n";
Puis rebooter l'ERL. A partir de ce moment, il devrait (je mets au conditionnel car je n'ai pas encore testé) être possible de faire

set interfaces ethernet eth1 dhcp-options client-option "send rfc3118-auth xx:xx:xx:xx:xx:.....;"
dans le fichier de config de l'ERL ;)
« Modifié: 23 novembre 2015 à 08:47:00 par zoc »

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 256
  • Antibes (06) / Mercury (73)
Remplacer la livebox sans pppoe
« Réponse #23 le: 23 novembre 2015 à 09:06:09 »
Ci-dessous un script "quick and dirty" en bash (exécution validée sur un ERL) pour générer la séquence d'octets à partir de votre identifiant (il faut passer en paramètre au script ce qui se trouve après "fti/" en respectant la casse:

#!/bin/bash

USERNAME=$1
AUTHSTRING=00:00:00:00:00:00:00:00:00:00:00: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}

Exemple d'execution (non, ce n'est pas mon identifiant  :P ):
root@gateway:/config/scripts# ./generator.sh 7kgtyop
00:00:00:00:00:00:00:00:00:00:00:66:74:69:2f:37:6b:67:74:79:6f:70