Monday, August 9, 2010

This blog has been moved!

This blog has been moved to on wordpress platform. Its been a while since I hv posted on this as I have been very busy with few of the stuff. In the future posts, you will see more stuff on windows, citrix and virtualization apart from the messaging posts also and we promise to be regular :-).

Please visit

Saturday, March 20, 2010

Message Redundancy - Hub Transport Servers | Shadow Redundancy vs Transport Dumpster

As we discussed in the last article, High Availability is becoming very critical for every organization, message loss is one very critical and important aspect that we cannot ignore. By message loss, we mean here the message loss that can incur at the time of failure of one or more servers.

With introduction of Microsoft Exchange Server 2007 role based model, Hub Transport Server role provided the centralized transport pipeline through which all messages had to pass, thus making it possible and very efficient to set transport rules and policies.
For standalone non clustered mailbox servers, there is no built in protection as the message loss can occur if a server fails. Here on the Hub Transport Server, the message is stored in the transport database and is deleted as soon as it is sent to the next hop.

However, the feature called Transport Dumpster was introduced in Exchange Server 2007 that protect against message loss for the mailboxes that reside on a CCR cluster. Transport Dumpster holds the messages that are sent to the recipients whose mailbox resides on a clustered mailbox server, and recent sent items are retransmitted back in the event of failure of one cluster node so that messages are not lost during failover.

In Exchange 2010, there's a new feauture Shadow Redundancy that provides redundancy for messages for the entire time they are in transit. With Shadow Redundancy in exchange 2010, the deletion of a message from the transport databases is delayed until the transport server verifies that all of the next hops for that message have completed delivery. If a successful delivery is not reported, the hub server will try to resend the message.

Shadow redundancy uses the SMTP service extensions that allows the SMTP hosts to negotiate Shadow Redundancy support in Exchange 2010.

So the key points here are:
  • Transport Dumpster in Exchange 2007 only safeguards messages for the mailboxes that reside on CCR node, however Shadow Redundance is inbuilt in Exchange 2010 that can be enabled or disabled for the entire organization.
  • Shadow Redundancy makes hub transport servers more resilient against message loss. Exchange Server 2007 deletes messages from the database as soon as they were sent to the next hop, however, Shadow Redundancy keeps messages in the database until Exchange confirms that they were been delivered.
  • Earlier versions of Exchange were not designed to verify message delivery, however Microsoft has extended SMTP service in Exchange 2010 that allows this now.

Understand more indepth about Shadow Redundancy. Also, here's an excellent technet that explains detailed Shadow Redundancy Mail Flow Scenarios. This topic explains in detail what happens for each specific message flow scenario that can involve Exchange.

Monday, February 1, 2010

High Availability | From Exchange 2007 to Exchange 2010

High Availability is one of the most important factors considered today in almost all the messaging deployments as email is becoming the mission critcal applcation and the backbone for all the businesses.

Exchange has come a long way from its earlier versions - Exchange 2003 that uses typical Windows Clustering technologies based on a shared storage model, and then to Exchange 2007 that brought new dimensions with the introduction of log replication technology in LCR, CCR and SCR. With this new technology of continuos replication where the transaction logs are shipped from one copy of a database to another, the exchange 2007 deployment offers high availability in
various scenarios like Local Continuous Replication (LCR) on a single server deployment, Cluster Continuous Replication (CCR) available accross different servers and Standy Continuous Replication (SCR) spread across different sites.

Exchange 2010, introduces the concept of Database Availability Groups (DAG) that takes the high availability to the next level for mailbox servers. A DAG is as the name suggests a group or a collection of mailbox servers (upto a maximum of 16) that uses the continuous replication technology that was first introduced in Exchange 2007 and are effectively a combination of Cluster Continuous Replication (CCR) and Standby Continuous Replication (SCR). It also makes use of
some of the components of Windows Failover Clustering to achieve high availbility and these cluster elements are installed automatically when a mailbox server is added to a DAG and managed completely by Exchange.

To achieve full high availibility solution for all the roles, with the introduction of Exchange Server 2007 SP1, it can be achieved by deplyoing a total of minimum of 4 servers - two servers installed as a single CCR environment, giving high availability for the users’ mailboxes and the other two servers deployed as combined Hub Transport and Client Access Servers, and configured as a load-balanced pair.

