Comprendre la syntaxe d’enregistrement DMARC est fondamental pour mettre en œuvre une authentification email efficace. Un enregistrement DMARC (Domain-based Message Authentication, Reporting and Conformance) se compose de balises et de valeurs spécifiques qui indiquent aux serveurs de messagerie récepteurs comment gérer les emails qui échouent l’authentification SPF ou DKIM. Ce guide complet détaille chaque balise DMARC avec des exemples pratiques et des techniques de validation pour vous aider à construire des politiques DMARC infaillibles.
I. Structure de base d’un enregistrement DMARC

Les enregistrements DMARC sont publiés sous forme d’enregistrements DNS TXT au sous-domaine _dmarc.votredomaine.com. La syntaxe de base suit un format de paires balise-valeur séparées par des points-virgules :
"v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; sp=reject; adkim=s; aspf=s"Chaque balise remplit une fonction spécifique dans la définition de la politique d’authentification email de votre domaine. Examinons chaque balise en détail.
II. Balises DMARC obligatoires

v (Version)
Syntaxe : v=DMARC1
Objectif : Spécifie la version DMARC
Obligatoire : Oui (doit être la première balise)
La balise de version doit toujours être DMARC1 et apparaître comme première balise dans votre enregistrement. Aucune autre version n’existe.
Exemple :
v=DMARC1Erreur courante : Utiliser autre chose que DMARC1 entraînera l’ignorance de l’enregistrement.
p (Policy)
Syntaxe : p=none|quarantine|reject
Objectif : Définit l’action en cas d’échec d’alignement de domaine
Obligatoire : Oui
La balise de politique détermine ce que les serveurs récepteurs doivent faire avec les emails qui échouent l’authentification DMARC :
p=none: Surveillance uniquement, aucune action d’applicationp=quarantine: Placer les emails en échec dans le dossier spam/courrier indésirablep=reject: Rejeter purement et simplement les emails en échec
Exemples :
p=none # Phase de surveillance
p=quarantine # Application souple
p=reject # Application complèteBonne pratique : Commencez avec p=none pour la surveillance, progressez graduellement vers p=quarantine, puis p=reject en fonction de l’analyse du trafic légitime.
III. Balises de politique optionnelles
sp (Subdomain Policy)
Syntaxe : sp=none|quarantine|reject
Objectif : Politique pour les messages de sous-domaine
Par défaut : Hérite de la valeur de politique principale
La politique de sous-domaine permet un traitement différent pour les messages provenant de sous-domaines.
Exemple :
v=DMARC1; p=quarantine; sp=rejectCette configuration met en quarantaine les emails du domaine principal en échec mais rejette les emails de sous-domaine en échec.
pct (Percentage)
Syntaxe : pct=1-100
Objectif : Pourcentage de messages auxquels appliquer la politique
Par défaut : 100
Permet un déploiement progressif de la politique en spécifiant quel pourcentage de messages en échec devrait voir la politique appliquée.
Exemples :
pct=25 # Appliquer la politique à 25% des messages en échec
pct=50 # Appliquer la politique à 50% des messages en échec
pct=100 # Appliquer la politique à tous les messages en échec (par défaut)Cas d’usage : Lors du passage de p=none à p=quarantine, commencez avec pct=10 et augmentez progressivement.
IV. Balises d’alignement

