Topology
Windows Server 2016 Active Directory Domain Services rolü üzerinde Flexible Single Master Operations (FSMO) rollerini Windows Server 2019 Active Directory Domain Services üzerine taşıyacağız. Bu işlemler için DSRM (Type the Directory Services Restore Mode) şifresini biliyor olmamız gerekmektedir.
DC1:
Hostname: DC1.yayu.local
OS: Windows Server 2016
IP: 10.34.137.1
DC2:
Hostname: DCA.yayu.local
OS: Windows Server 2019
IP: 10.34.137.3
Additional Domain Controller (DC2) kurulumuna geçmeden önce DC1’de aşağıdaki komutlarla rolleri ve Schema versiyonunu kontrol ediyoruz;
dsquery * cn=schema,cn=configuration,dc=yayu,dc=local -scope base -attr objectVersion”
netdom query fsmo

Additional Domain Controller Kurulumu
-Windows Server 2019 kurulumu ve yapılandırmalarını tamamlıyoruz
-IP set ediyoruz
-DNS Primery: DC1, Secondary: DC2 olarak set ediyoruz
-Computer Name veriyoruz
-Domain’e alıyoruz
-ADDS kurulumu yapıyourz
-Domain Control’ler yapılandırması yapıyoruz (Add a domain to an existing domain)
Specify additional replication options : Active Directory Domain Services kurulumunu yaparken ortamdaki hangi Active Directory Domain Services sunucu üzerinden database oluşumu ve diğer yapılandırmanin replikasyon işlemleri yapacağını belirleyeceğimiz bölümdür.Replika From bölümünde eğer Any domain controller seçersek ortamda bulunan bütün Active Directory Domain Services sunucuları ile haberleşecektir ya da listeden hangi Active Directory Domain Services sunucusu ile haberleşmesini istiyorsak onu seçebiliriz.
Kurulum sonrası kontrol ediyoruz;

Schema versiyon 87’den 88 olmuş oldu
dsquery * cn=schema,cn=configuration,dc=yayu,dc=local -scope base -attr objectVersion”

