Friday, March 19, 2010

Exchange 2007 on Windows 2008 required IP6 to be enabled

http://msmvps.com/blogs/ehlo/archive/2008/06/12/1634433.aspx
Installing Exchange 2007 on Windows 2008? Don't forget IPv6!
Hyper-V really rocks! Period.

Migrating my VMs to Hyper-V has given me the opportunity to test new scenarios, namely to finally have x64 machines with Exchange Server 2007. And it was during one of my latest installations that I faced an interesting challenge: to install an Exchange Server 2007 on Windows Server 2008 x64, that was also a Domain Controller.

Let me first remind you that installing Exchange on a DC (which is also a Global Catalog) is not a recommended solution, since you can face some challenges, as the ones described in KB940845.

But my problems started during installation. Let me give you some more details. It all began when I decided to install Exchange Server 2007 SP1 on a brand new Windows Server 2008 x64 virtual machine. After following the steps to accomplish the necessary prerequisites to install Exchange Server 2007, as described on this TechNet article, I kicked the Exchange setup.

It all seemed well, when suddenly the setup process stopped with the error: Service 'MSExchangeTransport' failed to reach status 'Running' on this server.

My next logical step was to examine Application Event Log, where I found the following events:

Source: MSExchange ADAccess
Event ID: 2114
Task Category: Topology
Level: Error
Description:
Process MSEXCHANGEADTOPOLOGYSERVICE.EXE (PID=1784). Topology discovery failed, error 0x80040a02 (DSC_E_NO_SUITABLE_CDC). Look up the Lightweight Directory Access Protocol (LDAP) error code specified in the event description. To do this, use Microsoft Knowledge Base article 218185, "Microsoft LDAP Error Codes." Use the information in that article to learn more about the cause and resolution to this error. Use the Ping or PathPing command-line tools to test network connectivity to local domain controllers.

Source: MSExchange ADAccess
Event ID: 2604
Task Category: General
Level: Error
Description:
Process MSEXCHANGEADTOPOLOGY (PID=1784). When updating security for a remote procedure call (RPC) access for the Exchange Active Directory Topology service, Exchange could not retrieve the security descriptor for Exchange server object E2K7-X64 - Error code=80040a01.
The Exchange Active Directory Topology service will continue with limited permissions.

Event ID: 2601
Source: MSExchange ADAccess
Category: General
Type: Warning
Description: Process MSEXCHANGEADTOPOLOGY (PID=1784). When initializing a remote procedure call (RPC) to the Microsoft Exchange Active Directory Topology service, Exchange could not retrieve the SID for account - Error code=80040a01. The Microsoft Exchange Active Directory Topology service will continue starting with limited permissions.

After doing some research on the Internet, I finally came to the conclusion that the problem was related with IPv6 being disabled on the Network Properties.

Exchange Server 2007 needs IPv6 in order to run on Windows Server 2008 (unless you completely disable IPv6). There are a lot of components that depend on IPv6, as you can check on TechNet: IPv6 Support in Exchange 2007 SP1.



If you decide to completely disable IPv6, follow these steps that David Chen described on TechNet Forums (I didn't test it):

Open Registry with "Regedit"
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters
Create a dword (32-bit) value and name it as "Disabled Components" and then click OK
Double click "Disabled Components" and type 0xffffffff(hexadecimal value) or 4294967295 (Decimal value)
Please note: The above value 0xffffffff(hexadecimal value) or 4294967295 (Decimal value) will disable all IPv6 components, except the IPv6 loopback interface.
Although some people suggest that you must configure a fixed IPv6 address (like Alexander Zammit), I left the default settings (obtain an IPv6 address automatically), restarted the setup process and it went smooth like a breeze.

No comments:

Post a Comment