Active Directory ağındaki bir istemci sistemi hangi sitede bulunduğunu nasıl bulur?


21

Windows yönetimini başlatmak için bir sunum hazırlarken, daha önce sormadığım için şaşkın olduğum bir soruyla çarpıldım.

Bunu biliyorum:

  • AD, istemci bilgisayarlar ve etki alanı hizmetleri arasında etki alanı için gerekli olan iletişimin gecikmesini azaltmak ve çoğaltmaya yardımcı olmak amacıyla sitelerde mantıksal olarak kuruludur.
  • Siteler, kendilerine uygulanan alt ağlar tarafından tanımlanır
  • _msdcs alt etki alanı, genel arama (_tcp) ve siteye özgü arama (_sites) için bir SRV hiyerarşisi içerir
  • Bilgisayarlar bir şekilde hangi sitede bulunduklarını biliyorlar ya da etki alanı denetleyicisi şeffaf bir şekilde bazı DNS büyülerinde karar veriyor ... ya da öyle mi?

Bu blog yayını , bir AD ağındaki istemci bilgisayarların hangi siteye üye olduklarını "bildiğini" ima ediyor. Sorum şu, eğer durum buysa, nasıl öğrendiler?

Müşterinin kendisi bilmiyorsa, DC makineye bu istemci bilgisayara en yakın AD hizmetlerini seçme sürecinde nasıl yardımcı olur?

Yanıtlar:


29

Cevap, bir müşteri ilk kez Active Directory'de kimliğini doğruladığında, hangi sitede olduğunu bilmiyor.

Etki alanına ilk katıldığında, istemci genel DNS ve LDAP sorguları yapar ve etki alanındaki tüm etki alanı denetleyicilerinin bir listesini alır ve LDAP bağlarını ve bağlandığı ilk başarılı DC'yi çalıştırarak listeye girer. kimlik doğrulaması yaptığı ilk DC.

Müşteri etki alanına katıldıktan sonra, Active Directory müşteriye hangi siteye ait olduğunu söyler. Active Directory bunu bilir; çünkü yönetici istemcinin IP alt ağını AD Siteleri ve Hizmetleri'ne koymuş ve bir Siteyle ilişkilendirmiştir.

Active Directory, istemciye AD sitesinin ne olduğunu ve istemci bu kaydı kendi kayıt defterinde saklar HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\DynamicSiteName. Bu şekilde, müşteri bir daha önyükleme yaptığında, yalnızca o sitedeki DC'leri alabilmesi için hangi siteye özgü DNS sorgusu yapılacağını bilir.

Elbette tam davranış KB247811'de belgelenmiştir , ancak kendiniz görmek istiyorsanız, Wireshark veya NetMon çalıştırabilir ve bir paket izlemesi yapabilir ve ardından izleme çalışırken bir etki alanına katılabilirsiniz. DNS sorgularının ve LDAP bağlantılarının tam sırasını göreceksiniz. Daha sonraki DNS sorguları ve LDAP bağlantıları siteye özgü alt bölgelere yapılır, çünkü müşteriye AD tarafından hangi siteye ait olduğu bildirilir.

Netlogon hizmeti, AD site bilgilerini düzenli aralıklarla yeniler; böylece farklı bir ağa geçerseniz, müşteriniz yeni siteyi otomatik olarak alır. Bu HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\SiteNameTimeoutkayıt defteri değerinde ayarlanabilir . ( Bağlantı )


GAH! Beni yendin!
MDMarra

4
@ MDDarra Bu nadir bir oluşum bayım.
Ryan Ries

Meraktan dolayı, netlogon kontrolü tekrar yapıldı mı? Örneğin, Site1’de olan bir sistemim varsa ve ardından kişi ve ekipmanı Site2’ye taşıdıysam, makine yine de Site1 ile tanımlayıp konuşmaya devam ederse?
Peter Grace

Aslında onu geri alıyorum. Netlogon, dinamik site adını yeniden başlatmadan güncelleyebilir: technet.microsoft.com/en-us/library/cc958488.aspx
Ryan Ries

@RyanRies bunu cevap metninize eklemek istiyorsanız, bu harika olurdu, aksi halde yanıtı dahil etmek için düzenlerim.
Peter Grace,

8

Aslında birbiriyle ilişkili birkaç işlev / API var. Uzun olmalarına rağmen, aslında daha ilginç olan Active Directory okumalarından bazıları.

Aşağıdaki açıklamadan bağımsız olarak, bilmeniz gereken iki şey vardır:

  • Yerel sitedeki bir DC herhangi bir nedenle yanıt vermezse, istemcinin etki alanındaki herhangi bir etki alanı denetleyicisine başvurması beklenir. Bu normaldir ve her zaman varsayılan davranış olmuştur. Bazen neden oluştuğu belli değildir.

  • Bu yetersiz olabilir. Şu senaryoyu inceleyin: Üç site: New York City (hub / veri merkezi - hızlı), Los Angeles (NYC ile konuştu - hızlı) ve Kazakistan (NYC ile konuştular - kesinlikle hızlı değil). LA sitesindeki müşteriniz ne olursa olsun yerel DC ile bağlantı kuramazsa, Kazakistan ile kimlik doğrulaması yapması imkansız değildir.