But with Exchange 2010, a full high availability solution can now be deployed by using a minimum of 2 servers as it’s now possible to combine the mailbox server role with other roles such as the Hub Transport and Client Access Server role. And with futher IO reductions in Exchange 2010 and RAID-less/JBOD support, it support much larger mailboxes with reduced storage costs.

To summarize Exchange 2010 high availibilty improvements:

  • Combines the capabilities of CCR and SCR into one platform.
  • Easier than traditional clustering to deploy and manage.
  • Allows each database to have up to 16 replicated copies.
  • Provides full redundancy of Exchange roles on two servers.
  • Further IO reductions.
  • RAID-less / JBOD support.
So exciting times ahead for the folks who are planning migration to Exchange 2010 :)

Friday, November 20, 2009

Troubleshooting Back Pressure Issues | Exchange Server 2007 Hub/Edge Transport Servers

Back Pressure is an important resource monitoring feature of Microsoft Exchange Transport Service that exists on Hub/Edge Transport servers. The following system resources are monitored by this:

  • Free space on the hard disk drive that stores the message queue database.
  • Free space on the hard disk drive that stores the message queue database transaction logs.
  • Number of uncommitted message queue database transactions that exist in memory.
  • Memory that is used by the EdgeTransport.exe process.
  • Memory that is used by all processes.

All configuration options and threshold values for back pressure are available in the EdgeTransport.exe.config application configuration file that is located in the C:\Program Files\Microsoft\Exchange Server\Bin directory. You can even enable or disable this resource monitoring by changing the EnableResourceMonitoring parameter in EdgeTransport.exe.config file.

There might be situations and i also ran into one when you notice that the mail has stopped flowing from the Hub server and the queues are disabled. In the event logs, there is a warning message from MSExchangeTransport with event id 15004 which states:

Resource pressure increased from Normal to Medium.

Resource utilization of the following resources exceed the normal level:

Version buckets = XXX [Medium] [Normal=80 Medium=120 High=200]

Back pressure caused the following components to be disabled:

Inbound mail submission from the Internet

Mail submission from the Pickup directory

Mail submission from the Replay directory

Mail delivery to remote domains

Please note that all these threshold values for normal, medim and high are defined in the EdgeTransport.exe.config file. There can be number of reasons that can cause resource pressure to jump high and disable the queues... here are most expected reasons for this:

  1. Running out of disk space or disk performance issues.
  2. Running out of memory
  3. Antivirus software running on Exchange Server with incorrect configuration
  4. Virus issues.
  5. A very large message being processed by Exchange Server.

The first 4 are are very visible and you can easily verify if one or the other is running out or spyking anything. In most of the cases, its the fifth one that is likely to hit. Once that large message gets in the submission queue, it is being processed by exchange server and this causes the problem.

There are various things that can prevent this type of scenario... for e.g. Outlook 2010 wouldn't even let you attach the attachment that is larger than the limits set on an exchange server, however if you are running earlier version of Outlook and Exchange Server is also not at current update level, this can happen.

Here are the few steps that you need to do for the quick resolution for this:

  1. Find out the mailbox that has sent the large email.
  2. Disable that mailbox.
  3. Restart the Information Store service on the mailbox server.
  4. Change the location of Queue Database path and log file path. It can be done from EdgeTransport.exe.config file by changing the value for "QueueDatabasePath" and "QueueDatabaseLoggingPath".
  5. Restart the MSExchange Transport Service on the Hub Transport Server.
  6. You might need to perform the recovery on the queue database to get the emails that are in uncommitted state on the previous queue database from the logs.

If you want to learn more on backup pressure, here's the technet for you.

Understanding Back Pressure

Friday, October 9, 2009

Exchange 2010! Released to Manufacturing

Great news for everyone... described as the most advanced and the best messaging application by many - Exchange 2010 has been Released to Manufacturing... announced on the MS Exchange Team blog.

Saturday, July 18, 2009

Update Rollup 9 for Microsoft Exchange Server SP1 Released

Microsoft has released Update Rollup 9 for Microsoft Exchange Server 2007 Service Pack 1 (SP1).

This update rollup contains some imortant bug fixes.

KB 970162 details about the issues fixed in this release of update rollup.

Read more on MSExchange Team Blog.

Saturday, July 11, 2009

Standby Continuous Replication - On Standalone Mailbox Servers - Part 3

In Part 2, we discussed about the Preperation of the SCR Target server, in this Part 3, we will talk about SCR Activation for the Database Portability scenarios and in the end, we will discuss about SCR Activation using the Recover Server switch.