FSMO Rollerinin Taşınması
Bir Domain Controller üzerinde 5 adet FSMO (Flexible Single Master Operations) rolü bulunur. Bu roller standart olarak Forest içinde ilk kurulan ve Domain yapısını oluşturan Primary Domain Controller üzerinde bulunur.
A-FSMO Rolleri
1. Schema Master
Active Directory Schema, Active Directory nesnelerinin tüm bilgilerini tutan yapıdır. Bu yapılar; Class’lardan (sınıf) oluşur ve her bir Class içinde, o Class’a ait Attribute’lar (öznitelikler) bulunur. Bir objeye ait hangi bilgilerinin saklanacağı, Attribute’lar ile tanımlanır. Forest içindeki Active Directory nesne sınıfları (Object Classes) ve bunlara ait öz nitelikler (Attributes), Active Directory Shema yapısını oluşturur. Bu nedenle de Active Directory’i oluşturan ana omurga, Active Directory Schema’dır. Tüm Active Directory nesne (object) ve öz niteliklerin (Attributes) güncellemeleri ve bunlara ait bilgiler Schema Master üzerinde tutulur. Schema Master rolü, Active Directory Schema’nın yönetimi yapmakla birlikte; Class ve Attribute değerlerinde meydana gelen tüm değişiklikler ise Domain Controller’lar arasında replike edilmek suretiyle güncel tutulur.
Bu rol Forest içerisinde tektir.
2.Domain Naming Master
Domain içerisine giren ve çıkan objelerin bilgilerini tutar ve yönetir. Örneğin; Forest içine yeni bir Domain eklendiğinde, mevcut domainlerden biri kaldırıldığında, bir Domain’in adı değiştirildiğinde ya da Domain isimlerinde çakışma olduğunda, tüm bütün bunların kontrolünü yapan roldür. Bu rolün, Global Catalog rolüne sahip bir Domain Controller Server’da olması tavsiye edilir. Normal şartlarda Domain ortamını ilk kuran Domain Controller üzerinde bulunan bu iki Forest bazlı rol, Forest içindeki herhangi bir Domain’deki herhangi bir Domain Controller (DC) üzerinde FSMO rol Transfer işlemi ile taşıma yapmak suretiyle bulunabilir.
Bu rol Forest içerisinde tektir.
3.PDC Emulator
Bu rol aslında FSMO rolleri içerisinde en etkin ve yoğun kaynak kullanan roldür. Saat senkronizasyonu, şifre değişiklikleri ve şifre resetlemeleri, Group Policy ve SYSVOL paylaşım erişimlerini yönetir. Buna ek olarak, DFS yapısının güncel tutulmasını ve tutarlılığını da sağlar. Tek başına bu rolün taşınması, Primary Domain Controller görevinin başka bir DC’ye aktarılması anlamına gelir ki mevcut DC bu durumda Primary Domain Controller görevinden ayrılacaktır. Ayrıca bu işlem, sadace yeni yesil bir Windows Server versiyonu çıktığında Migration amaçlı değil, mevcut Primary Domain Controller görevi gören Server’ınızın yeni nesil bir Server’a Windows Server işletim sistemi kurularak, Member Server yapılıp, Additional DC haline getirdikten sonra, Primary Domain Controller görevinin bu yeni nesil Windows Server üzerinde devam etmesini de isteyebilirsiniz. Bu nedenle de bu rolün aktarımı çok önemlidir.
Bu rol, Domain bazlı olup, Forest ortamındaki tüm Domain’lerde bulunur.
4.RID Master
Active Directory Domain yapısı içerisindeki objelerin her birinin benzersiz birer kimlik numarası vardır. Bu benzersiz kimlik numaraları, Active Directory nesnesi oluşturulduğunda otomatik olarak atanır ve bu değişken, benzersiz numaralara RID-Relative Identifier adı verilmektedir. RID-Relative Identifier atanırken, Active Directory nesnesinin oluşutuğu Domain altında ilgili Domain’in kimlik numarasıyla beraber atanır ki buna da SID-Security Identifier denir. Her Domain’in kendine ait sabit değerde bir SID-Security Identifier numarası vardır ve atanan her RID-Relative Identifier numarası, bu SID-Security Identifier numarası altında atanır. İşte bu noktada, Active Directory ortamında oluşturulan nesnelere RID numarası ataması işlemini bu rol gerçekleştirir.
RID Master FSMO rolü, varsayılan olarak Domain yapısının ilk kurulduğu Primary Domain Controller üzerindedir. RID Master FSMO rolünü tutan Domain Controller, kendi üzerindeki RID havuzunda 1,073,741,823 (1 milyar 73 milyon 741 bin 823) adet RID numarası barındırır ki bu rakam, 2,147,483,647 (2 milyar 147 milyon 483 bin 647) üst sırınına kadar artırılabilmektedir. Domain ya da Forest ortamındaki RID Master FSMO rolünü tutmayan diğer Domain Controller’lar üzerlerinde 500 adet RID numarası bulunurlar (Windows Server 2016 ile birlikte bu sayı 500’e çıkartılmıştı) ve bu RID Master FSMO rolünü tutmayan Domain Controller’lar, bu sayının %50’si tükendiğinde RID master FSMO rolünü üzerinde tutan Domain Controller ile iletişime geçerek, tekrar bir 500’lük RID talebinde bulunurlar. Tüm bu işlemleri yerine getiren RID Master FSMO rolüdür.
RID Matser’ı barındıran Domain Controller’ın işlevsiz kalması ve yapınızdaki herhangi bir diğer Domain Controller’ın da barındırdığı bu sınırlı RID numarasının tükenmesi durumunda, RID numarasının tükendiği Domain Controller üzerinde yeni Active Directory nesneleri oluşturulamayacaktır ve the directory service has exhausted the pool of relative identifiers hatası oluşacaktır.
Bu rol, Domain bazlı olup, Forest ortamındaki tüm Domain’lerde bulunur.
5.Infrastructure Master
Active Directory’de bir kullanıcı nesnesinin Organization Unit (OU) konumu, dolayısı ile de LDAP dizin yolu değiştirildiğinde, Group Policy ayarları da değişmektedir. OU’dan OU’ya taşıma yapılırken Update değişikliklerinden Infrastructure master sorumludur. Domain’ler arası bilgi transferini yapar ve güncel tutulmasını sağlar. Üzerindeki bilgi her daim günceldir.
Bu rol, Domain bazlı olup, Forest ortamındaki tüm Domain’lerde bulunur.
“Forest ortamındaki tüm Domain’lerde bulunur” ile “Forest bazında tektir” ifadelerinin anlamı;
Örneğin; Forest yapınızda 3 ayrı Domain olduğunu, bunlardan 1 tanesinin Forest’ın ilk oluşturulduğu Parent Domain, diğer 2 tanesinin de Child Domain olduğunu varsayalım. İster Parent Domain, isterse de Child Domain olsun; Domain ortamının ilk kurulduğu ilk Server, Domain Controller görevindedir. Bu sebeple de aynı Forest içindeki farklı Domain’leri oluşturuan ilk Server’lar da kendi bulundukları Domain’ler içine Domain Controller görevindedir ancak buradaki FSMO rolleri noktasında bir ayrım söz konusudur.
Child Domain’ler, aynı Forest içindeki Parent Domain’e bağlıdırlar. Aynı Forest içindeki herhangi bir Domain’deki, herhangi bir Domain Controller’da FSMO rolleri sorgulama işlemi gerçekleştirdiğinizde çıkacak olan sonuçta, Schema Master ve Domain Naming Master FSMO rollerinin her zaman her ikisinin de Forest bazında tek olduğunu görürsünüz. Bahsettiğim örnek yapıdaki gibi bir yapıda aksi belirtilmedikçe, yani roller taşınmadıkça bu iki Forest bazlı FSMO rolü, Parent Domain’deki Domain Controller’da bulunacaktır. Bu roller elbette ki Child Domain’lerdeki Domain Controller’dan herhangi bir tanesine de taşınabilir! Burada unutulmaması gereken tek şeyin, bu iki FSMO rolünün tüm Forest ortamında tek olduğudur ki zaten aşağıdaki şemaya baktığınızda, Schema Master ve Domain Naming Master haricindeki 3 FSMO rolünün, sadece ilgili Domain’e ait olarak tüm Domain Controller’larda bulunduğunu görürsünüz.
B-Taşınması
1.RID Master, 2.PDC Emulator ve 3.Infrastructure Master FSMO rollerinin taşınmasını
DCA –> Active Directory Users and Computers –> Operations Masters –> Change

