Load Balancing Exchange 2007 SP1 Hub Transport Servers using Windows Network Load Balancing Technology (Part 1)

If you would like to read the next part in this article series please go to Load Balancing Exchange 2007 SP1 Hub Transport Servers using Windows Network Load Balancing Technology (Part 2)




Exchange Server 2007 (RTM and SP1) Hub Transport servers are resilient by default. This means that if you install more than one Hub Transport server in an Active Directory (AD) site and one fails, the other(s) will continue to accept connections. In addition, when you have more than one Hub Transport server deployed in an AD site, connections will be load balanced automatically between the Hub Transport servers. There is only one exception to this rule, and that is when a Hub Transport server role is installed on a server also holding the Mailbox server role. In this specific scenario the Hub Transport server local to the Mailbox server will always be preferred over other Hub Transport servers in the AD site.


The resilient behavior that by default is built into the Hub Transport server works just fine for many organizations, but there are situations where you as an Exchange messaging administrator or consultant, for example, have a line of business (LOB) application, Microsoft Office SharePoint Server 2007 (MOSS 2007) portal, or perhaps a System Center Operations Manager 2007 (SCOM 2007) service management solution which, in order to submit messages to an Exchange organization must use a SMTP relay as these applications cannot log on to a mailbox using MAPI and then send the messages as that mailbox.


So what are your options in these types of scenarios? Well, with the Exchange Server 2007 RTM version, it was not supported to load-balance Hub Transport servers using Windows Network Load Balancing (WNLB) technology. This meant that if you had an application which needed to use your Exchange 2007 messaging environment to relay messages, you either had to specify two SMTP servers in the application (often not possible), use DNS round robin (not as intelligent as NLB) or MX records (not viable if the application only allows you to specify a smart host).


As mentioned load balancing Hub Transport servers in Exchange 2007 RTM was not a supported scenario, but now that Exchange Server 2007 Service Pack 1 (SP1) has been released guess what? Yes you’re right, it’s supported to load balance Hub Transport servers using a hardware load balancer or standard WNLB technology.
Although it’s now supported to configure Hub Transport servers in an NLB, please note that it isn’t supported to load balance connections between Hub Transport servers on your internal corporate production network using this method. You should only use NLB to load balance inbound SMTP connections from applications (such as LOB application, MOSS, and SCOM 2007 etc.) and other non-Exchange sources as well as client connections (in order to send messages, POP & IMAP clients uses the default client receive connector on a Hub Transport server).


In this article series, I’ll show you step by step how you configure Hub Transport servers in a NLB using WNLB. We’ll also verify things works as expected as well as take a look at how fault tolerance and load balancing works for outbound message flow (messages leaving the Exchange organization).


Environment used in this article


If you want to deploy and test the solution explained in this article series in your own environment (you should of course always start out in your lab environment), you will need the following:



  • 1 x Windows 2003 Server SP2 Domain Controller and Global Catalog (DC01)
  • 1 x Windows 2003 Server SP2 with Exchange 2007 SP1 Mailbox and Client Access Server role installed (Mailbox01)
  • 2 x Windows 2003 Server SP2 with Exchange 2007 SP1 Hub Transport Server role installed (HT01 & HT02)


Because the NLB cluster configured in this article series is configured in unicast mode, you need to install two network interface cards (NICs) in each Hub Transport server.


Creating the Alias (FQDN) for the NLB Cluster in DNS


With the environment up and running the very first thing you want to do is to create an A-record for the NLB cluster name in DNS. To do so log on to the domain controller in your Active Directory forest, then open the DNS manager by clicking Start > Run and type dnsmgmt.msc.


Now expand the Forward Lookup Zones container and right-click on the respective forward lookup zone for your Active Directory. On the context menu select New Host (A), then type the name you want to use. As you can see in Figure 1.1, I used MAIL for the purpose of this setup. Then type the IP address you want to use as the Windows NLB cluster IP address (this should be an IP address on the same subnet as the NLB member servers).


Figure 1.1: Creating a DNS Record for the Windows NLB Cluster name in the DNS Manager


Now click Add Host (Figure 1.2) then OK and Done. Close the DNS Manager.