Database Portability is a new feature of Exchange 2007 and it allows us to mount the exchange database on any of the exchange servers in same organization. So in case of a database corruption say in SG1, we can manually perform the activation of the SCR target database.

Here are detailed steps for SCR Activation for the database portabilty scenarios:

1. Dismount the SCR Source database.

2. Now we need to disable the SCR and need to make the target database available for mounting.

This is done by the following command:

Restore-StorageGroupCopy SourceServerName\SG1 -StandbyMachine TargetServerName

Note: If the SCR source is not available, the Force parameter should be used with the Restore-StorageGroupCopy command.

3. After this has completed, we need to verify whether the database is in a Clean Shutdown state. If the database is in a Dirty Shutdown state, we can bring the database to a Clean Shutdown state by running Eseutil recovery mode (Eseutil /r) against the database.

4. Now after the database is in the Clean Shutdown state, we need to update the Active Directory with the new locations of the Storage Group and database files.

Here are the commands to change the paths for SG1Target and DBTarget from the temp paths to the paths for the SCR target's storage group and database files:

Move-StorageGroupPath TargetServerName\SG1Target -SystemFolderPath Path -LogFolderPath Path -ConfigurationOnly

Move-DatabasePath TargetServerName\SG1Target\DBTarget -EdbFilePath Path -ConfigurationOnly

5. Now we need to make the database to allow itslef to be overwritten during a restore operation. We can do this from its properties from the EMC.

6. Next, we can mount this database.

7. Ok now, the database is mounted, but we need to rehome the mailboxes to point to SCR Target Server. Please note that Microsoft Exchange System Attendant and System mailboxes should not be included in this.

Here is the command to do this:

Get-Mailbox -Database SourceServerName\SG1\DB I where {$_.ObjectClass -NotMatch '(SystemAttendantMailboxExOleDbSystemMailbox)'} I Move-Mailbox -ConfigurationOnly -TargetDatabase TargetServerName\SG1Target\DBTarget

So now this information has been replicated across the Active Directory, users can access the mailboxes now.

Please note if the Source server is not accessible, for clients running Outlook 2003 and earlier versions, we need to change their outlook profile to point to new target server.

Now, there might be scenarios where the whole source server is completely down and is not accessible pertaining to any hardware failure or something else, in these cases we can use Recover Server to activate the SCR target.

Here are the detailed steps for SCR Acttivation using Recover Server:

1. Disable the SCR and make the target databases available for mounting.
This is done by the following command:

Restore-StorageGroupCopy SourceServerName\SG1 -StandbyMachine TargetServerName -Force

2. Uninstall exchange server from the target server.

3. Rename the target server as the name of the source server if you have Outlook 2003 clients and want them to rehome automatically.

4. Run Setup /recoverserver. This should be run from the location where exchange binaries are located.

5. If the databases are in Dirty Shutdown state, use Eseutil to recover the databases.

Standby Continuous Replication - On Standalone Mailbox Servers - Part 2

In the Part 1 of this article, we discussed about SCR and how to enable it. In this Part 2, we will focus on the second step i.e. Prepare the SCR Target Server.

We can have the target server prepared initially so that in case of a failure, the SCR activation can be done pretty quickly that will save us precious time.

For all the Storage Groups (from the source server) whose copy has been setup on the SCR target server, we will create the Storage Groups on the Target server and create the mailbox database on it. We can keep the path of the log files and the database on any temp location as we will mount this store, dismount it and remove that temp directory.

Steps and Commands:

As in the part 1 of this article, we have enabled the SCR for SG1 on the Source Server. Here we will create the Storage Group SG1Target and mailbox database DBTarget on the Target Server.

  1. New-StorageGroup -Server TargetServerName -name SG1Target -LogFolderPath C:\SG1Target -SystemFolderPath C:\SG1Target
  2. New-MailboxDatabase -StorageGroup TargetServerName\SG1Target -Name DBTarget -EdbFilePath C:\SG1Target\dbtarget.edb
  3. Mount-Database DBTarget
  4. Dismount-Database DBTarget
  5. Delete everything from C:\SG1Target

Please note that these storage groups that we have set up on the target server are only temporary objects that will be used to carry out the database portability recovery during the SCR Activation Process. We can create them later on also but creating them now will save us the precious time while performing the recovery.