Birkaç çözüm var. Ya ikisini de yapabilirsiniz.

  • Microsoft, uygun olarak TryNextClosestSite adlı Grup İlkesi / kayıt defteri ayarını oluşturdu. Bu, LA müşterisinin DC'leri arayan gezegeni dolaşmadan önce NYC'yi denemesi gerektiği anlamına gelir. Parlak! Sekiz yıl sürdü, ancak sonunda Vista / 2008 ile anlaştık. Unutmayın, varsayılan olarak etkin değil, bunu etkinleştirmek için bir GPO oluşturmanız gerekir.

  • DC'nin başka sitelerdeki istemcilere hizmet vermesini istemediğiniz siteler için, hangi DNS kayıtlarının kaydedilmemesi gerektiğini belirten bir Grup İlkesi / kayıt defteri ayarı oluşturabilirsiniz. Buna DNS Anımsatıcıları denir.


En Yakın Sitede Etki Alanı Denetleyicisi Bulma (DsGetSiteName API)
http://technet.microsoft.com/en-us/library/cc978016.aspx

IP Adreslerini Site Adlarına Eşleme

"Net Logon başlangıcında, her etki alanı denetleyicisindeki Net Logon hizmeti, Site nesnelerini Yapılandırma kapsayıcısında numaralandırır. Her etki alanı denetleyicisindeki Net Logon, site nesnelerinde yapılan değişikliklerden de haberdar edilir. IP adreslerini site adlarıyla eşleştirmek için kullanılan bellek içi yapı.

"Etki alanı denetleyicisi arayan bir istemci, etki alanı denetleyicisi IP adreslerinin listesini DNS'den aldığında, istemci hangi etki alanı denetleyicisinin kullanılabilir ve uygun olduğunu bulmak için etki alanı denetleyicilerini sorgulamaya başlar. Active Directory, sorguyu engeller. istemcinin IP adresi ve etki alanı denetleyicisindeki Net Logon'a iletilir Net Logon, istemci IP adresiyle en iyi eşleşen alt ağ nesnesini bularak ve sonradan ağa eşleme tablosunda istemci IP adresini arar. aşağıdaki bilgileri döndürür:

  • İstemcinin bulunduğu sitenin veya istemcinin IP adresiyle en yakından eşleşen sitenin adı.

  • Geçerli etki alanı denetleyicisinin bulunduğu sitenin adı.

  • Bulunan etki alanı denetleyicisinin istemciye en yakın sitede bulunan (bit ayarlanmış) veya bulunmadığını (bit ayarlanmamış) gösteren bir bit.

"Etki alanı denetleyicisi bilgileri müşteriye döndürür. Yanıt, etki alanı denetleyicisini tanımlayan diğer çeşitli bilgileri de içerir. İstemci, daha iyi bir etki alanı denetleyicisi bulmaya çalışılıp çalışılmayacağını belirlemek için bilgileri inceler. Karar, aşağıdaki şekilde yapılır:

"Döndürülen etki alanı denetleyicisi en yakın sitedeyse (döndürülen bit ayarlanır), istemci bu etki alanı denetleyicisini kullanır.

"İstemci, etki alanı denetleyicisinin istemcinin bulunduğunu iddia ettiği sitedeki bir etki alanı denetleyicisini bulmaya çalıştıysa, istemci bu etki alanı denetleyicisini kullanır.

"Etki alanı denetleyicisi en yakın sitede değilse, istemci site bilgilerini günceller ve sitede yeni bir etki alanı denetleyicisi bulmak için yeni bir DNS sorgusu gönderir. İkinci sorgu başarılı olursa, yeni etki alanı denetleyicisi kullanılır. İkinci sorgu başarısız olursa, orijinal etki alanı denetleyicisi kullanılır.

"Bilgisayar tarafından sorgulanan etki alanı, bilgisayarın birleştirildiği etki alanıyla aynıysa, bilgisayarın bulunduğu site (etki alanı denetleyicisi tarafından bildirildiği gibi) bilgisayar kayıt defterinde depolanır. HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Netlogon \ Parameters içindeki DynamicSiteName kayıt defteri girişindeki site adı. Bu nedenle, DsGetSiteName API, bilgisayarın bulunduğu siteyi döndürür. "

DsGetDcName işlevi
http://msdn.microsoft.com/en-us/library/ms675983%28VS.85%29.aspx

Konumlandırıcı Türleri
http://technet.microsoft.com/en-us/library/cc978019.aspx

Dizin Hizmeti İşlevleri
http://technet.microsoft.com/en-us/subscriptions/ms675900%28v=vs.85%29.aspx

Active Directory için DNS Desteği Nasıl Çalışır?
Http://technet.microsoft.com/en-us/library/cc759550%28v=ws.10%29.aspx

Bir müşterinin sitesi dışında kalan bir etki alanı denetleyicisinin konumu nasıl optimize edilir
http://support.microsoft.com/kb/306602

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.