diff --git a/pxe-server/configuration.nix b/pxe-server/configuration.nix index 5c823d0..8136bb6 100644 --- a/pxe-server/configuration.nix +++ b/pxe-server/configuration.nix @@ -59,6 +59,7 @@ in # le résolveur DNS normal (DHCP/NetworkManager). resolveLocalQueries = false; settings = { + bind-dynamic = true; # ne pas exiger que l'interface existe au démarrage port = 0; # pas de résolution DNS, uniquement DHCP/TFTP/PXE inherit interface; "enable-tftp" = true; @@ -99,6 +100,14 @@ in }; }; + # Attend que le réseau soit vraiment prêt avant de démarrer (en plus de + # bind-dynamic ci-dessus, qui gère le cas où l'interface apparaît encore + # plus tard, ex. carte USB). + systemd.services.dnsmasq = { + after = [ "network-online.target" ]; + wants = [ "network-online.target" ]; + }; + systemd.tmpfiles.rules = [ "d ${tftpRoot} 0755 dnsmasq dnsmasq -" "d ${webroot} 0755 caddy caddy -"