Standby Continuous Replication - On Standalone Mailbox Servers

SCR - Standby Continuous Replication, the wonderful new feature introduced in Exchange Server 2007 SP1, introduces a new dimension in High Availabilty for Exchange Server 2007. SCR is designed for scenarios that use standby recovery servers and allows replicating a copy of Storage Group to a number of remote servers.

SCR uses the same log shipping and replay technology as local continuous replication (LCR) and cluster continuous replication (CCR).

It is very useful in the DR planning especially if we don’t want to go for full fledged clustering with automatic failover technologies like CCR because of various reasons like cost constraints of servers, OSs that are needed to have these types of setups.

SCR introduce redundancy in two scenarios for the Mailbox Servers:

  • One Storage Group or Multiple Storage Groups go corrupt - Use Database Portability to activate SCR target databases.
  • Full Server failure - Use Server Recovery to activate SCR target databases.

The starting point for SCR is called the source, which is any storage group, except a recovery storage group and the endpoint for SCR is called the target. SCR can support multiple targets per storage group. Although SCR can be combined with CCR and LCR, in this article we will focus and discuss its configuration on the standalone Mailbox Servers.

The whole process revolves around three activities:

  1. Enable SCR
  2. Prepare the SCR Target Server
  3. SCR Activation

Enable SCR


  1. The paths must be the same for both soource and the target like if source server is C:\Exchange\Data and C:\Exchange\Logs then these paths must be available on the target server.
  2. There is a hard coded 50 log lag between the Source and Target, by default there is a 24 hour replay time which is configurable.
  3. There can be only 1 database per storage group.


Enable-StorageGroupCopy SourceServerName\SG1 -StandbyMachine TargetServerName -ReplayLagTime 0.0:0:0


ReplayLagTime specifies how long the Replication Service waits before replaying replicated transaction logs to the replica Database (EDB) on the target. Default - 1 day

TruncationLagTime sets a lag time for truncating log files on that replica. Default - 0.

We can validate and check the status of the replication by running:

Get-storagegroupcopystatus -standbymachine TargetServerName

We will discuss the next two steps in the next parts of this article.

Tuesday, July 7, 2009

451 4.4.0 DNS query failed

I was working on this annoying issue few days back, the mails sent to few domains are getting stuck in the queues on the Hub Transport server. The error message on the queue states 451 4.4.0 DNS query failed.

Well, it looked liked from here that there might be some issue with the DNS, ran few nslookup tests from the HUB servers itself, and surprisingly the domain and its MX records were resolving fine and i was able to connect to them absolutely fine.
More interestingly, if you hardcode the entry of the MX Record for that domain in the hosts file, the mails went through straight away.

I researched around few forum posts stated below, it seem like that this is a Bug with Exchange Server 2007 on Windows Server 2008, some issue related to IPv6.

Reference Posts:

Wednesday, May 20, 2009

Update Rollup 8 for Microsoft Exchange Server SP1 Released

Microsoft has released Update Rollup 8 for Microsoft Exchange Server 2007 Service Pack 1 (SP1).

It contains the important bug fix which happened after Update Rollup 7 which caused the sender of the Delivery Status Notification to be unresolved.

KB 968012 details about the issues fixed in this release of update rollup.

Read more on MSExchange Team Blog.

Wednesday, May 13, 2009

Exchange Server 2007 SP2... Arriving Soon!

Exchange Server 2007 SP2 is set to arrive in Q3 this year... it contains many new features but some great news on the backup front. It is providing the new backup VSS-based plugin that will enable users to take Exchange aware VSS backups from Windows Server 2008. So we will be able to backup and restore Exchange 2007 SP2 databases from Windows Server 2008 backup tool.

For more details and other features, please read this MSExchange Team blog.

Friday, March 27, 2009

Outlook Anywhere or RPC over HTTPS configuration from Script

I was reading this interesting post from Oz Casey Dedeal about RPC over HTTPS Script. This prompted to me to write this post as i was working on this some time back and had another way of scripting RPC over HTTPS and Outlook Anywhere configuration.

This VB script will do the configuration for both Outlook 2003 and Outlook 2007. This script basically aims at changing the registry entries for your Outlook Profile that do all the outlook over https or outlook anywhere configuration.

Here are the Registry Keys and values that we are targetting at for doing this configuration in an Outlook Profile:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\\13dbb0c8aa05101a9bb000aa002fc45a

