Auteur Sujet: Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet  (Lu 168616 fois)

0 Membres et 4 Invités sur ce sujet

yeocti

  • Abonné Sosh fibre
  • *
  • Messages: 211
  • Plougastel-Daoulas (29)
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #576 le: 14 mars 2023 à 11:25:37 »
J'utilise un script sur mes dhcp-client pour vérifier la valeur des option 125 et 17.
Pour DHCPv4:
/ip dhcp-client add comment="Orange public IPv4" dhcp-options=vendor-class,user-class,authentication,clientid interface=<TON_INTERFACE> script="{\
    \n    :if (\$bound=1) do={\
    \n        foreach option,value in=\$\"lease-options\" do={\
    \n            :if (\$option=\"125\") do={\
    \n                :log debug \"IPv4: Found [\$value]\";\
    \n                :global class [:pick \$value 11];\
    \n                :log debug \"Extracted [\$class]\";\
    \n                :if (\$class=\"\\00\") do={\
    \n                    :log info \"IPv4: ISP network is OK\";\
    \n                };\
    \n                :if (\$class=\"\\01\") do={\
    \n                    :log error \"IPv4: Technical blacklist\";\
    \n                };\
    \n                :if (\$class=\"\\02\") do={\
    \n                    :log error \"IPv4: Auth or encoding failure\";\
    \n                };\
    \n                :if (\$class=\"\\03\") do={\
    \n                    :log error \"IPv4: Account or service probably terminated\";\
    \n                };\
    \n                :if (\$class=\"\\04\") do={\
    \n                    :log error \"IPv4: Invoice payment problem.\";\
    \n                };\
    \n                :if (\$class=\"\\99\") do={\
    \n                    :log error \"IPv4: CoS & DSCP issue.\";\
    \n                };\
    \n            }\
    \n        }\
    \n    }\
    \n}"
Et DHCPv6:/ipv6 dhcp-client add add-default-route=yes comment="Orange public IPv6 prefix delegation" dhcp-options=authentication,user-class,vendor-class dhcp-options=authentication,user-class,vendor-class interface=<TON_INTERFACE> pool-name=pool-v6orange rapid-commit=no request=prefix script="{\
    \n    :if (\$\"pd-valid\"=1) do={\
    \n        foreach option,value in=\$options do={\
    \n            :if (\$option=\"17\") do={\
    \n                :log debug \"IPv6: Found [\$value]\";\
    \n                :global class [:pick \$value 11];\
    \n                :log debug \"Extracted [\$class]\";\
    \n                :if (\$class=\"\\00\") do={\
    \n                    :log info \"IPv6: ISP network is OK\";\
    \n                };\
    \n                :if (\$class=\"\\01\") do={\
    \n                    :log error \"IPv6: Technical blacklist\";\
    \n                };\
    \n                :if (\$class=\"\\02\") do={\
    \n                    :log error \"IPv6: Auth or encoding failure\";\
    \n                };\
    \n                :if (\$class=\"\\03\") do={\
    \n                    :log error \"IPv6: Account or service probably terminated\";\
    \n                };\
    \n                :if (\$class=\"\\04\") do={\
    \n                    :log error \"IPv6: Invoice payment problem.\";\
    \n                };\
    \n                :if (\$class=\"\\99\") do={\
    \n                    :log error \"IPv6: CoS & DSCP issue.\";\
    \n                };\
    \n            }\
    \n        }\
    \n    }\
    \n}" use-interface-duid=yes use-peer-dns=no

Bonjour,

J'ai une question concernant le script ci-dessus.
Lorsqu'on utilise la fonction :pick le premier index est 0.

L'option 125 brute telle que reçue par le Mikrotik est de la forme
000005580c010a0001000000ffffffffffCe qui, une fois convertie en texte, correspond à une chaine de 16 caractères (manifestement, RouterOS ne travaille pas sur la chaine brute).

Or, @levieuxatorange indique
Le canal retour :
Dans la réponse DHCP il y a un canal de retour du réseau.
C'est l'option 125 en DHCPv4, l'option 17 en DHCPv6
Le contenu (attention, les entêtes des options sont différentes, voir les RFC) est le même et dans le format suivant avec en rouge 2 octets de code d'information : 0001000000ffffffffff
Les grandes classes de réponses sont :
- 00xx : OK vu du réseau Orange et tout doit fonctionner. Si ce n'est pas le cas le problème vient de chez vous.
- 01xx : Le modèle de box, le firmware ou votre ligne est bloquée (0102 ce qui peut arriver si le comportement de votre routeur est trop agressif ...) 0199 en cas de mauvaise COS sur le DHCP
- 02xx : erreur de Login ou de Mot de passe ou d'encodage
- 03xx : compte ou service probablement résilié
- 04xx : problème de règlement de la facture avec de possibles limitation de débit ou blocage.

