In this section:
Overview
The SBC Edge is certified to offer Microsoft Teams Direct Routing services, and used to connect any Teams client to:
- A PSTN trunk, whether based on TDM (e.g. PRI, BRI, etc.), CAS, or SIP
- 3rd-party, non-Teams-certified SIP/TDM based PBXs, analog devices, and SIP clients
These instructions detail how to connect the SBC Edge for Enterprise's migration from Skype for Business (SfB) On Premises to Microsoft Phone System (Teams).
Network Topology - Skype for Business Server On-Premises Migration to Microsoft Phone System (Teams) Deployment
An enterprise may choose to deploy Teams Phone System services to clients using Skype for Business Server on-premises enterprise voice services. Two migrations scenarios exist:
- Uniquely On-Premises deployment only
- Hybrid On-Premises deployment
Pre-Migration Uniquely On-Premises Deployment
All Skype for Business clients are homed to the On-Premises Skype for Business Server for voice services. No cloud-based VoIP services from Microsoft are used. A Ribbon SBC Edge device qualified for Skype for Business is deployed on the customer premises to support connectivity with the PSTN and legacy clients.
Pre-Migration Hybrid On-Premises Deployment
Skype for Business clients are homed to the Cloud PBX for voice services. No CCE is deployed; the Skype for Business Server provides services analogous to those provided by the CCE. A Ribbon SBC Edge device qualified for Skype for Business and the Skype for Business Server (deployed on premises) to support connectivity with the PSTN and legacy clients.
Post Migration - Hybrid and Uniquely On Premises Deployment
Following configuration, the Ribbon SBC Edge device offers certified Teams Phone System Direct Routing services to enterprise clients.
Step 1: Install SBC Edge
These instructions assume the SBC Edge product (SBC SWe Lite, SBC 1000/2000) is installed and running. If the product is not installed, refer to the links below.
Step 2: Review Prerequisites for Microsoft Teams Direct Routing
Consult the Microsoft documentation for detailed information on Direct Routing interface configuration guidelines, including the RFC standards and the syntax of SIP messages.
SBC Edge Software
Ensure you are running the latest version of SBC software:
- To locate the SBC Edge software current running, refer to: Viewing the Software Version and Hardware ID.
To download and upgrade a new version of SBC Edge software, refer to: Installing and Commissioning the SBC Edge and SBC SWe Lite.
NoteTo know more about licensing, contact your account team.
Obtain IP Address and FQDN
Requirements for configuring the SBC Edge in support of Teams Direct Routing include:
Domain Name
For the SBC Edge to pair with Microsoft Teams, the SBC FQDN domain name must match a name registered in both the Domains and DomainUrlMap fields of the Tenant. Verify the correct domain name is configured for the Tenant as follows:
- On the Microsoft Teams Tenant side, execute Get-CsTenant.
- Review the output.
- Verify that the Domain Name configured is listed in the Domains and DomainUrlMap attributes for the Tenant. If the Domain Name is incorrect or missing, the SBC will not pair with Microsoft Teams.
Users may be from any SIP domain registered for the tenant. For example, you can configure user user@SonusMS01.com with the SBC FQDN name sbc1.hybridvoice.org, as long as both names are registered for the tenant.
Obtain Certificate
Public Certificate
The Certificate must be issued by one of the supported certification authorities (CAs). Wildcard certificates are supported.
Refer to Microsoft documentation for certificate information.
Refer to CCADB Documentation for the comprehensive list of supported CAs.
- Refer to Domain Name for certificate formats.
Configure and Generate Certificates on the SBC
Microsoft Teams Direct Routing allows only TLS connections from the SBC for SIP traffic with a certificate signed by one of the trusted certification authorities.
Request a certificate for the SBC External interface and configure it based on the example using GlobalSign as follows:
- Generate a Certificate Signing Request (CSR) and obtain the certificate from a supported Certification Authority.
- Import the Public CA Root/Intermediate Certificate on the SBC.
- Import the Microsoft CA Certificate on the SBC.
- Import the SBC Certificate.
The certificate is obtained through the Certificate Signing Request (instructions below). The Trusted Root and Intermediary Signing Certificates are obtained from your certification authority.
Step 1: Generate a Certificate Signing Request and obtain the certificate from a supported Certification Authority (CA)
Many CA's do not support a private key with a length of 1024 bits. Validate with your CA requirements and select the appropriate length of the key.
- Access the WebUI.
- Access Settings > Security > SBC Certificates.
Click Generate SBC Edge CSR.
Enter data in the required fields.
Click OK. After the Certificate Signing request finishes generating, copy the result to the clipboard.
Use the generated CSR text from the clipboard to obtain the certificate.
Step 2: Deploy the SBC and Root/Intermediate Certificates on the SBC
After receiving the certificates from the certification authority, install the SBC Certificate and Root/Intermediate Certificates as follows:
- Obtain Trusted Root and Intermediary signing certificates from your certification authority.
- Access the WebUI.
- To install Trusted Root Certificates, click Settings > Security > SBC Certificates > Trusted Root Certificates.
- Click Import and select the trusted root certificates.
- To install the SBC certificate, open Settings > Security > SBC Certificates > SBC Primary Certificate.
Validate the certificate is installed correctly.
- Click Import and select X.509 Signed Certificate.
Validate the certificate is installed correctly.
- To install the Baltimore CyberTrust Root Certificate, click Settings > Security > SBC Certificates > Trusted Root Certificates.
Click Import and select Baltimore CyberTrust Root Certificate.
Validate the certificate is installed correctly.
For certificate-related errors, refer to Common Troubleshooting Issues with Certificates in SBC Edge.
Firewall Rules
Ribbon recommends the deployment of the SBC Edge product behind a firewall, within the DMZ, regardless of the assignment of a public IP to the SBC in question. Refer to SBC Edge Security Hardening Checklist for more information about the SBC and firewalls.
This section lists the ports, protocols and services for firewalls that are in the path of the SBC connecting to Teams Direct Routing.
Basic Firewall Rules for All Call Flows
Firewall Rules for the SBC with Media Bypass
Step 3: Configure Direct Routing from Skype for Business Server On-Premises
These instructions configure the Tenant to connect (pair) the SBC to the Microsoft Direct Routing Interface.
- Access PowerShell. Refer to the PowerShell documentation.
- Connect to the Tenant via Powershell.
Configure the Microsoft Phone system Voice routing. As part of this process, use the following command to create an Online PSTN Gateway that points to the SBC:
New-CsOnlinePSTNGateway -Fqdn <SBC FQDN> -SipSignallingPort <SBC SIP Port> -MaxConcurrentSessions <Max Concurrent Session which SBC capable handling> -Enabled $true
Configure the Teams usage for the user:
Get-CsOnlineUser -Identity user1@domain.com Grant-CsOnlineVoiceRoutingPolicy -PolicyName "GeneralVRP" -Identity user1@domain.com Grant-CsTeamsCallingPolicy -PolicyName AllowCalling -Identity user1@domain.com Grant-CsTeamsUpgradePolicy -PolicyName UpgradeToTeams -Identity user1@domain.com
Step 4: Configure TCP and TLS between SBC Edge and Skype for Business Server
For configuring TCP and TLS between the SBC Edge and Skype for Business server, there are two migration types:
- Migration from Hybrid On-Premises Deployment
- Migration from Uniquely On-Premises Deployment
See below for which migration applies to your network.
Migration from Hybrid On-Premises Deployments
These instructions apply to enterprises with a Hybrid On-Premises for Skype for Business on-premises deployment.
Using TCP between SBC and Skype for Business Server
Follow instructions posted below for basic Teams configuration (Step 5).
For a successful migration, if the SBC is deployed with a private FQDN into Skype for Business On-Premises, do not change the SBC Hostname and Domain. Use the Public FQDN on the new SIP profile only.
Using TLS between SBC and Skype for Business Server
When you configure the
When you create the SIP Profile for the
For SBC Using Publicly-Owned Domain Name
Follow instructions posted below for basic Teams configuration (Step 5).
If the SBC is deployed with a private FQDN in the Skype for Business Server, do not change the SBC Hostname and Domain. Use the Public FQDN on the new SIP profile only.
For SBC Using Non-Owned Public Domain Name
CautionOne TLS port can be attached to only one TLS profile. If your SfB deployment uses TLS 5061 as the Federated port, you must modify this Federated port to use a port other than 5061. To modify the Federated port, you must update the IP/PSTN Gateway's Listen Port of the SfB On-Premise topology and the Federated port of the SfB signaling group.
If you cannot modify your SfB On-Premise topology, you can modify the port that Microsoft Teams Direct Routing uses. Make sure you update the Firewall, ACL, and Federated port of the Teams Signaling Group and Online PSTN Gateway.
Configure a domain name owned by the enterprise through the basic
Migration from Uniquely On-Premises Deployments
These instructions apply to enterprises with a Uniquely On-Premises for Skype for Business Server deployment.
Enable split domain. For details, refer to: Configure Hybrid connectivity between Skype for Business Server and Office 365.
Move On-Premises users to Skype Online. For details, refer to: Move users between On-Premises and Cloud.
Follow the process related to hybrid on premises deployments as described Migrations from Hybrid On-Premises Deployments.
Step 5: Configure SBC Edge for Microsoft Teams Direct Routing
These instructions assume the SBC Edge is installed and running, and is connected to the WebUI.
For the purposes of this documentation, the screens displayed are for an SBC 1000/2000; the interface configuration may vary slightly for the SBC SWe Lite. If configuration is not specified for a field, use the default value.
Access the SBC Edge WebUI
Access the WebUI. Refer to Logging into the SBC Edge.
Configure Host Information and DNS
The Host Information and DNS configuration contains system information that is used by the SBC Edge, including host, domain, and NTP server information.
- In the WebUI, click the Settings tab.
In the left navigation page, access System > Node-Level Settings. The Node-Level Settings page is displayed.
Configure the NTP and DNS Servers with network-specific data.
Leave all other parameters as default.
Click Apply.
Configure Logical Interface
The SBC Edge supports system-supported Logical Interfaces, which are used to hold the IP address for each Ethernet port. One of these logical interfaces is assigned an IP address for transporting the VoIP media packets (i.e., RTP, SRTP) and protocol packets (i.e, SIP, RTCP, TLS). In this example, Ethernet 1 is configured for transporting packets for the Microsoft Teams Direct Routing connection.
Ensure the IP Routing Table contains the same information as in the network topology.
- In the WebUI, click the Settings tab.
In the left navigation pane, go to Node Interfaces > Logical Interfaces.
Configure the parameters as shown below (example values are shown in the table; configure as per your network requirements). For details on field descriptions, refer to Configuring and Modifying Logical Interfaces.
- Leave all other parameters as default.
Click Apply.
Use Easy Config Wizard
Easy Config Wizard can be used to create all the resource required for Microsoft Teams Direct Routing.
Step 1: Select Microsoft Teams Connection
- In the WebUI, click the Tasks tab.
- In the left navigation panel, go to SBC Easy Setup > Easy Config Wizard.
From the Application drop down list, select Microsoft Teams.
Configure per the field definitions below and click Next.
Step 2: Configure Microsoft Teams for Endpoint
Easy Configuration Step 2 includes configuration for the Microsoft Teams endpoint. The configuration items displayed in Step 2 depends on the connection type for the Microsoft Teams leg you configured in Step 1. See below for each type.
- Configure the connection type information.
- Click Next.
The fields below are displayed if you select Teams Direct Routing from the Teams Connection drop down list in Step 1.
Step 3: Summary
Easy Configuration Step 3 includes a summary of the information configured in Step 1 and Step 3.
Review the information and click Finish.
See below for an example:
Create Transformation Table and Entries
This Transformation Table contains a list of call routes that include routing configuration for calls from Microsoft Teams and SIP Trunk. Two Transformation tables are required:
- For Calls from Microsoft Teams to SIP Trunk
- For Calls from SBC's SIP Trunk to Microsoft Teams
Calls From Microsoft Teams to SBC's SIP Trunk
This Transformation Table contains a list of call routes that include routing configuration for calls from Microsoft Teams to SBC's SIP Trunk.
- In the WebUI, click the Settings tab.
- In the left navigation page, access Call Routing > Transformation
Click the (
) icon at the top left corner to add a new Transformation Table.- For Description, enter From Microsoft Teams
Click OK.
In the left navigation panel, select the new table: Transformation > From Microsoft Teams: Passthrough.
Click the Create (
) icon.- Configure the parameters as shown below. Leave the default values for all other parameters.
Click OK.
Calls From SBC's SIP Trunk to Microsoft Teams
This Transformation Table contains a list of call routes that include routing configuration for calls from the SBC's SIP Trunk to Microsoft Teams.
- In the WebUI, click the Settings tab.
- In the left navigation page, access Call Routing> Transformation
Click the (
) icon at the top left corner to add a new Transformation Table.- For Description, enter From SIP Trunk.
Click OK.
In the left navigation panel, select the new table: Transformation > From SIP Trunk to Microsoft Teams: Passthrough.
Click the Create (
) icon.- Configure the parameters as shown below. Leave the default values for all other parameters.
Click OK.
Create Call Routing entries
Two Call Routing Tables need to be modified for transporting calls between the SBC's SIP Trunk and Microsoft Teams:
- Call Route - Calls from Microsoft Teams to SBC's SIP Trunk
- Call Route - Calls from the SBC's SIP Trunk to Microsoft Teams
From Microsoft Teams to SBC's SIP Trunk
This Call Routing Table routes calls from Microsoft Teams.
- In the WebUI, click the Settings tab.
From the left navigation pane, click on the Call Routing > Call Routing table.
Select From Microsoft Teams (the entry you just created).
- Click the ( ).
Configure the parameters as shown below. Leave all other parameters as default.
Click OK.
From SBC's SIP Trunk to Microsoft Teams
This Call Routing Table routes calls from the SBC's SIP Trunk and sent to Microsoft Teams.
To add and configure a new Call Routing Table:
- In the WebUI, click the Settings tab.
From the left navigation pane, click on the Call Routing > Call Routing table.
Select From SIP Trunk, this table already contains an entry to route the calls to CCE.
- Select the existing entry where First Signaling Group is CCE
- Set the Admin State to Disabled
- Click OK.
From the left navigation pane, click on the Call Routing > Call Routing table.
Select From SIP Trunk, this table already contains an entry to route the calls to CCE.
- Click the ( ).
Configure the parameters as shown below. Leave all other parameters as default.
Click OK.
Step 6: Configure SBC Edge when Microsoft Teams is in Media Bypass Mode or Non-Media Bypass Mode
For Media Bypass, the following is supported:
- Deployment on a Public IP address
- Deployment behind NAT
Configure Signaling Group
Before configuring Outbound NAT Traversal, obtain the Public IP address for your network (the Public IP address specified in the screen graphic is an example only); configuration for NAT is required only if deployment is behind NAT.
- In the WebUI, click the Settings tab.
- In the left navigation page, access Signaling Groups
From the Create Signaling Group drop down box, select SIP Signaling Group.
Configure the parameters as shown below. Leave the default values for all other parameters.
Click OK.
The peer endpoint must support the a=rtcp-mux exchange in order for the RTP and RTCP ports to be multiplexed into one data port.
Step 7: Confirm the Configuration
Validate SIP Option
- In the WebUI, click the Settings tab.
- In the left navigation pane, access Signaling Groups.
- For the signaling group configured for Microsoft Teams Direct Routing, click Counters.
- Confirm the number of Incoming and Outgoing SIP Options.
- Confirm the number of Incoming and Outgoing 2xx responses.
Step 8: Place a Test Call
Place a test call as follows: Access the WebUI. Refer to Logging into the SBC Edge. In the WebUI, click the Diagnostics tab. In the left navigation pane, click Test a Call. Configure the parameters as shown below. Click OK. The test call is now complete. For troubleshooting steps, refer to Best Practice - Troubleshoot Issues with Microsoft Teams Direct Routing.