adkim (DKIM Alignment)
Syntaxe : adkim=r|s
Objectif : Mode d’alignement de l’identifiant DKIM
Par défaut : r (relaxed – souple)
adkim=r: Alignement souple (correspondance de sous-domaine autorisée)adkim=s: Alignement strict (correspondance exacte du domaine requise)
Exemples :
adkim=r # mail.exemple.com peut signer pour exemple.com
adkim=s # Seul exemple.com peut signer pour exemple.comaspf (SPF Alignment)
Syntaxe : aspf=r|s
Objectif : Mode d’alignement de l’identifiant SPF
Par défaut : r (relaxed – souple)
aspf=r: Alignement souple (correspondance de sous-domaine autorisée)aspf=s: Alignement strict (correspondance exacte du domaine requise)
Exemples :
aspf=r # Return-Path: [email protected] passe pour From: [email protected]
aspf=s # Return-Path doit correspondre exactement au domaine FromV. Balises de rapport
rua (Aggregate Reports)
Syntaxe : rua=mailto:[email protected]
Objectif : Adresse email pour les rapports agrégés
Format : Rapports XML quotidiens avec statistiques d’authentification
Exemples :
rua=mailto:[email protected]
rua=mailto:[email protected],mailto:[email protected]Adresses multiples : Séparez avec des virgules pour la redondance.
ruf (Forensic Reports)
Syntaxe : ruf=mailto:[email protected]
Objectif : Adresse email pour les rapports d’échec
Format : Notifications d’échec individuelles avec échantillons de messages
Exemples :
ruf=mailto:[email protected]
ruf=mailto:[email protected],mailto:[email protected]Note de confidentialité : Les rapports forensiques contiennent le contenu des messages et peuvent avoir des implications en matière de confidentialité.
ri (Report Interval)
Syntaxe : ri=secondes
Objectif : Intervalle de rapport agrégé
Par défaut : 86400 (24 heures)
Exemples :
ri=3600 # Rapports horaires (non recommandé)
ri=86400 # Rapports quotidiens (par défaut)
ri=604800 # Rapports hebdomadairesLimitation : La plupart des récepteurs ignorent cette balise et envoient des rapports quotidiens quoi qu’il arrive.
fo (Forensic Options)
Syntaxe : fo=0|1|d|s
Objectif : Conditions de génération de rapport forensique
Par défaut : 0
fo=0: Générer des rapports lorsque SPF et DKIM échouent tous les deuxfo=1: Générer des rapports lorsque SPF ou DKIM échouefo=d: Générer des rapports lorsque DKIM échouefo=s: Générer des rapports lorsque SPF échoue
Exemples :
fo=1 # Signaler tout échec d'authentification
fo=d # Signaler uniquement les échecs DKIM
fo=s # Signaler uniquement les échecs SPFVI. Exemples avancés d’enregistrement DMARC
Configuration de surveillance
v=DMARC1; p=none; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1Cet enregistrement surveille tout le trafic sans application et génère des rapports agrégés et forensiques.
Application progressive
v=DMARC1; p=quarantine; pct=25; sp=none; rua=mailto:[email protected]; adkim=r; aspf=rApplique la politique de quarantaine à 25% des messages du domaine principal en échec tout en surveillant les sous-domaines.
Application stricte
v=DMARC1; p=reject; sp=reject; rua=mailto:[email protected]; adkim=s; aspf=sApplication complète avec alignement strict pour le domaine principal et les sous-domaines.
Configuration d’entreprise
v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected],mailto:[email protected]; ruf=mailto:[email protected]; pct=100; adkim=s; aspf=r; fo=1; ri=86400Configuration d’entreprise complète avec plusieurs destinations de rapport et politiques d’alignement mixtes.
VII. Erreurs de syntaxe courantes et validation
Erreurs de formatage
Points-virgules manquants :
❌ v=DMARC1 p=reject rua=mailto:[email protected]
✅ v=DMARC1; p=reject; rua=mailto:[email protected]Ordre de balise incorrect (v doit être en premier) :
❌ p=reject; v=DMARC1; rua=mailto:[email protected]
✅ v=DMARC1; p=reject; rua=mailto:[email protected]Valeurs de politique invalides :
❌ p=block
✅ p=reject
❌ p=spam
✅ p=quarantineValidation d’adresse email
Adresses mal formées :
❌ [email protected] # mailto: manquant
✅ rua=mailto:[email protected]
❌ rua=mailto:test@domaine # Domaine invalide
✅ rua=mailto:[email protected]Valeurs de pourcentage
Hors limites :
❌ pct=150 # Au-dessus de 100
✅ pct=100
❌ pct=0 # Zéro non autorisé
✅ pct=1VIII. Techniques de validation d’enregistrement DMARC
Vérification par recherche DNS
dig TXT _dmarc.exemple.com
nslookup -type=TXT _dmarc.exemple.comOutils de validation en ligne
Utilisez des vérificateurs d’enregistrement DMARC pour valider la syntaxe et détecter les erreurs courantes. Ces outils vérifient :
- Le formatage correct des balises
- Les valeurs de politique valides
- La syntaxe des adresses email
- L’état de propagation DNS
Liste de contrôle de validation manuelle
- Balise de version : Vérifiez que
v=DMARC1est en premier - Balise de politique : Confirmez que
p=a une valeur valide - Points-virgules : Vérifiez que toutes les balises sont séparées par des points-virgules
- Format email : Validez le préfixe
mailto:dans les adresses de rapport - Plages numériques : Vérifiez que
pct=est entre 1-100,ri=est un entier positif - Valeurs d’alignement : Confirmez que
adkim=etaspf=utilisent uniquementrous
Test de l’implémentation DMARC
Après publication de votre enregistrement, surveillez les résultats d’authentification via :
- Les rapports agrégés DMARC
- Les journaux de livraison d’emails
- Les services de surveillance tiers
Skysnag Protect simplifie l’implémentation DMARC en fournissant une génération automatisée d’enregistrements, une validation et une surveillance continue pour garantir que vos politiques d’authentification email fonctionnent correctement.
IX. Considérations de configuration avancées
Organisations multi-domaines
Pour les organisations gérant plusieurs domaines, considérez :
- Des adresses de rapport centralisées
- Des niveaux d’application de politique cohérents
- L’héritage de politique de sous-domaine
Intégration de fournisseur de services email
Lors de l’utilisation de services email tiers :
- Vérifiez l’alignement de signature DKIM
- Coordonnez les inclusions d’enregistrement SPF
- Testez l’impact de l’application de politique
Planification de réponse aux incidents
Préparez-vous aux problèmes de livraison liés à DMARC :
- Surveillez les tendances des rapports agrégés
- Établissez des procédures de retour en arrière de politique
- Maintenez un inventaire des expéditeurs légitimes
X. Points clés à retenir
La syntaxe d’enregistrement DMARC nécessite un formatage précis et une considération attentive de l’impact de chaque balise sur la livraison d’emails. Commencez avec des politiques de surveillance utilisant p=none, appliquez progressivement avec p=quarantine et p=reject tout en analysant les rapports agrégés. Configurez des modes d’alignement appropriés en fonction de votre infrastructure email, et validez toujours les enregistrements avant le déploiement. N’oubliez pas que l’efficacité de DMARC dépend d’une bonne implémentation SPF et DKIM parallèlement à une configuration de politique précise.
Comprendre ces règles de syntaxe et techniques de validation permet aux organisations de mettre en œuvre une authentification email robuste qui protège contre l’usurpation d’identité tout en maintenant la livraison d’emails légitimes. Une surveillance régulière et un affinement de la politique garantissent une efficacité continue à mesure que l’infrastructure email évolue.