Come interpretare l’Event ID 2080 su Exchange Server 2010

Exchange Server 2010 è composto da parecchi servizi che richiedono un accesso costante ai servizi di Active Directory.  Esiste un componente che ha il compito di ottimizzare le comunicazioni tra i vari servizi di Exchange e Active Directory : il DSAccess (Directory Service Access), rappresentato dalla DLL “DSAccess.dll”, presente in “C:\Program Files\Microsoft Exchange Server\V14\Bin”.

Il compito principale di DSAccess è quello di tenere continuamente traccia della topologia di Active Directory, e comunicare eventuali variazioni ai servizi di Exchange.  In particolare, DSAccess si occupa di :

  • venire a conoscenza di cambiamenti nella struttura dei Siti di Active Directory
  • venire a conoscenza dell’aggiunta o rimozione di Domain Controller
  • venire a conoscenza dell’aggiunta o rimozione dei Global Catalogs
  • venire a conoscenza del cambiamento di indirizzo IP di Domain Controller e Global Catalogs
  • venire a conoscenza di Domain Controller o Global Catalogs non più operativi

DSAccess esegue questi controlli ogni 15 minuti, oppure al restart del servizio “Microsoft Exchange Active Directory Topology” (MSExchangeADTopology) o del servizio “Microsoft Exchange System Attendant” (MAD.exe).

Gli esiti dei controlli sono sempre riportati negli eventi informativi con codice 2080 e sorgente “MSExchange ADAccess”, che ripetutamente compaiono in Application Log.

 

img1320450000.jpg

 

I dettagli di questi eventi sono utili a diversi servizi di Exchange per avere informazioni sui Domain Controller presenti in rete.  I servizi che utilizzano DSAccess sono i seguenti :

  • Microsoft Exchange Active Directory Topology (MSExchangeADTopology – MSExchangeADTopologyService.exe)
  • Microsoft Exchange Information Store (MSExchangeIS – Store.exe)
  • Microsoft Exchange System Attendant (MSExchangeSA – Mad.exe)
  • Microsoft Exchange Forms-Based Authentication (MSExchangeFBA – Exfba.exe)

Altri servizi (non di Exchange) potrebbero utilizzare DSAccess (per esempio il servizio WWW, World Wide Web Publising Service).

Nella seguente figura, viene mostrata una schermata di Process Explorer (strumento della Sysinternals) dove si evidenziano tutti i processi che utilizzano DSAccess.dll.   La stessa informazione si potrebbe ottenere con il comando :

Tasklist -m DSAccess.dll

img1316000000.jpg

E’ molto utile saper interpretare gli eventi 2080, in particolare le stringhe alfanumeriche posizionate a destra dei nomi dei Domain Controller.  Ecco un esempio di evento :

snag-0001.jpg

