locked
Split DNS, SIP addresses, and presence detection RRS feed

  • Question

  • I've set up an Enterprise OCS 2007 R2 environment which currently consists of a single front-end server.  The machine was added to an existing AD infrastructure, all of which works flawlessly.

    I've installed Office Communicator 2007 R2 on two laptop clients and provisioned two new test user accounts in AD which are OCS-enabled.  All OCS configuration tests pass with flying colors, nothing in the event logs, etc etc etc.

    Now here's where things get interesting...

    This network uses split-brain DNS.  For the sake of discussion, let's say that the domain names are internal.local (AD domain) and external.com.  User accounts are therefore of the format: joeuser@internal.local.  Each user currently has three communications addresses assigned to him/her: an internal SMTP email address (e.g. joeuser@internal.local), an external SMTP email address (e.g. joeuser@external.com) and a SIP address (e.g. sip:joeuser@external.com).  The external SMTP address is marked as default.

    For the time being I am limiting my OCS testing to internal LAN only.  As such, I have configured my two test laptops to sign into Communicator as follows:

    Sign-in address: fred@external.com
    User name: fred@internal.local
    Password: ********

    Sign-in address: barney@external.com
    User name: barney@internal.local
    Password: ********

    On both clients I have chosen to manually specify the address of the pool, e.g. ocspool.internal.local, to eliminate possible problems with automatic signin.

    Both of these clients log in just fine with no errors or warnings.  Their presence indicator (big one at the top of the window) shows online.  However, if I browse for Barney in Fred's client and add Barney to Fred's contact list, Barney's presence is shown as "presence unknown", and vice versa.  More interesting, if Fred browses for Fred and adds himself to his own contact list, his presence is shown as "presence unknown" in his contact list, even though his status shown at the top of his window is Online.  (Ditto for Barney of course.)

    Trying to start an IM conversation with the other party, as you might have guessed, fails because the other party cannot be found.

    Some digging at the logs show the reason quite clearly.  Despite Fred's signin as fred@external.com, when he browses for Barney and adds him to his contacts, he picks up barney@internal.local, NOT barney@external.com.  For that matter, when Fred browses for Fred, he finds himself as fred@internal.local.  The resulting conversations therefore take the form of sip:fred@external.com trying to reach sip:barney@internal.local, and the latter address does not exist in AD, so the communication fails.

    How can I resolve this?  Is there a way to convince Communicator to look up SIP addresses instead of AD login names?  Is there some way to convince it to return both?  Or am I just doing something incredibly stupid or missing some obvious configuration step?

    I suspect I could get all of this to work by changing our SIP naming standard to be sip:joeuser@internal.local instead of sip:joeuser@external.com, but IMHO that's a lousy solution, as sip:joeuser@exernal.com is clearly the more desireable and easily remembered form.

    Thanks in advance for any light you can shed on this.
    Friday, July 17, 2009 4:32 AM

Answers

  • I've never seen that one before; there must be something incorrect in the initial configuration of OCS as it defintely supports this scenario.  What domain(s) do you have configured for SIP?  What is the default SIP routing domain?  Is the Enterprise poolname configured in the internal.com domain (matching the domain of the server's FQDN)? Have the Address Book files been created and downloaded by the OC clients?
    Jeff Schertz, PointBridge | MVP | MCITP: Enterprise Messaging | MCTS: OCS
    Friday, July 17, 2009 12:46 PM
    Moderator
  • I ran into a somewhat simliar situation the other day. This was during OCS 2007 R2 install with an environment that previously had ocs 2007 installed but had since been removed.

    Users were enabled for OCS 2007 R2 and could signin but no presence/communications would happen. When you would enter usernames into the top field the incorrect sip domain would appear just like your situation, if you manually entered user@external.com it would work just fine as expected.

    I deleted the communicator cache directory under C:\users\user\appdata\roaming\microsoft\communicator and restarted hoping it would get a fresh download of the address book. This did not do the trick, interesting part is it was downloading a new address book each time but the address book was incorrect.

    On the OCS front end server I ran abserver.exe -resync and abserver.exe -regenur (http://technet.microsoft.com/en-us/library/bb936631.aspx)

    Then deleting the cache of the local communicator client and signing in to receive a new address book worked.

    Like Jeff said, make sure that you have all SIP information configured correct and that when looking at the user accounts in AD under the communications tab they show as user@external.com. However, my above steps may also help the problem, let us know if that works at all.


    Randy Wintle | MCTS: UC Voice Specialization | WinXnet Inc
    Wednesday, July 22, 2009 12:13 AM

All replies

  • OK what you are explaining is a supported configuration. And I have many organizations with the exact same configuration and it works just fine. You may want to go back and look IN OCS at their Sip URI to be sure that something did not happen when you enabled them.

    You may need to resync the address book if things started out with the users setup as @internal.local and then you changed it to external.com.


    Mitchr |MCITP:Enterprise Server Admin, Messaging |MCTS:OCS with Voice Achievement |MCT
    Friday, July 17, 2009 12:44 PM
  • I've never seen that one before; there must be something incorrect in the initial configuration of OCS as it defintely supports this scenario.  What domain(s) do you have configured for SIP?  What is the default SIP routing domain?  Is the Enterprise poolname configured in the internal.com domain (matching the domain of the server's FQDN)? Have the Address Book files been created and downloaded by the OC clients?
    Jeff Schertz, PointBridge | MVP | MCITP: Enterprise Messaging | MCTS: OCS
    Friday, July 17, 2009 12:46 PM
    Moderator
  • I ran into a somewhat simliar situation the other day. This was during OCS 2007 R2 install with an environment that previously had ocs 2007 installed but had since been removed.

    Users were enabled for OCS 2007 R2 and could signin but no presence/communications would happen. When you would enter usernames into the top field the incorrect sip domain would appear just like your situation, if you manually entered user@external.com it would work just fine as expected.

    I deleted the communicator cache directory under C:\users\user\appdata\roaming\microsoft\communicator and restarted hoping it would get a fresh download of the address book. This did not do the trick, interesting part is it was downloading a new address book each time but the address book was incorrect.

    On the OCS front end server I ran abserver.exe -resync and abserver.exe -regenur (http://technet.microsoft.com/en-us/library/bb936631.aspx)

    Then deleting the cache of the local communicator client and signing in to receive a new address book worked.

    Like Jeff said, make sure that you have all SIP information configured correct and that when looking at the user accounts in AD under the communications tab they show as user@external.com. However, my above steps may also help the problem, let us know if that works at all.


    Randy Wintle | MCTS: UC Voice Specialization | WinXnet Inc
    Wednesday, July 22, 2009 12:13 AM
  • Interesting....I have seen corrupted address book files before, which showed up as scrambled contact cards with the wrong attributes showing in the wrong places.  The correct order and commands for abserver are -RegenUR (pulls data from AD and inserts into SQL) and -SyncNow (pulls data from SQL and inserts into ABS files).
    Jeff Schertz, PointBridge | MVP | MCITP: Enterprise Messaging | MCTS: OCS
    Wednesday, July 22, 2009 1:47 AM
    Moderator
  • interesting issue, but i belive its nothing related to abserver as it seems to work but its query results arent exactly what you've been expecting,  have you added external.com domain as a supported sip domain , whats the default routing sip domain (i think its the problem), you might wanna to review your global settings again, and try to disable the users, and re-enable them to the internal.local sip domain and see if u still have same presence issue

    to be more sure of whats really goin on with ur clients, enable logging and use snooper tool from resources kit, you will see a detailed sip responses when it tries to get presence for your contact list

    Wednesday, July 22, 2009 12:14 PM
  • Just to be clear.

    If the query in the communicator client contains the incorrect SIP information then it is relating to the abserver and the files it is generating, or the abserver has the correct information but users were not correctly enabled for OCS in the AD snap-in.


    Randy Wintle | MCTS: UC Voice Specialization | WinXnet Inc
    Wednesday, July 22, 2009 12:46 PM