Başarılı bir şekilde tamamlandı

3 rolü de aynı şekilde taşıyoruz ve sonrasında tekrar kontrol ediyoruz. RID Master, PDC Emulator ve Infrastructure Master FSMO rollerinin taşındığını gözlemiş olduk
netdom query fsmo

Not: PDC rolünün taşınması Primary Domain Controller değişmesine de sebep olacaktır (Get-ADDomainController -Discover -Service PrimaryDC komutu ile kontrol edilebilir)

4.Domain Naming Master FSMO rolünü taşımak için
DCA –> Active Directory Domains and Trusts –> Operations Masters –> Change


Son FSMO rolü 5.Schema Master taşımak için Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 versiyonlarında olduğu gibi Windows Server 2019 üzerinde de Active Directory Schema konsolunu açmak için kullanmış olduğumuz regsvr32.exe schmmgmt.dll komutunu çalıştırıyoruz.
Run –> regsvr32.exe schmmgmt.dll


Run –> mmc –> File –> Add/Remove Snap-in –> Active Directory Schema –> Add

Rolleri DCA sunucusuna taşıyacağımız için öncelikle Domain Controller değiştirmemiz gerekiyor. Console ekranında şuan DC1 görünmekte
Change Active Directory Domain Controller –> This Domain Controller or AD LDS instance –> DCA