LeVieux

Ainsi, ne faut il pas récupérer le caractère dont l'index est 10 plutôt que 11 ?

jbfavre

  • Abonné Orange Fibre
  • *
  • Messages: 37
  • Hauts-de-Seine
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #577 le: 14 mars 2023 à 14:32:16 »
Bonjour,

J'ai une question concernant le script ci-dessus.
Lorsqu'on utilise la fonction :pick le premier index est 0.

L'option 125 brute telle que reçue par le Mikrotik est de la forme
000005580c010a0001000000ffffffffffCe qui, une fois convertie en texte, correspond à une chaine de 16 caractères (manifestement, RouterOS ne travaille pas sur la chaine brute).

Or, @levieuxatorange indique
Ainsi, ne faut il pas récupérer le caractère dont l'index est 10 plutôt que 11 ?

Hello @yeocti

De mémoire, j'ai un caractère non imprimable qui bouffe un offset sans ce que soit exploitable. Je ne sais pas si c'est Orange qui l'ajoute, ou Mikrotik qui fait des chocapic en parsant l'option, j'avoue que je n'ai pas trop cherché.
Tu devrais pouvoir vérifier en modifiant le script pour pick chaque octet et générer un log.

Thau

  • Abonné Orange Fibre
  • *
  • Messages: 35
  • Ermont (95)
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #578 le: 15 mars 2023 à 17:49:12 »
Surprise de ce matin, plus de connection via mon ER-X

IP en 172.16.X.X, j'avais heureusement vu sur twitter un lien vers ce post il y a quelques jours/semaines

Un petit update de l'auth plus le rajout de l'option 61 (je suis en IPv4 only) et ça roule.

La bonne syntaxe pour l'option 61 dans le fichier config.boot Ubiquity :
client-option "send dhcp-client-identifier 1:XX:XX:XX:XX:XX:XX;"

Où les 6x XX c'est l'adresse MAC de votre livebox (étiquette en dessous sur la mienne)

Un truc par contre, via le tcpdump présent sur le ER-X j'ai l'option 125 dans la réponse du serveur DHCP qui est sous la forme 0.0.5.xxxxxx
Je ne sais pas quoi en faire ni comment la convertir vers un truc qui colle avec les codes d'erreurs partagés

Merci à tous et surtout Au vieux ! =)

fttmeh

  • Abonné Orange Fibre
  • *
  • Messages: 243
  • Hauts-de-Seine
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #579 le: 15 mars 2023 à 17:52:03 »
Hello @yeocti

De mémoire, j'ai un caractère non imprimable qui bouffe un offset sans ce que soit exploitable. Je ne sais pas si c'est Orange qui l'ajoute, ou Mikrotik qui fait des chocapic en parsant l'option, j'avoue que je n'ai pas trop cherché.
Tu devrais pouvoir vérifier en modifiant le script pour pick chaque octet et générer un log.
+1

Tu peux lire le log via SSH aussi (/log/print), normalement ton client devrait être compatible UTF-8
« Modifié: 16 mars 2023 à 09:51:16 par fttmeh »

yeocti

  • Abonné Sosh fibre
  • *
  • Messages: 211
  • Plougastel-Daoulas (29)
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #580 le: 15 mars 2023 à 18:45:57 »
De mémoire, j'ai un caractère non imprimable qui bouffe un offset sans ce que soit exploitable.
Tu peux lire le log via SSH aussi (/log/print) pour le lire, normalement ton client devrait être compatible UTF-8

Merci. Je vais étudier ça.
J'en ai profité pour faire un ticket chez Mikrotik histoire d'avoir une fonction pour récupérer les valeurs directement en hexa.

aplufr

  • Abonné Sosh fibre
  • *
  • Messages: 15
    • APLU
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #581 le: 15 mars 2023 à 23:53:41 »
Hello a tous, j'ai perdu l'IPv6 avec mon edgerouter depuis 2/3 jours, j'ai essayé de trouver les info pour éventuellement corriger la config mais je ne vois rien que j'ai raté et je n'arrive pas a trouver le code de retour qui est expliqué en première page... du coup si un œil extérieur à une idée de que j'ai foiré je suis preneur :)

