Replicatie afdwingen tussen twee domeincontrollers in Active Directory
Stel je voor dat je maar één deur naar je huis hebt. Geen ramen, geen terrasdeur, maar één deur. Wat gebeurt er als je die deur niet kunt openen? Dan heb je niets meer aan het huis en alles wat erin staat.
Een domeincontroller is in zekere zin als een deur. Eentje met een buitenwipper erop. Het is de poort om binnen te komen bij de dingen die je wilt. Active Directory (AD) is de uitsmijter bij de deur. Hij controleert je legitimatie, bepaalt of je door de deur mag, en welke bronnen je mag gebruiken als je eenmaal binnen bent.
Als je een netwerk beheert en maar één domeincontroller hebt, woon je in een huis met één deur. Als er iets met die domeincontroller gebeurt, valt je hele systeem van servers uit elkaar. Zorg altijd voor meer dan één domeincontroller (DC).
Maar hoe zorg je ervoor dat beide domeincontrollers over dezelfde informatie beschikken? Stel dat je op één DC een beveiligingsgerelateerde wijziging hebt doorgevoerd. Je wilt er zeker van zijn dat die wijziging onmiddellijk wordt gerepliceerd op je andere DC’s. Waarom zou je 15 minuten of langer wachten tot het volgens schema gebeurt? Je moet replicatie van de domeincontrollers in Active Directory forceren.
Er zijn 3 manieren om dit aan te pakken; via de grafische gebruikersinterface (GUI), via de command-line interface (CLI), of via PowerShell.
Force Replication Of Domain Controller Through GUI
Windows servers maken veel gebruik van GUI’s, wat goed is voor beginnende Systeembeheerders. Het is gemakkelijker te leren en soms helpt het je te visualiseren wat er echt gebeurt.
- Log in op een van je DC’s en open Active Directory Sites and Services.
- Navigeer naar de site waarvoor u de domeincontrollers wilt repliceren. Vouw de site uit door op het pijltje naast de sitenaam te klikken. Vouw de Servers uit. Vouw de DC uit die u wilt repliceren. Klik op NTDS-instellingen.
- Klik in het rechterdeelvenster met de rechtermuisknop op de server en selecteer Nu repliceren.
- Afhankelijk van het aantal DC’s dat er is, kan dit minder dan een seconde tot een paar minuten duren. Als het proces is voltooid, verschijnt de melding “Active Directory Domain Services heeft de verbindingen gerepliceerd.”. Klik op OK om te voltooien.
Replicatie van domeincontrollers afdwingen via CLI-commando
Als u bekend bent met het goede oude Windows CMD, dan is het repadmin-commando iets voor u. Dit is de snelste eenmalige manier om DC duplicatie te forceren. Ben je hier niet mee bekend, dan is dit een goed moment om Windows CMD te leren kennen.
- Log in op een van je DC’s en open de opdrachtprompt.
- Voer het volgende commando in en druk vervolgens op de Enter-toets.
repadmin /syncall /AdeP
- Een litanie van informatie rolt over het scherm. Als je ziet dat op de laatste regel staat “SyncAll beëindigd zonder fouten.”, en vervolgens de opdrachtprompt eronder, zijn je DC’s succesvol gerepliceerd.
Domeincontroller replicatie afdwingen met PowerShell
Als je PowerShell niet gebruikt in je dagelijkse leven, dan mis je iets. Je bent het jezelf echt verschuldigd om PowerShell te leren. Het zal je leven makkelijker maken, en als je een Junior Systeembeheerder bent zal het je enorm helpen om je carrière naar de volgende stap te brengen.
Deze stappen kunnen in de gewone PowerShell CLI worden gedaan, maar wij hebben het in de PowerShell ISE gedaan om de commando’s en hun resultaten beter te laten zien. We gaan een script maken dat u kunt opslaan of zelfs kunt omzetten in een cmdlet dat u kunt aanroepen vanaf de PowerShell-opdrachtregel.
- Log in op een van uw DC’s en open PowerShell of PowerShell ISE.
- Voordat u een script schrijft, slaat u dit op met een beschrijvende naam, zoals force-DCReplication.ps1, zodat u het gemakkelijker kunt hergebruiken. Voer de volgende code in en voer het uit om te zien hoe het de namen van al je DC’s krijgt.
(Get-ADDomainController -Filter *).Name
Zie je hoe het de namen van de DC’s oplevert? Nu kun je dat resultaat naar het volgende cmdlet leiden. Een pipe is het verticale streep teken ( | ), dat je meestal op het toetsenbord vindt net boven de Enter toets.
- Aan het eind van het vorige commando voer je de volgende code in:
| Foreach-Object { repadmin /syncall $_ (Get-ADDomain).DistinguishedName /AdeP }
De opdracht moet eruitzien zoals in de onderstaande afbeelding. Voer het uit. Het moet net zo’n bericht terugsturen als in de sectie Force Domain Controller Replication Through GUI hierboven. Als het eindigt met, “SyncAll beëindigd zonder fouten.” dan is het gelukt.
Zie je hoe het ook het repadmin-commando gebruikt?
- Laten we nog een regel toevoegen om je te helpen controleren of de replicatie echt is voltooid. De volgende code geeft de datum en tijd weer waarop elk DC voor het laatst is gerepliceerd. Dit commando kan op zichzelf gebruikt worden op een ander moment als je gewoon nieuwsgierig bent wanneer je DC’s voor het laatst gerepliceerd zijn. Voer de code in en voer hem uit.
Get-ADReplicationPartnerMetadata -Target "$env:userdnsdomain" -Scope Domain | Select-Object Server, LastReplicationSuccess
Het resultaat zou op de onderstaande afbeelding moeten lijken. Onderaan ziet u de exacte datum en tijd waarop de replicatie voor het laatst heeft plaatsgevonden.
- Om dit script wat op te poetsen, maken we de uitvoer ervan wat minder uitgebreid. Aan het einde van de eerste regel moet u tussen /AdeP en het haakje aan het einde | Out-Null invoeren. Dat vertelt het script om de resultaten van dat cmdlet niet naar buiten te brengen. Het eindresultaat ziet eruit als in de volgende afbeelding.
Keep’em Replicated
Nu weet je 3 manieren om replicatie van domeincontrollers in AD te forceren. U hebt ook een herbruikbaar PowerShell-script samengesteld dat u kunt aanroepen vanaf de PowerShell-opdrachtregel wanneer u maar wilt. Er is geen excuus meer om je laatste DC wijzigingen te laten wachten op de volgende geplande replicatie, wanneer dat ook moge zijn.