Ce script Bash permet de synchroniser automatiquement les baux DHCP actifs de votre FortiGate avec l'outil de gestion d'infrastructure NetBox via son API REST.
-
✨ Récupération automatique des baux DHCP depuis FortiGate (API v2)
-
♻ Déduction automatique du réseau via
ipcalc -
📁 Création du préfixe dans NetBox s'il est absent
-
✅ Ajout ou mise à jour de chaque adresse IP dans NetBox avec :
- Description du type :
DHCP: <hostname> (<mac>) sur <interface> - Tag
RESERVÉE(slugrserv) ajouté si le bail est marqué comme réservé sur FortiGate - Retrait automatique du tag si la réservation est supprimée
- Description du type :
-
Accès API activé sur le FortiGate
-
Un token API NetBox avec droits en écriture sur IPAM
-
Outils installés sur la machine d'exécution :
jqipcalc
- Clonez ce repo
- Modifiez les variables
FORTI_HOST,FORTI_API_KEY,NETBOX_HOSTetNETBOX_API_KEYdans le script - Rendez le script exécutable :
chmod +x sync_fortigate_netbox.shPour exécuter toutes les 2h automatiquement :
crontab -eAjoutez :
0 */2 * * * /chemin/vers/sync_fortigate_netbox.sh >> /var/log/netbox_sync.log 2>&1[INFO] IP: 192.168.1.100 | MAC: aa:bb:cc:dd:ee:ff | Hostname: poste1 | Interface: port3 | Réseau: 192.168.1.0/24
[ACTION] Ajout de l'IP 192.168.1.100 dans NetBox...
[OK] IP 192.168.1.100 traitée avec succès.
Les contributions sont les bienvenues !
Ce projet est fourni sous licence MIT.