Dans mon dhclient.conf j'ai ça : (les deux chaines rfc3118 et dchp6.auth sont identique), l’adresse mac de la carte réseau et le dhclient-identifier aussi, j'avais fait le fichier il y'a 3-4 avec les info trouvées sur ce forum et jusqu'à présent aucun soucis..

option dhcp6.client-id code 1 = string;
option dhcp6.auth code 11 = string;
option dhcp6.userclass code 15 = string;
option dhcp6.vendorclass code 16 = string;
option dhcp6.vendor-opts code 17 = string;
option rfc3118-auth code 90 = string;

#Replace eth0 with your external interface (VLAN must be 832 for Orange)
interface "eth0.832" {
  send dhcp-client-identifier 01:30:7C:B2:XX:XX:XX;
    send vendor-class-identifier "sagem";
    send user-class "+FSVDSL_livebox.Internet.softathome.Livebox3";
    send rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:1a:xxxxxxxxxxxxxxxx;

        # Orange France specific options
# sagem
        send dhcp6.vendorclass 00:00:04:0e:00:05:73:61:67:65:6d;
# livebox 4
        send dhcp6.userclass 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:34;
# vendor specific information (option 17): entreprise id "Orange" 4 octets 00000558 + 2 octets option code 0006 + 14 octets Option data: 495056365f524551554553544544 ("IPV6_REQUESTED")
        send dhcp6.vendor-opts 00:00:05:58:00:06:00:0e:49:50:56:36:5f:52:45:51:55:45:53:54:45:44;

        #Authentication to Orange France DHCP server (meme valeur pour ipv4)

send dhcp6.auth 00:00:00:00:00:00:00:00:00:00:00:1a:xxxxxxxx;

        #Replace xx:xx:xx:xx:xx:xx with the MAC address of your external interface
        send dhcp6.client-id 00:03:00:01:30:7C:B2:XX:XX:XX;

        request dhcp6.auth, dhcp6.vendor-opts, dhcp6.name-servers, dhcp6.domain-search;
}

Lorsque je fais un requête dhcpv4 j'ai bien une IP qui est retourné par contre en IPv6 le dhclient retourne ça en boucle.

dhclient -6 -d -v -cf dhclient_eth0.832.conf
Internet Systems Consortium DHCP Client 4.1-ESV-R15-P1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on Socket/eth0.832
Sending on   Socket/eth0.832
PRC: Soliciting for leases (INIT).
XMT: Forming Solicit, 0 ms elapsed.
XMT:  X-- IA_NA b2:3d:dd:eb
XMT:  | X-- Request renew in  +3600
XMT:  | X-- Request rebind in +5400
XMT: Solicit on eth0.832, interval 1040ms.
RCV: Advertise message on eth0.832 from fe80::ba0:bab.
RCV:  X-- IA_NA b2:3d:dd:eb
RCV:  | X-- starts 1678919447
RCV:  | X-- t1 - renew  +0
RCV:  | X-- t2 - rebind +0
RCV:  | X-- [Options]
RCV:  | !-- Status code of no addrs, IA_NA discarded.
RCV:  X-- Server ID: 00:03:00:01:14:7b:ac:aa:9a:bf
PRC: Lease failed to satisfy.



J'ai aussi ça dans ip6tables table mangle pour changer le COS

Chain POSTROUTING (policy ACCEPT 110K packets, 21M bytes)
 pkts bytes target     prot opt in     out     source               destination         
   48 11793 CLASSIFY   udp      *      *       ::/0                 ::/0                 udp dpt:547 CLASSIFY set 0:6

Une partie de ma config ipv6 vient de ce thread: https://lafibre.info/remplacer-livebox/ubiquiti-er-ipv6-dhcp6-en-2-x/

Notez que je ne perds pas la connexion IPv4 en faisant mes requêtes dhcpv6 (ce qui ne semble pas correspondre au cas de figuré présenté .. si on respecte pas => ça coupe).

Merci d'avance :)

breizyann

  • Abonné Orange Fibre
  • *
  • Messages: 55
  • Rennes (35)
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #582 le: 17 mars 2023 à 09:14:03 »
@aplufr

Est ce que le DUID est conforme a ce que nous demande @levieuxatorange
Faire attention au DUID (Value, DUID, et DUID type LL) .
Est ce que le Hardware Type est bien ethernet

Voir aussi la cohérence des informations envoyées avec celles du client IPV4