"00036601" - for Cached Mode
"00036623" - Enable Exchange Proxy settings and control various check boxes like "on fast networks…" etc.
"00036627" - For Authentication - Basic or NTLM
"001f6622" - for specifying Exchange proxy server name
"001f6625" - for specifying Exchange proxy server name according to principal cert name.

So the script will go like:

Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\default:StdRegProv")
strValue1Name = "00036601"
arrValue1 = Array(&H00,&H00,&H00,&H00)
strValue2Name = "00036623"
arrValue2 = Array(&H00,&H00,&H00,&H00)
strValue3Name = "00036627"
arrValue3 = Array(&H00,&H00,&H00,&H00)
strValue4Name = "001f6622"
arrValue4 = Array(&H00,&H00,&H00,&H00)
strValue5Name = "001f6625"
arrValue5 = Array(&H00,&H00,&H00,&H00)
strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"
oReg.EnumKey HKEY_CURRENT_USER, strKeyPath, arrSubKeys

For Each subkey In arrSubKeys
strFullPath = strKeyPath & "\" & subkey & "\13dbb0c8aa05101a9bb000aa002fc45a"
oReg.SetBinaryValue HKEY_CURRENT_USER,strFullPath,strValue1Name,arrValue1
oReg.SetBinaryValue HKEY_CURRENT_USER,strFullPath,strValue2Name,arrValue2
oReg.SetBinaryValue HKEY_CURRENT_USER,strFullPath,strValue3Name,arrValue3
oReg.SetBinaryValue HKEY_CURRENT_USER,strFullPath,strValue4Name,arrValue4
oReg.SetBinaryValue HKEY_CURRENT_USER,strFullPath,strValue5Name,arrValue5

Replace the value of 00 after &H in arrValue1, arrValue2, arrValue3, arrValue4 and arrValue5 with your values by looking into the registry under mentioned reg keys.

Wednesday, March 18, 2009

Update Rollup 7 for Microsoft Exchange Server SP1 Released

Microsoft has released Update Rollup 7 for Microsoft Exchange Server 2007 Service Pack 1 (SP1).

This update has important fixes for SCR and IMAP4 issues.

KB 960384 details about the issues fixed in this release of update rollup.

Read more on MSExchange Team Blog.

Saturday, March 7, 2009

Integration Of Exchange 2007 and OCS 2007

In the last post, I discussed about the Microsoft's core solutions on Unified Communications - Exchange Server 2007 UM and OCS 2007. I had a chance to setup a test environment where they both operate together. So here we will talk about their intergration and take a look how it looks like.

To have both of them work together, you need to have Exchange Server 2007 SP1. Here are the key steps that you need to perform to configure them:
  1. Configure the new dial plan. To do this, run this command from the powershell:

    New-umdialplan -name OCSPlan -Uritype "Sipname" -Voipsecurity "SipSecured" -Numberofdigitsinextension 4

  2. Go to properties of this dial plan and set the subscriber access number. Subscriber access is used by users to access their individual mailboxes to retrieve e-mail, voice messages, contacts, and calendaring information. Outlook Voice Access is the new Exchange 2007 Unified Messaging feature that lets subscribers access their Exchange 2007 mailbox.

  3. Apply this dial plan to the UM server:

    set-umserver -id UM_Server_Name -dialplans OCSPlan

  4. Run Powershell script "EXCHUCUTIL.PS1" from Exchange Management Shell. This is installed when you apply SP1 for Exchange 2007. To run this successfully you might need to modify the properties of the Start Menu shortcut for the Exchange Management Shell so that it launches directly from the Scripts folder "Program files\Microsoft\Exchange Server\Scripts".

  5. On the OCS server, run OCSumutil with the following command line: ocsumutil /

Now you can configure your users for Unified Messaging. You can do this from Exchange Management Console and right click on the user to Enable Unified Messaging and select the dial plan.

So now when you log on with this user to Communicator 2007, you will see the additional call menu from where you can forward your calls or redirect incoming calls to voicemail.

And now you get a Missed Conversation notification when someone IMs you and you are offline or away:

Also, You get the missed call notifications or voice mails when someone calls you via OCS client:

Sunday, February 15, 2009

The world of Unified Communications

Over the recent times, this has been one of the hottest topic of discussion in various organizations and among various professionals.

Microsoft and third-party vendors such as Cisco Systems, Avaya, Nortel, and Polycom offer products that support Unified Communications (UC), and have their own definitions for UC.