Figure 1.2: Entering the DNS name and IP address


Configuring Network Settings for each NLB Cluster Node


Although not required (as explained earlier), we will use unicast mode with two network adapters installed in this setup (this gives us the most optimal performance). To configure the second network adapter on each Exchange 2007 Hub Transport server, open Network Connections and give each LAN connection a meaningful name as shown in Figure 1.3.


Figure 1.3: Naming the Network Connections


Now open the Property page for the NLB adapter and then configure the TCP/IP settings as shown in Figure 1.4. As you can see you should only specify an IP address and a Subnet mask. When ready click OK.


Figure 1.4: Configuring the TCP/IP Settings for the NLB NIC


Enabling Network Load Balancing on the First Hub Transport Server


Okay, it’s time to enable NLB on the first Hub Transport server in our setup. This can be done via the property page of the network adapter, or by using the Network Load Balancing Manager. I will enable it via the property page of the network adapter, and then add the second Hub Transport server to the NLB cluster in the next section. So let us open the property page of the NLB LAN adapter, and then check Network Load Balancing as shown in Figure 1.5. With Network Load Balancing selected click the Properties button.


Figure 1.5: Enabling Network Load Balancing


Under the Cluster Parameters tab (Figure 1.6) enter the IP address, subnet mask and full Internet name for the NLB cluster. Next make sure unicast is selected under Cluster operation mode.


Figure 1.6: Configuring the Cluster Parameters


Now, click the Host Parameters tab and enter the IP address and subnet mask configured for the network adapter (Figure 1.7). Let the other settings stay at their defaults.


Figure 1.7: Configuring the Host Parameters


Click the Port Rules tab then select the default port rule and click Remove.


We now need to add a port rule for each of the ports the NLB cluster should accept client requests on. To do so click the Add button, then enter the respective port under Port range (Figure 1.8). Also make sure Affinity is set to Single. Finally click OK to add the port rule.


Figure 1.8: Configuring the NLB Cluster Port Rules


Do this for each required port, so you get a list of rules similar to what is shown in Figure 1.9 depending on what client access services you want to allow in your organization.


Figure 1.9:  List of Configured Port Rules


Click OK and OK again to the Information message you receive (Figure 1.10).


Figure 1.10: Informational dialog box


Now add the new virtual cluster IP address under the TCP/IP property page of the network adapter as shown in Figure 1.11.


Figure 1.11: Adding the NLB Cluster IP Address on the TCP/IP Settings Page


Finally click Add then OK. We have now setup a Windows NLB cluster with one member server.


Adding the Second Hub Transport Server to the NLB Cluster


What good is a NLB cluster with only one member server? Correct not very good. So let’s add the second Exchange 2007 Hub Transport server to the cluster as well. To do so open the Network Load Balancing Manager by clicking Start > Run and typing NLBMGR.EXE (or click Administrative Tools > Network Load Balancing Manager). This will open the Network Load Balancing Manager shown in Figure 1.12.


Figure 1.12: Network Load Balancing Manager


To add the second server to the NLB cluster, click Cluster in the menu, then Add Host. In the appearing window, type the name of the second Hub Transport server then hit Connect (Figure 1.13).  Select the respective cluster and click Finish.


Figure 1.13: Adding the Second Hub Transport Server to the NLB Cluster


Next, type the IP address and subnet mask of the network adapter that should be associated with the NLB cluster then click Finish (Figure 1.14).


Figure 1.14: Configuring the Host Parameter Settings for the Second Hub Transport Server


Now wait for a little while in order for the server to be added and configured accordingly (Figure 1.15).


Figure 1.15: Second Hub Transport Server added to the NLB Cluster


Close the Network Load Balancing Manager. We have now load-balanced the Hub Transport servers in our lab environment, but there are still a couple of configuration steps to do.


That was all I had to share with you this time, but you can look forward to the second article in this articles series, which will be released in a near future. Until then have a nice one!


If you would like to read the next part in this article series please go to Load Balancing Exchange 2007 SP1 Hub Transport Servers using Windows Network Load Balancing Technology (Part 2)

About The Author

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top