J'avance, mais vraiment tout doucement, et toujours pas d'IPv6
La Dream Machine Pro utilise l'outil /usr/sbin/odhcp6c comme client DHCPv6 (devéloppé par openwrt)
Les options utilisées avec un préfixe à 56, le VLAN 832 et la COS à 6, lorsque l'on l'utilise via la GUI, sort ça :
/usr/sbin/odhcp6c -e -v -s /usr/share/ubios-udapi-server/ubios-odhcp6c-script -D -k -P 56 -K 6 eth9.832
Quand on regarde les options disponibles dans l'outil, on a ça :
Usage: odhcp6c [options] <interface>
Feature options:
-S <time> Wait at least <time> sec for a DHCP-server (0)
-D Discard advertisements without any address or prefix proposed
-N <mode> Mode for requesting addresses [try|force|none]
-P <length> Request IPv6-Prefix (0 = auto)
-F Force IPv6-Prefix
-V <class> Set vendor-class option (base-16 encoded)
-u <user-class> Set user-class option string
-x <opt>:<val> Add option opt (with value val) in sent packets (cumulative)
Examples of IPv6 address, string and base-16 encoded options:
-x dns:2001:2001::1,2001:2001::2 - option 23
-x 15:office - option 15 (userclass)
-x 0x1f4:ABBA - option 500
-x 202:'"file"' - option 202
-c <clientid> Override client-ID (base-16 encoded 16-bit type + value)
-i <iface-id> Use a custom interface identifier for RA handling
-r <options> Options to be requested (comma-separated)
-R Do not request any options except those specified with -r
-s <script> Status update script (/usr/sbin/odhcp6c-update)
-a Don't send Accept Reconfigure option
-f Don't send Client FQDN option
-k Don't send a RELEASE when stopping
-K <sk-prio> Set packet kernel priority (0)
-t <seconds> Maximum timeout for DHCPv6-SOLICIT (120)
-m <seconds> Minimum time between accepting RA updates (3)
-L Ignore default lifetime for RDNSS records
-U Ignore Server Unicast option
Invocation options:
-p <pidfile> Set pidfile (/var/run/odhcp6c.pid)
-d Daemonize
-e Write logmessages to stderr
-v Increase logging verbosity
-h Show this help
Je me pose plusieurs questions :
- Pour le Vendor class, faut il passer l'option avec -x ou -r ou bien directement via -V ? Par contre, il précise clairement que ça doit être encodé en base-16 / HEX
- Pour le user-class, même interrogation, passer par l'option -u, ou bien en précisant le numéro de l'option via -x ou -r, et là, il ne précise pas s'il faut du HEX ou autre...
- Comment spécifier l'authentification (option 11) car pour le coup, je ne vois aucune option spécifique pour cela, donc j'imagine que ça doit être spécifié via -x ou -r
- Toujours la même interrogation pour le client ID, dois-je passer par l'option -c, est ce que j'entre le DUID en HEX
- L'option 6, je ne la comprends pas vraiment, et donc, pas non plus comment la spécifier avec l'outil, visiblement, sa valeur est une constante pour tous les clients si j'ai bien compris? (000b001100170018)
- Comment encoder le DUID, ce n'est pas clair pour moi, sur un site on voit qu'il faut "00:03:00:01:01:XX:XX:XX:XX:XX:XX where XX is the MAC address" mais sur le post2 de ce thread, on voit plutot "00030001XXXXXXXXXXXX" Laquelle est la bonne?
- Quelles différences entre -x et -r, et laquelle des 2 pour spécifier les options, je n'ai pas vraiment trouvé d'info claire là dessus
- Quelles option sont à encoder en HEX (base-16), et doit-t-on les entrer avec les ":" ou sans
- Quelles options obligatoires
Et mon plus gros problème : Je n'arrive pas à trouver comment récupérer les logs du DHCP, donc je n'ai aucune indication pour chacun de mes tests à part tester si une IPv6 est attribuée ou non via la commande "ip -6 addr show scope global"
Compliqué donc de trouver la bonne commande, car ça fait un paquet de possibilités avec trop d'inconnues

Si quelqu'un arrive à m'éclairer