If we talk about Microsoft here, Microsoft offers two integrated solutions: Microsoft Exchange Server 2007 and Office Communications Server 2007 that are the key players in Microsoft's UC strategy. Together they bridge the gap between computers and telephones. They integrate with your company's exisiting phone system and deliver complete communication services using your existing data network.

So in the world of Unified Communications, Microsoft offers Exchange as the Unified Messaging component, handling voicemail, fax, and telephone access to messaging. OCS is the component that offers IM, conferencing, presence, and voice services.

Microsoft Exchange Server 2007 Unfied Messaging

Here are the features that Unified Messaging Role provides in Exchange Server 2007:

Outlook Voice Access (OVA): Outlook Voice Access allows a phone to be a Unified Messaging client. A text-to-speech engine is built into the UM server to allow email message to be read from a users mailbox. A UM-enabled user can call into their company's UM server and can access Voicemail, Email, Calendar, Contacts, OOO messages and security and personalization settings.

Call Answering: Say if a user receives any external call, this call will be routed via IP/PBX or a VoIP gateway, if the destination user is not available, this call will be routed to Unified Messaging Server. The external user will be given an option to leave a voice mail and it will be delivered to the mailbox server, else the user will be notified of the missed call.

Auto Attendant: The Auto Attendant in the Exchange Unified Messaging Server allows an organization to create customized menus, custom greetings, searching directory etc.

Fax Receiving: The UM server provides the ability to receive faxes in .tiff format via IP/PBX or VoIP gateway.

Microsoft Office Communications Server 2007

Office Communications Server 2007 manages all real-time (synchronous) communications including: instant messaging, VoIP, audio and video conferencing. It works with existing tele-communications systems, so business can deploy advanced VoIP and conferencing without tearing out their legacy phone networks. Microsoft Office Communications Server 2007 also powers Presence. With presence, you can see at-a-glance if someone is available and contact them with a click using instant messaging, a phone call or a video.

Microsoft unified communications technologies delivers voice and video conferencing through Microsoft Office Communications Server 2007 via IP. This means that conference call audio and video streams are captured and logged just like an instant message or an email.

The complete conferencing solution requires:
  • Office Communications Server 2007
  • Microsoft Office Communicator 2007
  • Microsoft Office Live Meeting service (2007)
  • Video-equipped computers and/or VoIP phones

Integration of Exchange 2007 and OCS 2007

Microsoft Exchange Server 2007 Unified Messaging and Microsoft Office Communications Server 2007 can be deployed together to provide voice messaging, Instant Messaging (IM), enhanced user presence, audio-video conferencing, and an integrated e-mail and messaging experience for users in your organization.

Here are the key features and benefits that they will provide together:

  • You get the missed call notifications or voice mails when someone calls you via OCS client.
  • You get a notification when someone IMs you and you are offline or away.
  • OCS automatically uses the out-of-office (OOF) message text you set in Exchange.
  • Presence information displayed in Microsoft Outlook 2003/2007 and in Windows Sharepoints Services team sites and document libraries.

So in a nutshell, you are Connected... Always!

Tuesday, February 10, 2009

Update Rollup 6 for Microsoft Exchange Server SP1 Released

Microsoft has released Update Rollup 6 for Microsoft Exchange Server 2007 Service Pack 1 (SP1).

This update has a fix for the critical security issue and a fix to allow IE 8 to be used for OWA 2007. This does not include OWA 2007 S/MIME control.

KB 959241 details about the issues fixed in this release of update rollup.

Read more on MSExchange Team Blog.

Sunday, January 25, 2009

Some mailboxes show up as Shared or Linked... after Migrating to Exchange Server 2007

Here's a scenario where after migrating users from Exchange Server 2003 to Exchange Server 2007, some of the user mailboxes show as "Shared" Mailbox or "Linked" Mailbox within the Exchange Management Console... instead of showing them as "User" Mailbox.

A Linked mailbox is a mailbox that is associated with an external account. Thus Linked mailboxes are normal mailboxes that can hold an External account in a separate resource forest.

Few of these mailboxes here were shown as Linked mailboxes after migration because an orphan Active Directory Account has the "Associated External Account" right on the mailbox in question.

To fix this and have them show up as normal "User" mailboxes remove that orphan Active Directory account that has the "Associated External Account" right on the mailbox in question and run the following command from the Exchange Management Shell:

set-mailbox -id MAILBOX_NAME -ApplyMandatoryProperties

Now we come to why few mailboxes are shown up here as Shared mailboxes. If you have Self permission with associated external account checked, you get the shared mailbox on migration. That is the reason these mailboxes are showed up as shared.

To fix this, remove the "Associated External Account" permission from the Self and again run that command:

set-mailbox -id MAILBOX_NAME -ApplyMandatoryProperties

Tuesday, January 13, 2009

Exchange Server Remote Connectivity Analyzer

This looks pretty exciting... in beta though but worth keeping an eye on as it can be very useful for exchange admins... especially the amount of troubleshooting we need to do... :-)

Monday, January 12, 2009

Entourage for EWS

Entourage for Exchange Web Services is targeted at organizations using Exchange Server 2007. This means that we can finaly say goodbye to WebDav and hopefully to all the issues that we face as EWS is a stronger and more robust protocol than WebDAV, that enables client applications to communicate with the server running Microsoft Exchange Server 2007 SP1 or later – for better compatibility, performance and reliability.

Entourage EWS will launch a public beta this month. The final release will be available later this year as a free update to Office 2008 users.

More Details:

Monday, December 29, 2008

Configuring Autodiscover for Exchange 2007

The Autodiscover service provides a mechanism to automatically configure Exchange 2007 client applications to access the Client Access server.

It is used to set up client applications like Outlook to work with Exchange by returning configuration data that is necessary for applications to function properly without requiring users to know where to fetch the data, such as discovery of the server that hosts a user's mailbox.

Configuring Autodiscover for External Access

Outlook 2007 tries the following two URLs to try to connect to the Autodiscover service:

Step 1: Configuring DNS

We will discuss the two simple and most commonly used scenarios here:

1. Using a SSL Certificate That Supports Multiple DNS Names
There are third-party Certification Authorities (CAs) that currently support Subject Alternative Names. In this you provide all the necessary DNS names like, etc. in the same certificate by using a Unified Communications certificate that supports the Subject Alternative Name field.

