La Fibre
Fournisseurs d'accès à Internet fixe en France métropolitaine => Bouygues Telecom => Incidents Bouygues => Discussion démarrée par: Romain le 17 novembre 2016 à 00:48:17
-
Bonjour !
Je m'essaie ces jours-ci au boot sur le réseau, c'est-à-dire via PXE, en l'occurrence avec netboot.xyz (http://netboot.xyz)
Pour ceux qui ne connaitraient pas, netboot.xyz est une solution qui permet de booter différents outils de maintenance et différents installeurs d'OS via le réseau et via internet, ce qui dispense de la contraignante phase de préparation d'une clé USB bootable.
netboot.xyz est facile à mettre en œuvre, mais ensuite on peut approfondir et utiliser directement iPXE (http://ipxe.org), sur lequel il repose, avec lequel on peut par exemple faire booter un Raspberry Pi 3 directement sur différents OS. On peut ainsi envisager d'utiliser successivement une distribution pour le cinéma (OSMC (http://osmc.tv) ou LibreELEC (https://libreelec.tv)), puis pour la musique (Volumio (https://volumio.org)), puis un OS généraliste (Raspbian), sans avoir à jongler avec autant de cartes microSD.
Concrètement le boot sur le réseau est assez simple : en plus des habituels paramètres de base (IP, masque de sous-réseau, passerelle et serveur(s) DNS), le serveur DHCP transmet aux clients qui se connectent au réseau local l'adresse IP d'un serveur TFTP et un nom de fichier à charger. Le logiciel dnsmasq sur Linux sait faire les deux à la fois, avec seulement quelques lignes de configuration :
enable-tftp
tftp-root=/var/lib/tftp
dhcp-boot=netboot.xyz.kpxe
dhcp-option=66,192.168.1.1
dhcp-range=192.168.1.1,192.168.1.100,24h
Avec cette configuration, ça fonctionne parfaitement chez moi sur un ordinateur portable relié en Ethernet.
Mais dans mon cas, j'aimerais continuer à utiliser le serveur DHCP du routeur de mon FAI, donc de ma Bbox Ubee TVW620.I, et n'utiliser que la fonction de serveur TFTP de dnsmasq.
Mon fichier de configuration /etc/dnsmasq.conf contient donc seulement :
enable-tftp
tftp-root=/var/lib/tftp
dhcp-boot=netboot.xyz.kpxe
Et sur l'interface d'administration de la Bbox, j'ai été dans Services de la box > DHCP, puis j'ai ajouté les deux options DHCP nécessaires :
Option 66 | TFTP server name | 192.168.1.1
Option 67 | Bootfile name | netboot.xyz.kpxe
Mais lorsque je tente le boot PXE depuis un PC, il reste sur "TFTP…".
Est-ce moi qui fait une erreur, ou y a-t-il un bug dans le firmware de la Bbox ?
À noter que si je configure mon NAS Synology en activant le serveur DHCP ainsi qu'en pointant le boot PXE sur le serveur TFTP externe 192.168.1.1 avec la configuration dnsmasq ci-dessus, ça fonctionne. Autrement dit, ce n'est probablement pas ma configuration dnsmasq qui est en cause.
-
Tu peux booter une VM sans disque dur, avec la carte réseau en mode bridge et le mode PXE activé.
ça te permettrait de voir via Wireshark si les options DHCP 66 et 67 sont bien apprises dans l'architecture réseau où ça ne fonctionne pas.
-
Excellente idée ! On m'a suggéré hier de faire une capture, mais je ne pensais pas pouvoir le faire sans disposer d'un ordinateur à intercaler entre le client et le routeur. Je n'avais pas pensé à la virtualisation.
Je viens donc d'installer Wireshark, VirtualBox et son extension pack (qui ajoute notamment le boot PXE), et d'essayer avec le serveur DHCP de dnsmasq puis avec celui de la Bbox.
Il y a bien un problème avec le serveur DHCP de la Bbox, qui retourne :
TFTP Server Name: \357\277\275\357\277\275\001\001
Contrairement à celui de dnsmasq qui renvoie bien 192.168.1.1.
Est-ce moi qui n'ait pas configuré correctement le serveur DHCP de la Bbox ? Y a-t-il une syntaxe qui m'aurait échappé ? Ou bien est-ce un bug ?
-
Très franchement, tu peux éventuellement passer par Boris, qui est présent sur le forum et travaille chez Bytel pour expliquer ton soucis.
Je ne pense pas qu'évoquer ce problème au support de niveau 1 chez Bouygues soit le plus adéquat.
-
Je viens d'essayer de lui envoyer un message personnel, il semble qu'il les refuse ! :(
-
Il y a une whitelist pour éviter trop de sollicitations.
-
Romain, vous êtes maintenant dans ma whitelist !
Je vais faire remonter votre problème.
-
Bonjour,
Je confirme qu'il s'agit bien d'un bug dans notre soft.
L'option 66 est gérée comme un adresse IP ce qui n'est pas correct (RFC 2132, c'est bien une string).
L'option 150 (TFTP Server address) est elle aussi mal gérée (RFC 5859). Cette fois on la traite comme un string alors que c'est une IP.
Je corrige de mon coté (d'ici ce soir :) ) mais impossible de dire quand la correction sera disponible :(.
Stephane
-
Un autre ingé de chez BT sur le forum, c'est cool !
-
Bon, ben j'ai corrigé de mon coté, les options seront bien gérées dans le futur.
J'esperais avoir trouvé un contournement avec d'autres options mais non.
L'option DHCP 17 root-path pour pour faire les montages NFS (stations diskless), fonctionne elle.
Mais elle ne suffit pas pour le boot...
Stephane
-
Bienvenue Stéphane, et merci d'être intervenu !
Le correctif a-t-il été déployé depuis ?
(Je pourrais tester moi-même, mais j'ai tout désinstallé depuis. J'aimerais donc m'en assurer avant de tout réinstaller, ce qui va me prendre du temps.)
-
Bonjour Romain,
Bonne année et meilleurs voeux à tous.
La correction n'est pas déployée mais au moins elle sera présente dans les prochaines versions majeures (... et ce n'était pas gagné).
A priori, la prochaine Bbox avec la correction sera l'OB1C d'ici 1 ou 2 mois.
Pour les NGx et donc le FTTH les déploiements sont prévus pour Mars/Avril voire un peu après.
Techniquement on peut déployer sur ta Bbox mais le process pour le faire est ... compliqué.
Stephane
-
C'est long, mais je préfère rester sur un firmware utilisateur final de production, merci tout de même pour la proposition ! :)
En revanche, pourquoi n'était-ce pas gagné ? Il semble que corriger le bug n'ait pas demandé beaucoup de ressources ?
-
Up ! Le correctif a-t-il été déployé sur la branche stable grand public depuis le temps ?
-
C'est en cours de déploiement depuis le 1/06.
Le plus long n'est pas de corriger mais convaincre de mettre en prod les corrections.
Sauf erreur de ma part, pour Fast5330 la version est 12.0.36.
Pour Fast3965 et Tvw620I ce doit être une 12.2.? (je me souviens plus du dernier chiffre).
-
Merci pour la réponse éclaire. Et merci d'avoir poussé ce correctif. Pourquoi est-il si long de convaincre de mettre en prod un correctif ? Pour quelle bonne raison ne faudrait-il pas corriger des failles identifiées ?
En tout cas, avant et après redémarrage de la Bbox à l'instant, je reste en 11.3.12. Sur quelle durée s'étalent habituellement les déploiements ?
-
Chaque fois que tu upgrade le firmware d'un gros parc de machine, il y a de la casse et donc du support/mécontentement client à gérer.
-
Pour ma part le firmware a été mis à jour cette nuit pour passer au 12.0.32, le modèle de ma box est le TVW620.I.
-
En tout cas, avant et après redémarrage de la Bbox à l'instant, je reste en 11.3.12. Sur quelle durée s'étalent habituellement les déploiements ?
Je ne sais pas quelle box tu as, mais
Le déploiement de cette mise à jour des Bbox est de façon progressive sur plusieurs semaines (en moyenne 2 semaines), la mise à jour à lieu en général dans la nuit, veillez à ne pas éteindre votre box pour en bénéficier. Il est inutile de contacter le service client pour l’obtenir cela est géré automatiquement par les serveurs de Bouygues Telecom.
Source : bbox-mag.fr (quelque soit la mise à jour poussée ).
Mais le déploiement réel semble avoir commencer la nuit dernière d'après Bbox-mag.fr
-
Salut,
Je suis en train de tester FOG Project sur mon homelab.
Du coup vu que la bbox à pas mal d'option DHCP j'ai essayé les options 66,67 et 150 et rien la VM ne boot pas en réseau, idem pour une machine physique.
Voici les info de ma Bbox
Version du firmware opérationnel 20.2.26
Date du firmware opérationnel 18.08.2021
Version du firmware de secours 20.2.26
Date du firmware de secours 18.08.2021
Version du loader 117.1.3
Version du loader 217.1.3
Version du code-checker17.1.3
J'ai fait une capture wireshark ci joint
les champs semblent correct, donc le correctif à du être appliqué depuis le temps ! ???
-
c'est pxe ou du ipxe ?
le dhcp recu a l'air ok donc le souci est plutôt du coté du contenu du serveur tftp.
rien la VM ne boot pas en réseau
plus précisément ? un message d'erreur ?
-
je n'atteint pas à charger le fichier EFI iPXE ( à ne pas confondre avec pxe)
Sur ma VM sous VMware je retourne à l'écran de boot.
Sur ma machine physique DELL je me retrouve sur un écran m'invitant à sélectionner un autre périphérique de démarrage.
Secure boot désactivé évidemment !
Du coup j'ai essayé via mon Synology en tant que serveur DHCP avec l'ip du serveur TFTP et le fichier de boot de définit, et cela fonctionne bien ( quoique je me retrouve bloqué sur ipxe avec erreur "dhcp wrong server-id" ) j'imagine que je doit tout redémarrer mes devices après avoir changé de serveur DHCP ::)
-
hum faudrait comparer les captures alors ou utilise nmap avec le script qui va bien.
installer nmap (sudo apt install nmap ou adapter a la distro).
sudo nmap --script broadcast-dhcp-discover.nse
C'est plus simple que ce faire une capture car nmap lance une requete dhcp.
Mais ce script n'affiche pas le serveur tftp, il faut le modifier.
j'ai une version modifiée ici: https://dl.nspeed.app/broadcast-dhcp-discover-with-tftp.nse qui affiche aussi le TFTP.
wget https://dl.nspeed.app/broadcast-dhcp-discover-with-tftp.nse
sudo nmap --script broadcast-dhcp-discover-with-tftp.nse
-
Etrange mes options sont bien définie pour le TFTP server Name et le bootfile et ils apparaissent bien via nmap
par contre le IP TFTP server est sur l'ip de ma box et ce même si je les définis sur ma bbox :o
j'ai utilisé le script avec tftp
root@ubuntu-vm:/home/lucas/Documents# sudo nmap --script broadcast-dhcp-discover-with-tftp.nse
Starting Nmap 7.80 ( https://nmap.org ) at 2021-10-13 18:40 CEST
Pre-scan script results:
| broadcast-dhcp-discover-with-tftp:
| Response 1 of 1:
| IP Offered: 192.168.68.15
| IP TFTP Server: 192.168.68.1
| DHCP Message Type: DHCPOFFER
| Server Identifier: 192.168.68.1
| IP Address Lease Time: 2m00s
| Renewal Time Value: 1m00s
| Rebinding Time Value: 1m45s
| Broadcast Address: 192.168.68.255
| Hostname: Host-004
| Interface MTU: 1500
| TFTP Server Name: 192.168.68.140
| Bootfile Name: ipxe.efi
| Domain Name Server: 192.168.68.1
| Domain Name: lan
| Router: 192.168.68.1
|_ Subnet Mask: 255.255.255.0
-
A l'aide de dhcpd je viens de booter une VM sous Proxmox en mode EFI.
Si iPXE ne rencontre aucun problème, le firmware TianoCore EDK2 chargé de récupérer ipxe.efi lors de la première phase du boot ne prend pas en compte l'option 66. L'option 67, par contre, est gérée.
Pour que cela marche, il a fallu utiliser next-server 192.168.100.63; au lieu de (ou en plus de) option tftp-server-name "192.168.100.63";
next-server met l'adresse IP dans le champ SIADDR des paquet DHCP, pas dans la valeur d'une option.
Ne me demandez pas pourquoi cela marche ainsi. ::)