de-DEen-GB
 
MVP - Most Valuable Professional
rss

Just can't get enough of IT

This blog is about mostly anything in IT. But the primary focuses are Microsoft Technologies like Exchange, Office 365, Azure and Cloud Security.

Exchange Server extends the Active Directory schema during the PrepareSchema step during setup. The steps PrepareAD, PrepareDomain, or PrepareAlLDomains create Active Directory containers and objects that are crucially important for a stable operation of Exchange Server.

There are different Active Directory objects that are used to determine, if Active Directory has a proper Exchange Server configuration up and running.

Forest level

At Active Directory forest level the following attributes are used to determine the Exchange Server release:

  • rangeUpper attribute of the ms-Exch-Schema-Version-Pt schema object 
  • msExchProductId attribute of the Exchange organization object in the configuration partition
  • objectVersion attribute of the Exchange organization object in the configuration partition
  • objectVersion of the Microsoft Exchange System Objects (MESO) container 

Domain level

At Active Directory domain level the following attribute is used to determine the Exchange Server release:

  • objectVersion of the Microsoft Exchange System Objects (MESO) container 

 

I have written a PowerShell script to fetch all required information for all domains in an Active Directory forest. The script simplifies the process of gathering the data.
Read more about the script here.

 

Schema versions

Exchange

Forest (rangeUpper)

Forest (objectVersion)

Domain (objectVersion)

Exchange Server 2000

2000 RTM

4397

N/A

4406

2000 SP3

4406

N/A

4406

Exchange Server 2003

2003 RTM

6870

6903

6936

2003 SP2

6870

6903

6936

Exchange Server 2007

2007 RTM

10637

10666

10628

2007 SP1

11116

11221

11221

2007 SP2

14622

11222

11221

2007 SP3

14625

11222

11221

Exchange Server 2010

2010 RTM

14622

12640

12639

2010 SP1

14726

13214

13040

2010 SP2

14732

14247

13040

2010 SP3

14734

14322

13040

Exchange Server 2013

2013 RTM

15137

15449

13236

2013 CU1

15254

15614

13236

2013 CU2

15281

15688

13236

2013 CU3

15283

15763

13236

2013 SP1

15292

15844

13236

2013 CU5

15300

15870

13236

2013 CU6

15303

15965

13236

2013 CU7-CU9*

15312

15965

13236

2013 CU10-CU20*

15312

16130

13236

Exchange Server 2016

2016 Preview

15317

16041

13236

2016 RTM

15317

16210

13236

2016 CU1

15323

16211

13236

2016 CU2

15325

16212

13236

2016 CU3

15326

16212

13236

2016 CU4-CU5*

15326

16213

13236

2016 CU6

15330

16213

13236

2016 CU7-CU9*

15332

16213

13236

 

*Note
It is recommended to always run the Active Directory preparation using Setup.exe /PrepareAD before applying an new cumulative update. Even though that the schema version might not have changed from the previous version preparing Active Directory applies any updates or changes to the default RBAC configuration.

 

Links

 

Enjoy Exchange Server!

Read More »

Exchange Server 2010Exchange Server 2013Exchange Server 2016PowerShellDescription

This script reads the Exchange schema version from the Active Directory schema partition.

The Exchange organization name is fetched from Active Directory automatically.
  
The script fetches at forest level:

  • objectVersion of MESO Container
  • rangeUpper of ms-Exch-Schema-Version-Pt 
  • msExchProductId of Exchange Organization container
  • objectVersion of Exchange Organization container

The script fetches at domain level:

  • objectVersion of MESO Container

 

Examples

Code Samples

# Fetch all version information in the Active Directory forest
.\Get-ExchangeServerVersionInfo.ps1

Sample Output:

PS D:\Scripts> .\Get-ExchangeServerVersionInfo.ps1

Exchange Server Schema and Object Information for forest [VARUNA.ROOT]
Exchange Organization Name        : VARUNA-GROUP
Active Directory Schema rangeUpper: 15332

Working on VARUNA.ROOT
MESO Container objectVersion           : 13236
Exchange Configuration msExchProductId : 15.01.1466.003
Exchange Configuration objectVersion   : 16213

Working on VARUNAGROUP.DE
MESO Container objectVersion           : 13236

Version History

  • 1.0, Initial community release

Links

Follow

 

Enjoy Exchange Server!

Read More »

The following PowerShell snippet helps to create room lists for the Room Finder functionality in Outlook or Outllok on the Web.

This snippet creates a new room list named All Video Conference Rooms. The display name is shown in the Room Finder combo box. The room list members are a mixture of physical rooms (where you actually go to) and virtual rooms which you just dial into.

# General Properties
$DisplayName = 'All Video Conference Rooms'
$Name = 'DEP_IT_AllVideoConfRooms'
$Alias = 'IT_AllVideoConfRooms'
$Notes = 'Room List for Outlook Roomfinder | All Video Conference Rooms'
$OU = 'MCSMLABS.de/Exchange/Groups/RoomLists'
$EmailAddress = 'ITAllVideoConfRooms@mcsmemail.de'

# Romm List Members 
$Members = @('Conference Room 1','Conference Rooms 2','Virtual Dial-In Room 4711')
 
# Create Distribution Group as Room List 
New-DistributionGroup -DisplayName $DisplayName -Name $Name -Alias $Alias -Notes $Notes -Type Distribution -OrganizationalUnit $OU -PrimarySmtpAddress $EmailAddress -Members $Members -RoomList


Use this snippet to start developing your own Exchange PowerShall code for creating and managing rooms and room lists.

If you want to create new rooms and security groups for managing full-access and send-as permissions, use my PowerShell script Create a new Room Mailbox with Security Groups.

Enjoy Exchange!

 

 

Read More »

The PowerShell script to create a new room mailbox has been updated to Version 1.1.

The new release supports adding of a phone number to the room details. Issue #2 is now closed.

Creating a separate security group for calendar booking is still open as issue #1.

 

You can read the original and up-to-date blog post here: Create a new room mailbox with security groups

Links

 

 

Read More »

The PowerShell script to set Client Access mailbox settings based on AD group membership has been updated.

The issue fixed had been registered as issue #1. 

The new release version is v1.1.

Download

 

 

Read More »