In questa figura, DSAccess ha rilevato la presenza di 3 domain controller.  Ogni riga descrive le caratteristiche dei domain controller.  Ecco l’interpretazione :

  • dc.dominio : Nome server : nome del domain controller (oscurato nella figura)
  • CDG : Ruoli : indica se il domain controller può essere utilizzato come Configuration domain controller (C), normale domain controller (D), global catalog server (G). La presenza delle lettere indica la disponibilità della funzione, la presenza di un trattino () indica che il domain controller non dispone di quella funzione.  Nell’esempio della figura, tutti i domain controller hanno tutte e tre le funzioni
  • 1 : Abilitato : indica se il domain controller è abilitato (1) oppure no (0) ad essere interrogato dal server Exchange
  • 7 : Accessibilità : indica se il domain controller è raggiungibile con una connessione TCP, e a quali servizi e a quali porte. I valori possibili sono i seguenti :
    • 0 : non raggiungibile su nessuna connessione TCP 
    • 1 : raggiungibile come Global Catalog alla porta 3268
    • 2 : raggiungibile come domain controller alla porta 389
    • 3 : raggiungibile come Global Catalog (3268) e domain controller (389)
    • 4 : raggiungibile come Configuration domain controller alla porta 389
    • 5 : raggiungibile come Global Catalog (3268) e Configuration domain controller (389)
    • 6 : raggiungibile come domain controller e Configuration domain controller (389)
    • 7 : raggiungibile in tutti i suoi servizi
  • 7 : Sincronizzato : indica se il domain controller è sincronizzato in maniera completa con gli altri, relativamente ai servizi che è in grado di offrire. I valori possibili sono i seguenti :
    • 0 : non sincronizzato in nessun servizio 
    • 1 sincronizzato come Global Catalog
    • 2 : sincronizzato come domain controller
    • 3 : sincronizzato come Global Catalog e domain controller
    • 4 : sincronizzato come Configuration domain controller
    • 5 : sincronizzato come Global Catalog e Configuration domain controller
    • 6 : sincronizzato come domain controller e Configuration domain controller
    • 7 : sincronizzato completamente in tutti i suoi servizi
  • 1 : Supporto GC : indica se il domain controller è un Global Catalog (1) oppure no (0)
  • 0 : PDC : indica se il domain controller è un primary domain controller per il suo dominio (1) oppure no (0)
  • 1 : Diritto SACL : indica se il servizio DSAccess del domain controller ha le corrette autorizzazioni per leggere le SACL (System Access Control List) durante le interrogazioni ad Active Directory (1 = autorizzato, 0 = non autorizzato)
  • 1 : Dati critici : indica se DSAccess ha trovato il server Exchange nella Configuration Partition di Active directory sul domain controller indicato nella colonna “Nome Server” (1 = trovato, 0 = non trovato)
  • 7 : Netlogon : indica se DSAccess si è connesso con successo al servizio Netlogon del domain controller, relativamente ai servizi che il domain controller offre. I valori possibili sono :
    • 0 : connessioni a Netlogon non riuscite 
    • 1 connessione a Netlogon come Global Catalog
    • 2 : connessione a Netlogon come domain controller
    • 3 : connessione a Netlogon come Global Catalog e domain controller
    • 4 : connessione a Netlogon come Configuration domain controller
    • 5 : connessione a Netlogon come Global Catalog e Configuration domain controller
    • 6 : connessione a Netlogon come domain controller e Configuration domain controller
    • 7 : connessione a Netlogon con tutti i suoi servizi
  • 1 : Versione sistema operativo : indica se il domain controller sta eseguendo almeno Windows 2000 Server SP3 (requisito minimo per i server Exchange 2003 e successivi).  Valore 1 = sì, valore 0 = No

Guardiamo un’altra figura di esempio :

img1321220000.jpg

Questo è un tipico esempio in cui un domain controller (il terzo) non risulta raggiungibile, tipicamente perchè spento o non connesso alla rete.

Il servizio DSAccess è totalmente dinamico ed è in grado di garantire il failover : se un domain controller diventa per qualche motivo irraggiungibile, DSAccess riesce ad indirizzare il server Exchange verso un altro domain controller (o global catalog) disponibile.   Ciò è vero finchè si lasciano le impostazioni al loro default (ovvero, se si lascia gestire in automatico ad Exchange la topologia di Active Directory).

E’ possibile indicare ad Exchange di utilizzare “staticamente” dei domain controller di nostra scelta : in questo caso, però, se quei domain controller diventano irraggiungibili, non viene eseguito il failover verso altri.

Per impostare staticamente la lista di domain controllers da utilizzare, è possibile utilizzare uno o più dei seguenti comandi di EMS (Exchange Management Shell) :

  • Set-ExchangeServer -id “NomeServerExchange” -StaticDomainControllers DC1,DC2,DC3 (…)
  • Set-ExchangeServer -id “NomeServerExchange” -StaticConfigDomainController DC1    (solo un DC è utilizzzabile con questo parametro)
  • Set-ExchangeServer -id “NomeServerExchange” -StaticGlobalCatalogs GC1,GC2,GC3 (…)
  • Set-ExchangeServer -id “NomeServerExchange” -StaticExcludedDomainControllers DC1,DC2,DC3 (…)

Per visualizzare gli attuali domain controller utilizzati da Exchange, utilizzare il seguente comando :

Get-ExchangeServer -id “NomeServerExchange” –Status | FL

 

Share / Save :

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *