Module 5 · 5.1
Nederlands
Reverse DNS en je verzendserver
Module 5: Reputatie en de grote ontvangers · Leestijd: 9 minuten
Leerdoel: Na deze les kun je uitleggen waarom het IP-adres van de server die jouw mail verstuurt een nette reverse DNS moet hebben, vaststellen welke server dat bij jou is, en controleren of heen en terug kloppen.
Kernbegrippen: verzendserver, PTR-record, forward-confirmed reverse DNS (FCrDNS), HELO/EHLO-naam, generieke naam, gedeelde hosting, eigen server (VPS), eigenaar van het IP-blok
Welke server verstuurt jouw mail eigenlijk?
In module 4 ging het over je domein: SPF, DKIM en DMARC staan in de DNS van example.com. In deze module kijken we naar iets anders: de server die je mail aflevert bij de ontvanger. Die server heeft een IP-adres, en ontvangers beoordelen dat adres los van je domein.
Welke server dat is, hangt af van hoe je mailt:
| Hoe je mailt | Wie de verzendserver beheert |
|---|---|
| Mailprogramma met de SMTP-server van je hostingpakket | Je hostingbedrijf |
| Microsoft 365, Google Workspace, een andere maildienst | Die maildienst |
| Nieuwsbriefdienst, boekhoudpakket, webwinkelplatform | Die dienst (of een dienst die zij inhuren) |
| Website die via SMTP inlogt op je mailbox | Je hostingbedrijf of maildienst |
| Eigen mailserver op een VPS of op kantoor | Jij zelf (en voor de PTR: de eigenaar van het IP-adres) |
Het IP-adres van de verzendserver vind je in de kopregels van een mail die je naar jezelf of naar een ander adres hebt gestuurd (les 1.5). Kijk naar de bovenste Received:-regel die door de ontvangende server is toegevoegd. Daarin staat iets als:
Received: from smtp.hosting.example (smtp.hosting.example [192.0.2.25])
by mx.example.net with ESMTPS id 4f2a...Het adres tussen vierkante haken, 192.0.2.25, is het IP-adres waarmee de verzendende server verbinding maakte. De naam ervoor (smtp.hosting.example) is de naam die de ontvanger bij dat adres vond via reverse DNS.
Reverse DNS in het kort
Reverse DNS koppelt een IP-adres terug aan een naam, met een PTR-record. De basis leerde je in de DNS-cursus (les 4.6): het record staat niet in de zone van je domein maar in de reverse zone van het IP-adres, en die is van de partij die het IP-blok beheert.
Voor e-mail zijn drie dingen belangrijk:
- Er is een PTR. Een IP-adres zonder reverse DNS lijkt op een willekeurige machine op internet. Gmail weigert zulke mail met de melding
550 5.7.25 ... the sending IP address doesn't have a PTR record. - De naam wijst terug naar hetzelfde adres. Het IP-adres
192.0.2.25heeft PTRsmtp.hosting.example, ensmtp.hosting.exampleheeft A-record192.0.2.25. Dat heet forward-confirmed reverse DNS (FCrDNS). Gmail, Yahoo en T-Online noemen dit uitdrukkelijk in hun eisen. - De naam ziet eruit als een mailserver. Een naam als
192-0-2-25.dsl.provider.exampleofhost25.dynamic.provider.exampleverraadt een thuis- of klantaansluiting. Spamfilters geven daar punten voor, of weigeren de verbinding meteen.
Voor IPv6 geldt alles opnieuw. Verstuurt een server via IPv6, dan moet ook het IPv6-adres een PTR hebben en terugwijzen met een AAAA-record. Een server die via IPv4 netjes is maar via IPv6 niet, krijgt vooral bij Gmail problemen: Google noemt een ontbrekende IPv6-PTR als oorzaak van een "IPv6 authorization error".
De HELO-naam
Als een server verbinding maakt, stelt hij zich voor met EHLO (of het oudere HELO) en een naam (les 1.2). RFC 5321 zegt dat dat de volledige naam van de server hoort te zijn. In de praktijk kijken ontvangers of die naam:
- een echte, bestaande naam is (geen
localhost, geen kale IP-adressen, geen naam die niet in de DNS staat); - past bij de reverse DNS, of in elk geval bij hetzelfde domein hoort.
Bij een hostingpakket of maildienst regelt de beheerder dit. Draai je zelf een mailserver, dan stel je de HELO-naam in je mailsoftware in (in Postfix heet dat myhostname) en zorg je dat die naam, de PTR en het A-record allemaal gelijk zijn.
Gedeelde hosting: de PTR hoeft niet jouw domein te zijn
Een veelgestelde vraag: "Moet de reverse DNS niet mail.example.com zijn, want dat is mijn domein?" Nee. Bij gedeelde hosting en bij grote maildiensten verstuurt één server mail voor honderden of duizenden domeinen. Het IP-adres kan maar één PTR hebben, en die bevat dus de naam van de server zelf, bijvoorbeeld server12.hosting.example.
Dat is goed zo. Ontvangers controleren of de PTR bestaat, terugwijst en niet generiek is. Ze controleren niet of je eigen domeinnaam erin staat. De koppeling tussen jouw domein en de server leg je met SPF (de server staat in je SPF) en DKIM (de server ondertekent namens jouw domein).
Bij WebOké is dat bijvoorbeeld zo geregeld: de servers van een hostingpakket hebben een reverse DNS met de naam van de server zelf, onder webawere.nl, die ook weer terugwijst. Bij andere hostingbedrijven en maildiensten werkt het op dezelfde manier, met hun eigen servernamen.
Een eigen server: wat moet jij regelen?
Verstuur je mail rechtstreeks vanaf een eigen server, bijvoorbeeld een VPS met een webwinkel of een eigen mailserver, dan ben je zelf de verzender en moet je meer regelen:
- Kies een naam, bijvoorbeeld
mail.example.com. - Maak het A-record (en AAAA-record) van die naam naar het IP-adres van de server, in de DNS van je domein.
- Vraag de PTR aan bij de aanbieder van de server. Meestal staat in het klantpaneel een veld "Reverse DNS" of "rDNS". Daar vul je dezelfde naam in.
- Stel de HELO-naam van je mailsoftware in op diezelfde naam.
- Zet het IP-adres in je SPF (
ip4:enip6:) en zet DKIM aan in je mailsoftware. - Controleer of poort 25 uitgaand open is. Veel aanbieders zetten die standaard dicht om misbruik te voorkomen; dan moet je hem laten openzetten, of via een relay van je aanbieder of een verzenddienst versturen.
Een mailserver op een gewone internetaansluiting thuis of op kantoor is bijna altijd een slecht idee. Die adressen staan vaak op lijsten van "eindgebruikersadressen" (zoals de Policy Block List van Spamhaus, les 5.2), de PTR kun je meestal niet zelf kiezen, en T-Online schrijft letterlijk voor dat zulke systemen via een relay van een geschikte aanbieder moeten versturen.
Controleren
Met een opdrachtvenster (DNS-cursus les 8.2):
dig -x 192.0.2.25 +short
smtp.hosting.example.
dig A smtp.hosting.example +short
192.0.2.25Komt bij de tweede vraag hetzelfde adres terug, dan klopt FCrDNS. Bij IPv6 doe je hetzelfde met dig -x 2001:db8::25 en dig AAAA.
Je kunt ook kijken hoe een ontvanger het zag. In de kopregels zet de ontvangende server de naam die hij vond tussen haakjes achter from. Staat daar unknown, dan vond hij geen PTR. Sommige servers zetten er ook een eigen controle bij, zoals iprev=pass in de regel Authentication-Results: (RFC 8601).
Samenvatting
- De verzendserver is de server die je mail bij de ontvanger aflevert. Ontvangers beoordelen zijn IP-adres los van je domein.
- Dat IP-adres heeft een PTR nodig die terugwijst naar hetzelfde adres (FCrDNS), voor IPv4 én IPv6, met een naam die niet generiek is.
- De HELO-naam hoort een bestaande naam te zijn die bij de PTR past.
- Bij gedeelde hosting en maildiensten staat de naam van de server in de PTR, niet jouw domein. Dat is goed.
- Met een eigen server regel je zelf naam, A/AAAA, PTR (via je aanbieder), HELO, SPF en DKIM.
Quiz
Opdracht
Opdracht Z5.1: De verzendserver van je eigen domein. Stuur een mail vanaf je eigen adres naar een ander adres van jezelf (bijvoorbeeld een Gmail- of Outlook.com-adres) en open de kopregels. Zoek het IP-adres van de server die de mail afleverde, de PTR-naam van dat adres, en vul in of de naam terugwijst naar hetzelfde adres (ja/nee). Heb je geen eigen domein, gebruik dan het IP-adres van de mailserver mx00.t-online.de. Het programma vraagt de PTR en het A/AAAA-record live op en vergelijkt.
Verder lezen
De stappen in deze artikelen gelden voor de panelen van WebOké; bij andere aanbieders werkt het vergelijkbaar.
- Mail versturen vanaf je VPS en reverse DNS instellen
- Gratis DNS-cursus 4.6: Reverse DNS (PTR): van nummer terug naar naam
- Uitleg verzendproces van emails / SMTP
- RFC 5321 (SMTP), paragraaf 4.1.1.1 over de EHLO-naam; RFC 8601 over de kopregel Authentication-Results
