Boot PXE
Date: 2014-11-02
Tags: PXE info réseau serveur vieilleries
Il est possible de booter une machine sans disque dur, ni lecteur cd (ni même de clé usb). Beaucoup de cartes réseaux (j’utilise des 3com 3C905CX) ont une EEPROM qui contient un chargeur de boot réseau. Il y a donc plusieurs parties:
- Serveur DHCP
- Serveur TFTP
- Image(s) PXE
- Boot du noyau
Il faut d’abord configurer le serveur DHCP, pour qu’il donne les paramètres de boot à la machine qui va le lui demander. Pour l’instant, je n’ai pas réussi à configurer dnsmasq pour avoir un serveur tftp sur une autre machine que le serveur dhcp, alors j’ai adapté… Comme le bootloader embarqué dans la carte va charger un autre bootloader (undionly.kpxe), qui lui, va charger le noyau, on va interroger le serveur DHCP deux fois. Ces deux accès sont distingués par le flag “userclass”
dhcp-boot=undionly.kpxe
dhcp-userclass=gPXE-booted,"gPXE"
dhcp-boot=net:gPXE-booted,http://192.168.3.3/pxe/boot.gpxe
dnsmasq est tellement bien fait qu’il a aussi un serveur tftp embarqué. Il suffit de rajouter les lignes suivantes dans le fichier /etc/dnsmasq.conf
enable-tftp
tftp-root=/tmp
Comme le routeur a peu de flash, j’ai mis la raçine du serveur tftp dans /tmp (tmpfs) pour éviter les problèmes. Mais il faut rajouter un script qui télécharge l’image au boot de la machine. undionly.kpxe est une image de gPXE qui permet de booter sur n’importe quel protocole (même http).
Video du boot d’un PC depuis le réseau:
- ← Previous page
Carte odométrie - Next page →
Afficheurs à LEDs
Electronics Électronique puissance semiconducteur semiconductors power Hardware CPE INSA Xavier Bourgeois