Bu uyarıdan sonra artık DCA üzerinde çalışmakta

Active Directory Schema Console’da “DCA” olarak ismin değiştiğini görüyoruz
Active Directory Schema Console –> Operations Masters –> Change


Son rol taşınması da başarılı bir şekilde tamamlandı, yeniden tüm roller için kontrol ediyoruz
netdom query fsmo

Hepsinin DCA’ya taşındığını teyit etmiş olduk
Domain – Forest Functionality Level (DFL – FFL)
Aşağıdaki Powershell komutu ile mevcut DFL ve FFL bilgilerini çekiyoruz. Domain yapısı kurulduğunda hangi Server versiyonu ile kuruluysa değiştirilmediği sürece o versiyonda olur.
Get-ADRootDSE | fl domainFunctionality, forestFunctionality

Aşağıdaki komutlar ile DC1’de hata araması yapılabilir
repadmin /showrepl
repadmin /replsummary
repadmin /failcache
Mevcut domain controller listesine bakıyoruz
Get-ADGroupMember 'Domain Controllers'
Get-ADDomainController -Filter * | Select-Object Name, OperatingSystem | FT -AutoSize -Wrap

DFL ve FFL seviyeleri domain yapısına eklenecek yeni Additional Domain Controller işletim sistemi seviyesini belirlemektedir. DFL ve FFL seviyesi Windows Server 2016 ise yeni ADC’ler Windows Server 2008 R2 veya Windows Server 2012 R2 olamaz. Mutlaka 2016 ve üzeri sürümler olmak zorundadır. DFL ve FFL seviyelerinin upgrade işlemi, her yeni Windows sürümü sonrası gelen yeni özelliklerin kullanımını mümkün kılmaktadır. Windows Server 2008 ile gelen “Fine Grained Password Policy” özelliği DFL ve FFL seviyesi Windows Server 2008 öncesi kullanılamamaktadır.
DFL ve FFL upgrade için, örneğin Windows Server 2016 upgrade için ortamımızdaki DC’lerin minimum Windows versiyonları Windows Server 2016 olmalıdır.
Yukarıdaki bilgiler sadece Parent Domain değil, Child Domain için de geçerlidir.
FFL: Forest için minimum seviyeyi belirler.
DFL: Domain için minimum seviye belirler.
Örnek: FFL: Windows Server 2012 // DFL: Windows Server 2016
yayu.local
Windows Server 2012 Desteklemez
Windows Server 2016 Destekler
sub.yayu.local
Windows Server 2012 Destekler
Windows Server 2016 Destekler
Görüldüğü gibi DFL 2016 olduğu için Parent Domain Windows Server 2012 ADC desteklememektedir fakat Child Domain’ler DFL 2016 olduğu takdirde destekleyeceklerdir.
A-Functional Levels
Mevcut en güncel Functional Level “Windows Server 2016”dır.
-Windows Server 2016 functional levels
-Windows Server 2012 R2 functional levels
-Windows Server 2012 functional levels
-Windows Server 2008 R2 functional levels
-Windows Server 2008 functional levels
-Windows Server 2003 functional levels
-Windows 2000 functional levels
DC1 Windows Server 2016 öncesi bir verisyon olduğunu varsayalım. Doğal olarak DFL ve FFL de 2016 öncesi olacaktır. Biz 2016’ya raise etmeye çalıştığımızda ortamımızda Windows Server 2016 öncesi işletim sistemli DC olduğu için hata almış olacaktık. Bu hatayı almamak için mevcut ortamdaki 2016 öncesi DC sunucularını Demote etmemiz gerekecekti.
Aşağıda mevcut seviyenin en üst seviye olduğunu görmüş oluyoruz.
DCA –> Active Directory Domains and Trusts –> Raise Forest Functional Level

