• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer
  • Home
  • Disclaimer & Policy

Elan Shudnow's Blog

MVP Logo
  • Azure
  • Exchange
  • Lync

OCS ABServer Issue with DNAT Load Balancing

October 24, 2008 by Elan Shudnow 5 Comments

Whenever load balancing and/or redundancy is needed in Office Communications Server (OCS) 2007, a Hardware Load Balancer needs to be utilized (Windows NLB not supported). This is fine, but you may run into an issue where you cannot run the ABServer.exe (C:\Program Files\Microsoft Office Communications Server 2007\Server\Core\ABServer.exe). This issue is where the ABServer.exe thinks the RTCSRV service is not running.

The reason for this is the ABSServer.exe utilizes port 135 against the Pool Name.  Using DNAT with a Load Balancer will not allow this traffic to go through.  Becuase of this, ABServer thinks the RTCSRV service is not running.

This can easily be temporarily fixed by going into the HOSTS file (C:\WINDOWS\system32\drivers\etc\hosts) and modifying your Poolname to point to the IP Address of your Front End Server.  For example, our Pool’s Virtual IP Address on the Hardware Load Balancer is 10.10.135.220 and the Front End Server’s NIC IP Address is 10.10.135.42.  So what we must do is temporarily point pool.domain.com to 10.10.135.42 in our hosts file.

We can see that now the ABSServer -syncnow command successfully runs.

So how can we automate this all so we don’t have to bother going through all these steps?  Well, here’s a VBScript file created by one of my talented coworkers Mark Dobberstein  that’ll change your hosts file, run ABServer -RegenUR and ABServer -Syncnow and set the hosts file back.

'On Error Resume Next
set objShell = CreateObject("WScript.Shell")

Const ForReading = 1, ForWriting = 2, ForAppending = 8


Set oFSO = CreateObject("Scripting.FileSystemObject")

sHostFile = objShell.ExpandEnvironmentStrings("%systemroot%\system32\drivers\etc\hosts")

oFSO.CopyFile sHostFile, sHostFile & ".bak", TRUE

Set filein = oFSO.OpenTextFile(sHostFile,ForAppending)

filein.Writeline "10.10.135.42       ocspool.domain.com"

filein.close
Set filein = Nothing

objShell.Run """C:\Program Files\Microsoft Office Communications Server 2007\Server\Core\ABServer.exe"" -regenur", 1, TRUE
objShell.Run """C:\Program Files\Microsoft Office Communications Server 2007\Server\Core\ABServer.exe"" –syncnow", 1, TRUE
'objShell.Run "Notepad.exe", 1, TRUE


oFSO.CopyFile sHostFile, sHostFile & ".bak2", TRUE

oFSO.CopyFile sHostFile & ".bak" , sHostFile, TRUE

oFSO.DeleteFile sHostFile & ".bak"

Make sure to change the IP Address and Poolname within the script. The IP Address Listed should be the IP Address of the NIC on the Front End Server.

Share this:

  • Twitter
  • LinkedIn
  • Reddit

Filed Under: OCS Tagged With: OCS

Reader Interactions

Comments

  1. Aaron Tiensivu says

    June 3, 2010 at 8:27 pm

    The only difference in the script that needs to be done is changing paths:
    C:Program FilesMicrosoft Office Communications Server 2007ServerCore
    to
    C:Program FilesMicrosoft Office Communications Server 2007 R2ServerCore

    Reply
  2. Guest says

    March 9, 2010 at 2:25 pm

    I did not utilize the script, but the manual process did work for us in our OCS R2 environment.

    Reply
  3. Milly says

    July 31, 2009 at 7:48 pm

    I had the same error in R2 on Windows 2008, the command requires admin elevation, successfully sync after doing that

    Reply
  4. Elan Shudnow says

    May 22, 2009 at 2:11 pm

    Sounds like you’re using OCS R2. Ensure that you specify the paths in the script properly. I’ve also never tried this on OCS R2, only OCS R1.

    Reply
  5. Anthony Brassfield says

    May 22, 2009 at 1:44 pm

    Hi,

    i have tried the above and still get the RTCSRV service is not running Error. i am setting this up in a VM lab for now to test and installed SQL 2008 on Win 2008 and then setup the FE on a Win 2008 server . i can ping the SQL box and also telnet to port 135. Any ideas as to what the problem might be or some other steps to Troubleshoot would be great. neeed to provide a working lab before going big.

    Thanks in advance.

    Reply

Leave a Reply Cancel reply

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

Primary Sidebar

  • LinkedIn
  • RSS
  • Twitter
  • YouTube

More to See

Azure Event Grid and Serverless PowerShell Functions – Part 1

March 16, 2020 By Elan Shudnow

Retrieving Activity Log Data from Azure Log Analytics – Part 3

March 6, 2020 By Elan Shudnow

Retrieving Activity Log Data from Azure Log Analytics – Part 2

March 6, 2020 By Elan Shudnow

Retrieving Activity Log Data from Azure Log Analytics – Part 1

March 5, 2020 By Elan Shudnow

Tags

ACR Always Encrypted Ansible Azure Azure AD Connect Azure Application Gateway Azure Disk Encryption Azure Firewall Azure Key Vault Azure Load Balancer Azure Monitor Azure Web App Backup Exec CCR CDN DevOps Docker DPM Event Grid Exchange Exchange 2010 Exchange Online Forefront Function App Hyper-V ISA iSCSI Log Analytics Logic App Lync Management Groups NLB OCS Office Office 365 Personal PowerShell RBAC SCOM SQL Storage Accounts Symantec Virtual Machines Windows Server 2008 Windows Server 2008 R2

Footer

About Me

Chicagoland consultant focused on Azure IaaS, PaaS, DevOps, Ansible, Terraform, ARM and Powershell.

Previously a 6x Microsoft MVP in Exchange Server then Lync Server.

My hobbies include watching sports (Baseball, Football and Hockey) and participating in my 14 year old Stepson’s sports.

Recent

  • Azure Event Grid and Serverless PowerShell Functions – Part 2
  • Azure Event Grid and Serverless PowerShell Functions – Part 1
  • Retrieving Activity Log Data from Azure Log Analytics – Part 3
  • Retrieving Activity Log Data from Azure Log Analytics – Part 2
  • Retrieving Activity Log Data from Azure Log Analytics – Part 1

Search

Tags

ACR Always Encrypted Ansible Azure Azure AD Connect Azure Application Gateway Azure Disk Encryption Azure Firewall Azure Key Vault Azure Load Balancer Azure Monitor Azure Web App Backup Exec CCR CDN DevOps Docker DPM Event Grid Exchange Exchange 2010 Exchange Online Forefront Function App Hyper-V ISA iSCSI Log Analytics Logic App Lync Management Groups NLB OCS Office Office 365 Personal PowerShell RBAC SCOM SQL Storage Accounts Symantec Virtual Machines Windows Server 2008 Windows Server 2008 R2

Copyright © 2021 · Magazine Pro on Genesis Framework · WordPress · Log in