Obwohl im Domain Name System (DNS) normalerweise IP-Adressen oder Hostnamen gespeichert werden, ist es mit TXT-Records auch möglich, beliebige Zeichenketten auszuliefern.
Eine oder mehrere Zeichenketten eines TXT-Records können jeweils bis zu 255 Zeichen beinhalten und werden durch doppelte Anführungszeichen abgegrenzt.¹
1 - Aufbau
1.1 - Doppelte Anführungszeichen
Die Zeichenkette eines TXT-Records muss zwingend in doppelte Anführungszeichen gesetzt werden.
Bei manchen Anbietern geschieht dies automatisch, es ist keine manuelle Angabe im DNS-Manager notwendig. Im Domain Manager Pro von internex müssen die doppelten Anführungszeichen " vor und nach dem Text zwingend gesetzt werden, das Speichern ist ohne doppelte Anführungszeichen nicht möglich.
Nachfolgend finden Sie ein Beispiel für einen TXT-Record mit doppelten Anführungszeichen:
subdomain.domain.tld. 300 IN TXT "dieser Text steht in doppelten Anfuehrungszeichen"
1.2 - Längenbeschränkungen
String-Zeichenketten in einem TXT-Eintrag können bis zu 255 Zeichen enthalten. Möchten Sie einen längeren String speichern muss dieser mit einem Leerzeichen in zwei (oder mehrere) Textstrings aufgeteilt und die einzelnen Blöcke jeweils in doppelte Anführungszeichen gesetzt werden.
Beispiel für einen Eintrag mit 255+ Zeichen:
subdomain.domain.tld. 3600 IN TXT "Zeichenkette 1" "Zeichenkette 2"
Die Längenbeschränkung ist besonders bei langen DKIM-Schlüsseln relevant. Wenn Sie also einen DKIM-Schlüssel mit 2.048-Bit (oder mehr) als TXT-Record speichern möchten, können Sie ihn nicht als einzelnen Textstring in einen Eintrag mit maximal 255 Zeichen einfügen.
Führen Sie in diesem Fall folgende Schritte durch:
Trennen Sie die Zeichenkette mit Leerzeichen an beliebigen Stellen in mehrere Teile auf die maximal 255 Zeichen lang sind
Umschließen Sie jeden Teilstring mit doppelten Anführungszeichen
Fügen Sie diese Kette nun in das Feld „TXT Wert“ ein
1.3 - Zulässige Zeichen
In TXT-Records ist grundsätzlich die Verwendung aller druckbaren ASCII-Zeichen zulässig (Codes 33 bis 126). Bei uns im Domain Manager Pro wurden einige Zeichen jedoch aus Sicherheitsgründen deaktiviert. Bei unzulässigen Zeichen wird im Domain Manager Pro ein Fehler angezeigt.
Leerzeichen können verwendet werden, ihre Relevanz hängt jedoch von der jeweiligen Anwendung ab. Umlaute sind in TXT-Records nicht zulässig.
1.4 - Mehrere TXT-Records pro Domain/Subdomain
Es ist erlaubt, mehrere TXT-Records für dieselbe Domain zu setzen.
Manche Systeme (z. B. SPF) erfordern jedoch nur einen gültigen Eintrag, mehrere SPF-Einträge können Probleme verursachen. Hinweis: Für SPF immer alles in einem einzigen TXT-Eintrag kombinieren, statt mehrere SPF-Records anzulegen.
1.5 - Case Sensitivity
TXT-Werte sind in der Regel case-sensitive.
Beispiel: Bei DKIM muss der öffentliche Schlüssel exakt in der richtigen Schreibweise eingetragen werden.
2 - Beispiele
TXT-Records sind vielseitig einsetzbar. Nachfolgend finden Sie einige Beispiele:
SPF (Sender Policy Framework): Ein SPF dient der Hinterlegung von IP-Adressen oder Hostnamen, welche für den Mailversand berechtigt sind.²
Aufgebaut ist ein SPF als TXT-Record z. B. wie folgt:
domain.tld. 300 IN TXT "v=spf1 include:xserv9999.hybridserver.at -all"
DKIM (DomainKeys Identified Mail): Ein DKIM dient der Verifizierung einer E-Mail über kryptographische Schlüssel. Der private Schlüssel wird am Mailserver gespeichert und fügt bei ausgehenden E-Mails eine digitale Signatur hinzu. Der öffentliche Schlüssel ist als TXT-Record in der DNS-Zone der Domain gespeichert.³
Aufgebaut ist ein DKIM als TXT-Record z. B. wie folgt:
default._domainkey.domain.tld. 300 IN TXT "v=DKIM1;p=WUHZBDufizgeuzfgeszfgsfzegfgzuefgzusegfg37rgfz3gfhg3fiuh8guhz2gfruzghkgfhbfzf8f8fuzhhiuhh9hc9uhchcjckghhcg1gkhkhchkjchkyhhylvjkhkjvhruiowivhjllsjdhfuivweh=="
DMARC (Domain-based Message Authentication, Reporting and Conformance): DMARC baut auf SPF und DKIM auf, indem es festlegt, wie der Empfänger-Mailserver die Authentifizierung von E-Mails durchführen soll und wie bei einem Fehler vorzugehen ist.⁴
Aufgebaut ist ein DMARC als TXT-Record z. B. wie folgt:
_dmarc.domain.tld. 300 IN TXT "v=DMARC1;p=none;rua=mailto:[email protected]"
Verifizierungs-Records: Um gegenüber bestimmten Anbietern zu verifizieren, dass die Domain wirklich Ihnen gehört und Sie die Kontrolle darüber haben, ist es vereinzelt notwendig, TXT-Records mit einem Verifizierungscode zu erstellen.
Nachfolgend ein Beispiel für einen Verifizierungs-TXT-Record:
internex-verify.domain.tld. 300 IN TXT "internex-fihu3jofo4n89foixjvjidjvi0skjivjs0"
Quellen: