The Lync questions keep coming! Yesterday, one came in with a request that appeared pretty simple:

“I tried to connect our Lync Server to Exchange Online. Now we can’t use voice mail. What went wrong?”

VERY good question. Let’s tackle it.

Connecting an Internal Lync Server to an External Exchange Server?

Let’s take a step back from this. What they did was try to connect a Lync Server to Office 365’s Exchange Online package. One internal system (Lync), interoperating with an external one (Exchange Online).

There are several reasons you might want to do this.

  • Sharing of calendar information and Out of Office messages
  • Voice mail interoperability
  • IM and Presence status showing up in Outlook Web App (as in, outside the organization)

Yes, it’s possible to connect these two services. But it’s more complicated than you’d think at first. Several management steps are required for Lync and Exchange Online to see each other, THEN talk to each other.

In fact, there’s a whole checklist you need to follow to make it all work:

Microsoft posted this late last month. Many people missed it due to the holidays. (But that’s why we have the Lync Insider blog, right?)

How-To, Step 1 – Provide Lync Users with Voice Mail on Exchange Online

(Please note, I’m starting at #2 on the checklist linked above. #1 is deploying Lync Server 2010, with Edge Servers and Enterprise Voice. If you need help with those, read our Path to Lync Server – Step 6: Install Lync Server post.)

A) Create a DNS SRV Record for integration.

  1. Log on to your external DNS server (as a DnsAdmins group member!).
  2. Click Start / Administrative Tools, and then click DNS.
  3. In the console tree for your SIP domain, expand Forward Lookup Zones. Select the SIP domain where your Lync Server is installed (e.g. “”).
  4. Right-click the SIP domain, and click Other New Records.
  5. Click “Service Location (SRV)” under Resource Record Type.
  6. Click “Create Record.”
  7. In the New Resource Record window, click Service. Enter _sipfederationtls (don’t forget the underscore).
  8. Click Protocol. Enter _tcp
  9. Click Port Number. Enter 5061
  10. Click “Host offering this service.” Enter the FQDN of the Lync Server Edge pool that provides access to external clients.
  11. Click OK. Then click Done.

Make sure the domain used in the SRV record you’re creating here matches the domain used in the DNS Host (A) record.

B) Set up external Edge Certificates.

You may already have certificates set up on the external Edge Server. If they’re set up for federation, then you’re fine here. If not, use these instructions:

  • Switch to a member login with higher permissions (e.g. the RTCUniversalServerAdmins group).
  • Follow the steps at this TechNet page:
  • They will guide you through creating the certificate request, submitting it, importing & assigning the certificate to your Edge Servers.

C) Configure the Edge Server for integration.

1. Configure your Edge Server for federation. Start the Lync Server Management Shell (under Start / All Programs / Microsoft Lync Server 2010). Enter this cmdlet:

Set-CsAccessEdgeConfiguration -UseDnsSrvRouting -AllowFederatedUsers 1 -EnablePartnerDiscovery 0

It indicates that Edge Servers will use DNS SRV records for federation requests, allows federated users, and specifies that Lync should use DNS records to discover a partner domain (in this case, the Exchange Online service).

2. Still in the Management Shell, we’ll create a hosting provider on the Edge Server. Do this using the New-CsHostingProvider cmdlet.

New-CsHostingProvider -Identity -Enabled $True -EnabledSharedAddressSpace $True -HostsOCSUsers $False -ProxyFQDN “” -IsLocal $False -VerficationLevel UseSourceVerification

Where I’ve inserted “” – for the Identity and ProxyFQDN parameters – enter the URLs for your Exchange Online setup.

(UPDATE: To find the Identity and ProxyFQDN parameters for your Office 365 setup, visit this addendum post.)

3. Verify that the Central Management Store data replicates to your Edge Server. See this TechNet link if you need help.

D) Enable your users for hosted voice mail.

Still in the Management Shell, use the Set-CsUser cmdlet:

Set-CsUser -HostedVoiceMail $True -Identity “YourDomainJoeSmith”

Identity parameter can use either the user’s SIP address, their domainlogon name (like the above), their AD-DS display name or their User-Principal-Name. Easy to do – but you’ll have to enable every user this way!

E) Create Contact Objects for Exchange UM Online.

You’ll need contact objects for each auto-attendant (AA) number and subscriber access (SA) number in your deployment. Set these in Management Shell with the New-CsExUmContact cmdlet:

New-CsExUmContact -SipAddress “” -RegistrarPool “” -OU “Exchange Online Integration” -DisplayNumber “+14085551111” -AutoAttendant $True

New-CsExUmContact -SipAddress “” -RegistrarPool “” -OU “Exchange Online Integration” -DisplayNumber “+14085551111”

SipAddress should be a new address, not in use by a user or contact object in AD-DS. RegistrarPool is the FQDN for the pool where your Registrar service runs. OU specifies where your contact object will be. DisplayNumber must be a unique number for each contact object. If AutoAttendant is set to True, the contact object is set as an Auto Attendant Object. If set to False, it’s a Subscriber Access object.

This is a lot to go through, I know.  Stay sharp – that’s just Part 1 of the setup!

In Part 2 next week, I’ll go through configuring Exchange Online so its Unified Messaging works with Lync. See you then!

How to Connect Lync Server to Exchange Online: Part 1

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.