Module 8 · 8.2
Nederlands
IMAP-synchronisatie en de MX-overstap
Module 8: Verhuizen en je domein op orde · Leestijd: 12 minuten
Leerdoel: Na deze les kun je mailboxen met een IMAP-synchronisatie kopiëren, de MX-overstap uitvoeren en met DNS-opvragingen controleren dat nieuwe mail op de goede plek binnenkomt.
Kernbegrippen: IMAP-synchronisatie (imapsync), bron en doel, mappen koppelen (Sent/Verzonden), eerste en tweede ronde, dubbelen voorkomen, Message-ID, quota en grote bijlagen, MX-wijziging, TTL en caches, overgangsperiode, oude server tijdelijk via servernaam bereiken, apparaten omzetten, mail.<domein> wijst al naar de nieuwe server
Hoe een IMAP-synchronisatie werkt
Een IMAP-synchronisatie is een programma dat op twee mailboxen tegelijk inlogt: de bron (de oude mailbox) en het doel (de nieuwe). Het leest de lijst met mappen in de bron, maakt die mappen in het doel aan, en kopieert per map elk bericht dat in het doel nog ontbreekt. Het bekendste programma is imapsync, een open-source programma dat veel aanbieders achter hun migratietool gebruiken.
Belangrijk om te weten:
- Er wordt gekopieerd, niet verplaatst. In de bron verandert niets. Daarom kun je in alle rust kopiëren terwijl de oude mailbox gewoon blijft werken.
- Een tweede ronde slaat over wat er al is. Het programma herkent berichten die al in het doel staan, meestal aan de
Message-ID-kopregel plus een paar andere kopregels. Daardoor kun je zo vaak synchroniseren als je wilt zonder dat je dubbelen krijgt. - Vlaggen gaan mee: gelezen, beantwoord, gemarkeerd. Daardoor ziet de nieuwe mailbox er hetzelfde uit.
- Het doel moet groot genoeg zijn. Stopt de synchronisatie halverwege, dan is de nieuwe mailbox vaak vol. Vergroot de quota en start opnieuw: hij gaat verder waar hij was.
Mappen koppelen: Verzonden is niet altijd Verzonden
Elke aanbieder noemt de speciale mappen anders. Bij de een heet de map met verstuurde mail Sent, bij de ander Sent Items, Verzonden items of INBOX.Sent. Gmail heeft geen echte mappen maar labels, en toont ze via IMAP als mappen zoals [Gmail]/Verzonden berichten en [Gmail]/Alle berichten.
Zonder koppeling krijg je in de nieuwe mailbox een map Sent Items naast de eigen map Verzonden, en je mailprogramma gebruikt maar een van de twee (les 3.1). Goede migratietools koppelen de speciale mappen automatisch; imapsync heeft daar de optie --automap voor, en met --regextrans2 kun je zelf namen omzetten. Kijk na de eerste ronde of je verstuurde mail in de goede map staat.
Twee aandachtspunten bij Gmail:
- Alle berichten (
[Gmail]/All Mail) bevat alle mail, ook alles wat in andere labels staat. Kopieer je die map mee, dan krijg je alles dubbel. Sla hem meestal over, behalve als je mail hebt die alleen gearchiveerd is. - Een bericht met drie labels staat via IMAP in drie mappen, en wordt dus drie keer gekopieerd. Dat is zo bedoeld, maar het telt wel mee voor je opslag.
Mappen met agenda-items of contactpersonen (bij Microsoft 365 en Exchange zie je die via IMAP soms ook) kunnen niet als mail gekopieerd worden. Een goede tool slaat ze over en meldt dat.
De eerste ronde
Start de eerste ronde ruim voor de MX-overstap, als de nieuwe mailboxen klaarstaan. Je hebt per mailbox nodig:
- de IMAP-server van de bron (bijvoorbeeld
imap.mailprovider.example, of de servernaam van je oude hostingpakket); - het adres en wachtwoord (of app-wachtwoord, of een Microsoft-login, les 8.1) van de bron;
- het adres en wachtwoord van het doel, en de servernaam van de nieuwe aanbieder.
Een valkuil: staat je oude IMAP-server ingesteld als mail.example.com, en heb je de DNS al verhuisd? Dan wijst mail.example.com misschien al naar de nieuwe server, en kopieert het programma van de nieuwe naar de nieuwe mailbox. Gebruik voor de bron daarom de vaste servernaam van je oude aanbieder (die staat in je oude welkomstmail of klantpaneel), niet een naam onder je eigen domein.
Grote mailboxen met veel bijlagen duren lang: reken op uren voor vele gigabytes. Laat het programma gewoon lopen; de meeste tools gaan na een onderbreking verder waar ze waren.
De MX-overstap
Zijn de mailboxen gekopieerd en staan de records voor SPF, DKIM en DMARC klaar (les 8.1, stap 3)? Dan zet je de MX-records om naar de waarden die de nieuwe aanbieder opgeeft. Daarna:
- Controleer bij de gezaghebbende nameserver of de nieuwe MX er staat. Dat zie je meteen, zonder cache:
$ dig +short NS example.com
ns1.dns.example.
ns2.dns.example.
$ dig +norecurse MX example.com @ns1.dns.example.
;; ANSWER SECTION:
example.com. 300 IN MX 10 mx1.newprovider.example.
example.com. 300 IN MX 20 mx2.newprovider.example.- Controleer bij een publieke resolver wat de rest van internet ziet. Krijg je daar nog de oude waarde, dan heeft die resolver hem nog in zijn cache tot de TTL verloopt:
$ dig MX example.com @9.9.9.9
example.com. 212 IN MX 10 mx.oldprovider.example.Het getal (212) is de resterende tijd in seconden. Na die tijd vraagt de resolver opnieuw.
- Stuur een testmail van een adres buiten je domein (bijvoorbeeld een gratis maildienst, of vanaf je telefoon via mobiel internet) en kijk of hij in de nieuwe mailbox binnenkomt. In de kopregels (les 1.5) zie je bij de bovenste
Received-regels via welke server hij binnenkwam.
De overgangsperiode
Tijdens de overgang komt mail soms nog bij de oude server binnen: van verzenders wier resolver de oude MX nog kent, en van servers die een bericht in hun wachtrij hadden staan voor de oude server. Dat is geen probleem, zolang de oude mailbox blijft bestaan. Twee manieren om niets te missen:
- Tweede synchronisatieronde een dag na de overstap (of later, afhankelijk van de oude TTL). Die neemt alleen de nieuwe berichten mee. Bij een domeinverhuizing met nameserverwissel is het verstandig nog een ronde te doen na twee of drie dagen.
- Of tijdelijk beide mailboxen in je mailprogramma, met de oude via de vaste servernaam van de oude aanbieder. Zo zie je eventuele achterblijvers direct.
Mail die je in deze periode verstuurt, gaat via de uitgaande server die op je apparaat is ingesteld. Zorg dat SPF in deze periode beide aanbieders bevat, anders kan je mail via de "verkeerde" server bij de ontvanger slechter scoren.
Apparaten omzetten
Stel op elk apparaat de nieuwe mailbox in als nieuw account met IMAP en de gegevens van de nieuwe aanbieder (module 2). Verwijder daarna het oude account. Waarom niet het bestaande account aanpassen? Omdat het programma dan soms de oude lokale kopie probeert te synchroniseren met de nieuwe mailbox, wat dubbelen of verdwenen mappen kan geven.
Vergeet niet:
- Oude accounts snel verwijderen. Een telefoon in een la die steeds met een oud wachtwoord probeert in te loggen, kan bij de oude of de nieuwe aanbieder een tijdelijke IP-blokkade veroorzaken (les 3.4). Dan werkt ineens niets meer op dat netwerk.
- Alles wat via SMTP mailt: website, webwinkel, scanner, kassasysteem (les 8.1).
- Handtekeningen, regels en autoresponders opnieuw instellen.
Pas daarna opzeggen
Zeg de oude mailboxen pas op als alles een paar weken goed werkt en de laatste synchronisatieronde gedaan is. Ruim daarna de DNS op: de oude aanbieder uit SPF, de oude DKIM-selector weg, TTL weer op een normale waarde.
In de praktijk: zo ziet het eruit bij een aanbieder
Bij WebOké kun je kopiëren met de e-mailverhuistool in Mijn WebOké (kiest zelf de servernaam van bekende aanbieders, logt ook in bij Microsoft en gaat na een onderbreking verder) of met IMAPSync Migraties in DirectAdmin (bron-host, gebruiker en wachtwoord invullen, doelmailbox kiezen). Een tweede ronde slaat in beide gevallen over wat al gekopieerd is. Andere aanbieders hebben vergelijkbare migratiehulpen; de begrippen bron, doel en tweede ronde zijn overal hetzelfde.
Samenvatting
- Een IMAP-synchronisatie kopieert per map wat in het doel ontbreekt; een tweede ronde maakt geen dubbelen.
- Koppel speciale mappen (Verzonden, Prullenbak) en let bij Gmail op labels en Alle berichten.
- Gebruik voor de bron de vaste servernaam van de oude aanbieder, niet
mail.<jouw domein>. - Na de MX-wissel: eerst gezaghebbend controleren, dan publiek (TTL), dan een testmail van buiten.
- Tweede ronde na de oude TTL, apparaten als nieuw account instellen, oude accounts weg, pas na weken opzeggen.
Quiz
Opdracht
Opdracht Z8.2: MX en TTL controleren rond de overstap. Vul je eigen domein in (of gebruik wikipedia.org als je geen eigen domein hebt). Vul in: de MX-host met de laagste prioriteit volgens de gezaghebbende nameserver, de TTL van het MX-record bij die nameserver, en de partij bij wie je mail binnenkomt (vrije tekst). Het programma vraagt NS op, daarna MX bij een gezaghebbende nameserver zonder cache, en MX bij een publieke resolver. Het zet de antwoorden naast elkaar en meldt het als de publieke resolver nog een ander antwoord geeft (de overstap is dan nog niet overal zichtbaar).
Verder lezen
De stappen in deze artikelen gelden voor de panelen van WebOké; bij andere aanbieders werkt het vergelijkbaar.
- DirectAdmin handleiding 10.2: IMAPSync Migraties in DirectAdmin
- DirectAdmin handleiding 10.3: E-mail verhuizen via Mijn WebOké
- DirectAdmin handleiding 10.4: Na de verhuizing: MX-records en je apparaten
- E-mail verhuizen naar WebOké met de e-mailverhuistool
- Gratis DNS-cursus 6.3: DNS bij een verhuizing
- Gratis DNS-cursus 8.2: DNS opvragen met dig en nslookup
- imapsync (officiële site): https://imapsync.lamiral.info/