For the Autodiscover service to function correctly, you must add an additional host record ( so that Outlook 2007 clients can locate and connect to the Autodiscover Service when they use the Outlook Anywhere feature from the Internet. The host record you create should map to the Public IP Address that will be used as the entry point to your Client Access server.

2. Using One Single-Name Certificate and the Autodiscover SRV Record
This solution is to use one single-name certificate installed on the Default Web Site.
If your DNS provider supports SRV records, this solution is the simplest and least expensive way to deploy Outlook Anywhere in hosted and non-hosted Exchange 2007 environments.

Create an SRV record:
Service: _autodiscoverProtocol: _tcpPort Number: 443 Host:

For more information on Outlook 2007 and Autodiscover SRV records configuration, please read this knowledgebase article:

Step 2: Modify the Service Connection Point (SCP)

By default, the URL for the Autodiscover Service stored in the SCP object in Active Directory will reference the internal FQDN for the Client Access server during Exchange 2007 Setup. You will use the Set-ClientAccessServer cmdlet to modify this URL so that it points to the new location (FQDN) for the Autodiscover service.

In the Exchange Management Shell, run the following command:

Set-ClientAccessServer -identity CAS_servername -AutodiscoverServiceInternalUri

You can point this to if you are using DNS host record for

Step 3: Configuring Exchange Services for Autodiscover

1. Enable Outlook Anywhere for the external host name.

Enable-OutlookAnywhere -Server CAS_servername -ExternalHostname "" -ExternalAuthenticationMethod "Basic" -SSLOffloading:$False

2. Configure the external URL for offline address book for the Autodiscover service.

Set-OABVirtualDirectory -identity "CAS_servername\OAB (Default Web Site)" -externalurl -RequireSSL:$true

3. Configure the external URL for Unified Messaging for the Autodiscover service.

Set-UMVirtualDirectory -identity "CAS_servername\UnifiedMessaging (Default Web Site)" -externalurl -BasicAuthentication:$True

4. Configure the external URL for Exchange Web Services for the Availability service and Out of Office services.

Set-WebServicesVirtualDirectory -identity "CAS_servername\EWS (Default Web Site)" -externalurl -BasicAuthentication:$True

Tuesday, November 25, 2008

Update Rollup 5 for Exchange 2007 SP1

The Update Rollup 5 for Exchange 2007 SP1 has been released and is available at Microsoft Download Center.
So would recommend that you should plan for its install as this has fixed quite a lot of issues.
More details at MS Exchange Team Blog.

Wednesday, November 12, 2008

Information Store Crashing, Exchange 2007

The Microsoft Information Store Service (Store.exe) is repeatedly crashing an Exchange 2007 Mailbox Server.
In the application log, we get the following error message and store.exe is crashing due to EXCDO.DLL file:

Faulting application store.exe, version XXXX, time stamp XXXX, faulting module EXCDO.DLL, version XXXX, time stamp XXXX, exception code XXXX, fault offset 0x00000000001ed390, process id 0x1fc8, application start time XXXX.

Have opened up a case with MS PSS and had them analyze the crash dumps. They have identified it as a Bug. The issue is casued by Mac's, Entourage clients that does calendar bookings in the ICS format and the crash is occuring due to Entourage Client accessing a badly created ICS.
MS will provide a fix to this issue in Update Rollup 6.

If anyone is experiencing this issue, make sure you call MS PSS first thing and have them provide the temp bug fix to you.

Saturday, November 1, 2008

Web Services, Exchange 2007

Now that we have finished the final phase of our migration and we have fully migrated the Public Folders to the new Exchange 2007 environment, want to talk about this exciting new component of Exchange 2007, that is the Web Services. Well I think this is the most exciting and amazing new feature in Exchange 2007 that makes life very easy of an Exchange Admin.

The Web Services that are included in Microsoft Exchange Server 2007 provide an XML messaging interface for managing Exchange store items and accessing functionality on a computer that is running Exchange 2007 from client applications.

Exchange 2007 includes the following Web services:

  1. Exchange Web Services
  2. Autodiscover Service
  3. Unified Messaging Web Service
1. Exchange Web Services

Exchange Web Services provides the functionality to enable client applications to communicate with the Exchange server. Exchange Web Services is deployed with the Client Access server (CAS) role. Microsoft Exchange Server 2007 clients connect to the computer that is running Exchange 2007 that has the Client Access server role installed in an Active Directory directory service site by using an HTTPS connection.

Some of the main operations that Exchange Web Services provide are:

  • The Availability Service: Outlook 2007 clients can use HTTPS to connect and download free and busy data for other users through the Availability Service. Unlike previous versions of Exchange, free/busy data does not have to be stored in public folders, instead we access the target mailbox’s free/busy data directly from the calendar (via the Availability service).
  • OOF: The ability to set Out-Of-Office messages is controlled by a new web service.
  • OAB Distribution: Outlook can use HTTPS to locate and download the Offline Address Book (OAB) from a web distribution point.
  • The Exchange Data Service operations: The Exchange Data Service operations enable the handling and organizing of items, folders, and attachments, as well as ambiguous name resolution and distribution list expansion.
  • Notification and Synchronization Operations.

2. Autodiscover Service

The Autodiscover service provides a mechanism to automatically configure Exchange 2007 client applications to access the Client Access server.

It is used to set up client applications like Outlook to work with Exchange by returning configuration data that is necessary for applications to function properly without requiring users to know where to fetch the data, such as discovery of the server that hosts a user's mailbox.

3. Unified Messaging Web Service

The Unified Messaging Web Service provides an extensibility point for clients to read and change information about Unified Messaging properties. If your mailbox is enabled to use Exchange 2007 Unified Messaging, you can use Outlook 2007 to play a voice message back to a phone.

Will discuss about their configuration in detail in the coming posts :-)

Wednesday, October 22, 2008

Get HUB server stats from Message Tracking

Now in Exchange 2007, from Command Shell using Message Tracking, you can pull out some of the very exciting statistics which were never so easy from the previous versions of exchange.

Here we are talking about pulling up records like:

  • Number of emails sent by HUB servers over a given period of time.
  • Number of emails received by HUB servers over a given period of time.
  • Number of emails sent by a particular sender or received by a particular recipient over a given period time

Example: To get the number of emails sent by a HUB server, run this command from EMS:

Get-MessageTrackinglog -server -start "MM/DD/YYYY hh:mm am/pm" -End "MM/DD/YYYY hh:mm /pm" -event SEND -ResultSize 999999 I measure-object

Similarly you can add the switches like -event RECEIVE to get the number of message recieved, -Sender "Email address" to get from a particular sender etc.

Read this article from Bharat Suneja to get more details on Message Tracking from Exchange Server 2007