---
name: feedback_kea_cancelled
description: Le champ cancelled=1 dans dhcp4_options (Config Backend MySQL) ne supprime pas l'option, il l'envoie vide — utiliser 0.0.0.0 à la place
metadata:
  type: feedback
---

Ne pas utiliser `cancelled=1` dans `dhcp4_options` pour simuler `never-send` sur l'option 3 (routers).

**Why:** Kea 2.4 (schema v30) avec Config Backend MySQL envoie l'option avec `Length: 0` au lieu de ne pas l'envoyer. Windows refuse le bail ou affiche une gateway vide. Le `never-send` via `cancelled=1` CB ne fonctionne pas comme le `never-send: true` en JSON fichier.

**How to apply:** Pour qu'un hôte ne reçoive pas de gateway, insérer `formatted_value = '0.0.0.0'` sur l'option 3 scope=4 (constante `Reservation::NO_GATEWAY_VALUE`). Windows interprète `0.0.0.0` comme "pas de gateway" et l'ignore. En mode FreeBSD (kea-sync-from-db.py), détecter `0.0.0.0` et générer `"never-send": true` dans le JSON. Côté code, le flag applicatif est `$data['no_gateway']` (booléen) passé à `Reservation::add()/update()`. Voir project_csv_no_gateway.md.

**Validé en prod** (14 juillet 2026) : l'utilisateur a testé le no-gateway sur le serveur AlmaLinux de prod (Kea + MySQL) sur un hôte — fonctionne sans souci. La mécanique 0.0.0.0 est confirmée et **ne doit pas être changée** (consigne explicite de l'utilisateur).
