- Windows Server
DhcpSrvLog-<jour>.log C:\Windows\System32\dhcp\DhcpSrvLog-<jour>.log
DhcpSrvLog-<jour>.log : journal d'audit du serveur DHCP, un fichier texte par jour de la semaine (baux, renouvellements, refus). Retrouve qui avait quelle IP.
À quoi ça sert
Les fichiers DhcpSrvLog-*.log sont le journal d’audit du rôle serveur DHCP. Ils tracent les attributions, renouvellements, libérations et refus de baux, les étendues épuisées et les arrêts du service. On les ouvre pour savoir quelle machine (adresse MAC, nom d’hôte) avait quelle adresse IP à un instant donné.
Ce qu’il contient
Un fichier par jour de la semaine : DhcpSrvLog-Mon.log, DhcpSrvLog-Tue.log, etc. (noms de jour en anglais). Les fichiers IPv6 s’appellent DhcpV6SrvLog-*.log. Chaque ligne décrit un événement : code, date, heure, description, adresse IP, nom d’hôte, adresse MAC, puis d’autres champs selon la version.
Codes courants : 10 (nouveau bail), 11 (renouvellement), 12 (libération), 13 (adresse déjà utilisée), 14 (étendue épuisée), 15 (refus). Les codes 00, 01 et 02 marquent le démarrage, l’arrêt et la suspension du journal faute de place disque.
Risques et bonnes pratiques
- Noms d’hôtes et adresses MAC identifient des postes : limitez les droits d’accès à ces fichiers.
- Chaque fichier est réécrit la semaine suivante. Pour garder plus de sept jours, copiez-les vers un stockage central avant l’écrasement.
- Ne les éditez pas pendant que le service tourne. Pour changer le chemin ou les limites, utilisez
Set-DhcpServerAuditLog. - Quand l’espace libre du volume passe sous le seuil configuré (20 Mo par défaut), le service suspend la journalisation : un disque presque plein fait perdre des événements sans erreur visible.
Commandes utiles
# Paramètres d'audit actuels (chemin, taille maximale, espace disque minimal)Get-DhcpServerAuditLog
# Dernières lignes du journal du jour (en administrateur)Get-Content -Path "$env:windir\System32\dhcp\DhcpSrvLog-$((Get-Date).ToString('ddd', [Globalization.CultureInfo]::InvariantCulture)).log" -Tail 30
# Chercher les événements d'un hôte ou d'une adresse MACSelect-String -Path "$env:windir\System32\dhcp\DhcpSrvLog-*.log" -Pattern 'NOMHOTE'
# Les nouveaux baux (code 10) du lundi sous forme d'objets$h = 'ID','Date','Time','Description','IP Address','Host Name','MAC Address'Get-Content "$env:windir\System32\dhcp\DhcpSrvLog-Mon.log" | Where-Object { $_ -match '^\d' } | ConvertFrom-Csv -Header $h | Where-Object ID -eq 10Format
Texte brut, valeurs séparées par des virgules, avec un en-tête explicatif au début du fichier. Les champs disponibles dépendent de la version de Windows Server.
Rotation et archivage
La rotation est automatique : le service écrit dans le fichier du jour courant, qui est réutilisé la semaine suivante. La taille maximale cumulée (70 Mo par défaut) et la vérification de l’espace disque se règlent avec Set-DhcpServerAuditLog ou dans les propriétés du serveur DHCP. Copiez les fichiers pour les archiver.
Comment le lire
Un éditeur ou Get-Content suffisent pour une recherche rapide. Pour une analyse, importez les lignes de données avec ConvertFrom-Csv et des en-têtes explicites, comme ci-dessus. La table des codes d’événements est dans l’en-tête de chaque fichier.