Een DNS editor kan meerdere geciteerde fragmenten weergeven zonder meerdere records aan te maken. Omgekeerd kunnen twee rijen voor een persoon als één beleid lijken, terwijl het voor een ontvanger twee onafhankelijke records blijven. Controleer zowel de exacte waarde als de recordgrens voordat u een authenticatierecord correct verklaart.
Lees de DNS weergave
Referenties: RFC 1035 §3.3, RFC 1035 §3.3.14, RFC 7208 §3.3.
RFC 1035 definieert TXT gegevens als een of meer tekenreeksen. Elke tekenreeks is beperkt tot 255 octetten, niet noodzakelijkerwijs 255 weergegeven tekens. Een langere waarde kan meerdere tekenreeksen binnen één record beslaan. De applicatie definieert hoe die gegevens worden geïnterpreteerd. Voor SPF, vereist RFC 7208 expliciet het aaneenschakelen van tekenreeksen binnen een record zonder spaties in te voegen.
Aanhalingstekens in de presentatie van zonebestanden scheiden tekenreeksen af. Het zijn niet automatisch letterlijke aanhalingstekens in de DNS waarde. Het formulier van een provider kan ruwe tekst, de syntaxis van zonebestanden tussen aanhalingstekens of een gestructureerde lijst met tekenreeksen verwachten. Volg het gedocumenteerde invoerformaat en inspecteer het resulterende antwoord in plaats van aanhalingstekens toe te voegen of te verwijderen totdat het scherm er bekend uitziet.
Bewaar spaties en onafhankelijke records
Referenties: RFC 7208 §4.5.
Als een SPF waarde vlak voor een mechanisme wordt gesplitst, behoud dan de scheidingsruimte in een van de strings. Twee aangrenzende tekenreeksen met v=spf1 En ip4:192.0.2.10 -all zou reconstrueren als een ongeldige tokenreeks zonder die spatie. In dit verkeerd opgemaakte voorbeeld is het gereconstrueerde voorvoegsel v=spf1ip4, wat geen geldig SPF versietoken is. Als er geen ander record als SPF -beleid is geselecteerd, is het SPF resultaat nul. Behoud de exacte syntaxis van de toepassing in plaats van aan te nemen dat elke TXT consument op dezelfde manier met witruimte omgaat.
Niet apart aansluiten TXT records alleen maar omdat een parser ze in één verzameling retourneert. Meerdere niet-gerelateerde TXT records bij dezelfde eigenaar zijn normaal. Meerdere records die bij die eigenaar als SPF -beleid zijn geselecteerd, zijn dat niet: SPF retourneert een permanente fout in plaats van hun autorisatielijsten samen te voegen. Bewaar het volledige antwoord en de selectieregel van de applicatie in de diagnose.
Reproduceer een grenstest
Synthetische zone armatuur A bevat één record: example.com . 300 IN TXT " v=spf1 ip4:192.0.2.10" " -all ". Reconstrueer de strings op volgorde zonder bytes toe te voegen. Verwachte SPF -tekst is v=spf1 ip4:192.0.2.10 -all. Het documentatieadres is ter illustratie en mag niet worden gebruikt om een productieafzender te autoriseren.
Fixture B vervangt A door twee records: example.com . 300 IN TXT " v=spf1 ip4:192.0.2.10 -all " En example.com . 300 IN TXT " v=spf1 ip4:192.0.2.20 -all ". De verwachte SPF -selectie bestaat uit meerdere beleidsrecords en een permanente fout. Armatuur C behoudt A en voegt toe example.com . 300 IN TXT "siteverificatie=synthetisch"; het niet-gerelateerde verificatierecord is geen aanvullend SPF beleid.
Laad elk armatuur afzonderlijk in een geïsoleerde testzone. Vraag dig @AUTH example.com . TXT + geen herhaling, waarbij de laboratoriumautoriteit wordt vervangen door AUTH. Bewaar één resourcerecord-object per geretourneerde record en de bijbehorende geordende tekenreekslijst. Een betrouwbaar harnas moet A van B onderscheiden, zelfs als het display een lange output weergeeft. Dit zijn verwachte resultaten, geen gerapporteerde live tests.
Controleer de gepubliceerde waarde
Vergelijk de invoer van de editor, elk gezaghebbend antwoord en een recursief antwoord. Controleer de naam van de eigenaar op een per ongeluk herhaald zone-achtervoegsel. Gebruik een DNS bibliotheek die de recordstructuur behoudt bij het automatiseren van controles; een lijngeoriënteerd tekstschrapen kan de omloop verwarren met recordgrenzen.
Behoud de vorige waarde en goedkeuring vóór een productiewijziging. Test na publicatie het relevante e-mailpad met onschadelijke inhoud en leg authenticatiebewijs vast. De juiste TXT syntaxis stelt een DNS vereiste vast; het bewijst niet dat een dienst berichten ondertekent of dat een ontvanger deze accepteert.
Houd de reikwijdte van het bewijs expliciet
Lokale aaneenschakeling van tekenreeksen bevestigt dat de bewaarde ruimte v=spf1 ip4:192.0.2.10 -all oplevert; Als u dit weglaat, ontstaat het niet-geselecteerde v=spf1ip4 -voorvoegsel. Dit is een tekst-/selectieillustratie, geen uitgevoerde SPF evaluator of live DNS query.