yayu.local’e ters tıklayarak bu işlemi Domain Functional Level için de yapabiliriz

B-Demote Old DC
DC1 –> Server Manager –> Remove Roles and Features –> Active Directory Domain Services

Validation Results uyarısı geliyor karşımıza, öncelikle olarak sunucumuz üzerindeki Domain Controller yapılandırmasını Demote etmemiz yani Domain Controller yapılandırmasını kaldırmamız gerekiyor.

Credentials: Domain Controller yapılandırılmasını hangi yetkili user ile kaldıracağımızı seçiyoruz
Last Domain Controller: Eğer bu sunucu ortamımızda Primary Domain Controller olarak görev yapıyor olsaydı. Yani ortamda sadece bu sunucu Domain Controller olarak görev yapsaydı ve FSMO rolleri bu sunucu üzerinde olsaydı bu seçenekte gelecekti karşımıza ve bu seçeneği seçerek ilerleyecektik.
Force the Removal of this domain controller: Windows Server 2008 R2 Active Directory Domain Controller üzerinde kullanmış olduğumuz dcpromo /force komutu ile ayni işlemi yapmaktadir. Force the Removal of this domain controller seçeneği Windows Server 2008 R2 Active Directory Domain Controller üzerinde kaldırma işleminde olduğu gibi, ortamdan kaldırmak istediğimiz Domain Controller çeşitli nedenlerden dolayı, Primary Domain Controller ya da diğer Domain Controller ulaşamadığı durumlarda kullanmış olduğumuz seçenektir.
Bu şekilde next diyoruz

Sunucunun aşağıdaki görevleri yaptığı bilgisini görüyoruz.
-Domain Name System (DNS) Server
-Global Catalog
Proceed with removal seçeneğini işaretliyoruz ve devam ediyoruz

New Administrator Password: Sunucumuz üzerinde Domain Controller yapılandırmasını kaldırdıktan sonra kullanacağımız Local Administrator için bir Password belirliyoruz.

Demote diyoruz ve tamamlandıktan sonra sunucu restart oluyor, sonrasında Server Manager’da Promote DC uyarısını görüyoruz.


DC yapılandırmasını kaldırdık, ADDS ve DNS rollerini de kaldırabiliriz



Remove features ekranında herhangi bir Features (Özellik) seçmeden Next diyerek devam ediyoruz. Çünkü Remove server rolues ekranında Active Directory Domain Services ve DNS Server kaldırmak için seçtiğimizde kurulu olan Features (Özellik) kaldırmak için seçmiştik.


İşlem tamamlandıktan sonra aşağıdaki PowerShell komutu ile kontrol ediyoruz ve DC1 Demote işleminin başarıyla tamamlandığını görüyoruz
Get-ADDomainController -Filter * | Select-Object Name, OperatingSystem | FT -AutoSize -Wrap


Active Directory Users and Computers –> Domain Controllers


C-DFL-FFL Raise
Windows Server 2016’dan sonra Windows Server 2022’ye kadar yeni bir Functional Level yükseltmesi gerçekleştirilmemiştir. Bu sebeple Windows Server 2016’dan 2019 veya 2022’ye geçerken herhangi bir raise işlemi yoktur. Fakat 2016 öncesi bir versiyondan geçiş yapıyor olsaydık Windows2016’ya raise etmemiz gerekecekti. Bu işlem için;
Get-ADRootDSE | fl domainFunctionality, forestFunctionality
Set-ADForestMode -Identity yayu.local -ForestMode Windows2016Forest -confirm:$false
Set-ADDomainMode -Identity yayu.local -DomainMode Windows2016Domain -confirm:$false