ci-dessous le rappel de @levieuxatorange pour le Client Identifier IPV6
DHCPv6:
Client Identifier
    Option: Client Identifier (1)
    Length: 10
    Value: 0003000144d454XXXXXX
    DUID: 0003000144d454XXXXXX
    DUID Type: link-layer address (3)
    Hardware type: Ethernet (1)
    Link-layer address: 44:d4:54:XX:XX:XX

l'encodage Hexa de ce qui est ci dessus :   00 01 00 0a 00 03 00 01 44 d4 54 XX XX XX

Une capture en Hexa de ce qu'envoie Réellement tout le client ipv6 peut aider à vérifier la conformité avec ce qui est attendu par le serveur dhcp6 de orange.
(bien sur masquer les informations privèes si le résultat est partagé ici)
« Modifié: 17 mars 2023 à 12:28:07 par breizyann »

aacebedo

  • Abonné Orange Fibre
  • *
  • Messages: 16
  • 95
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #583 le: 18 mars 2023 à 14:56:32 »
Hello

De mon coté avec un ER4 en 2.0.9 hotfix 6 chez sosh ca marchait parfaitement depuis des annees
Depuis 3 j je dois relancer la connexion a la main sinon le matin je nai plus de connexion.

Je n'ai configuré que internet (je me fous du tel et de la tv) avec l'ONT directement sur l'ER et seulement en IPV4. Je n'arrive pas a configurer en IPV6 pr le moment, il y a bcp de tutoriaux et j'ai du mal a voir ce qui est encore a jour de ce qui ne l'est pas.

Visiblement il ne faut plus passer par dibbler mais vu que je ne suis pas tres a l'aise avec IPV6 pr le moment je ne vois pas trop ou chercher la raison du problème.

« Modifié: 18 mars 2023 à 15:24:34 par aacebedo »

perl

  • Abonné Orange Fibre
  • *
  • Messages: 29
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #584 le: 19 mars 2023 à 23:41:18 »
On a une idée de comment orange choisis le SALT ?
Random ? Ou il incrémente sans arrêt ?

Comme j'ai des coupures aléatoirement,  j'ai bien envie de tester avec des options 90 et 11 complètement différente a chaque fois.

Apparemment avec le langage de script mikrotik on peut faire pas mal de chose.
https://github.com/merlinthemagic/MTM-RouterOS-Scripting/blob/main/src/v7/Documentation/Tools/Hashing/MD5.md

Citer
[onishin@Styx] > :put ([($toolObj->"get") "lafibre.info"]) ;
79386a71d470aa9fc6d10efe36ed23d7

Citer
$ echo -en "lafibre.info"  | md5sum
79386a71d470aa9fc6d10efe36ed23d7 
-

Je me dis que 1 jour ils vont empêcher le rejeux des requetes

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #585 le: 20 mars 2023 à 08:11:31 »
On a une idée de comment orange choisis le SALT ?
Random ? Ou il incrémente sans arrêt ?

Comme j'ai des coupures aléatoirement,  j'ai bien envie de tester avec des options 90 et 11 complètement différente a chaque fois.

Apparemment avec le langage de script mikrotik on peut faire pas mal de chose.
https://github.com/merlinthemagic/MTM-RouterOS-Scripting/blob/main/src/v7/Documentation/Tools/Hashing/MD5.md
-

Je me dis que 1 jour ils vont empêcher le rejeux des requetes

De mon côté pas de coupure mais je ne suis pas encore migré.
Effectivement, bonne idée pour le salt renew a chaque fois, on pourrait faire un script de connexion dhcp qui set l’option cote dhcp-client avec un nouveau salt (avec un timestamp par exemple).
Avis aux testeurs…

levieuxatorange

  • Expert Orange
  • Expert
  • *
  • Messages: 173
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #586 le: 20 mars 2023 à 08:47:51 »
Je me dis que 1 jour ils vont empêcher le rejeux des requetes
C'est l'idée, il y en a d'autres aussi :)
C'est toujours mieux si vous y arrivez, mais pour le moment pas d'obligation.

Levieux

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
Orange DHCP conformité protocolaire 2023 - lire depuis le début du sujet
« Réponse #587 le: 20 mars 2023 à 10:15:14 »
C'est l'idée, il y en a d'autres aussi :)
C'est toujours mieux si vous y arrivez, mais pour le moment pas d'obligation.

Levieux

Salut,

Je ne comprends pas trop la motivation technique derrière ça. Quel est l'intérêt pour Orange d'empêcher le rejeu ?
Empêcher les gens d'utiliser autre chose que la Livebox ?