配置 SIP 网关

本文介绍如何配置 SIP 网关,以便组织可以通过 Microsoft Teams 使用兼容的 SIP 设备。 若要了解 SIP 网关可为组织执行哪些操作,以及组织需要哪些硬件、软件和许可证,请阅读 规划 SIP 网关

在配置 SIP 网关之前,请执行以下操作:

  • 将 SIP 设备重置为出厂默认设置。 你或你的组织的用户必须将与 SIP 网关一起使用的每个 SIP 设备重置为其出厂默认设置。 若要了解如何执行此操作,请参阅制造商的说明。

  • 打开防火墙以Microsoft 365 和 Teams。 打开网络的防火墙以Microsoft 365 和 Teams 流量,如Office 365 URL 和 IP 地址范围中所述。 仅出站流量需要防火墙规则。

  • 确保 SIP 设备不在代理后面。 确保 http/s 流量绕过任何公司 http/s 代理。

  • 打开 UDP 端口。 为 IP 范围 52.112.0.0/14 和 52.122.0.0/15 打开 49152 到 53247 范围内的 UDP 端口。

  • 打开 TCP 端口。 打开 IP 范围 52.112.0.0/14 和 52.122.0.0/15 的 TCP 端口 5061。

以下部分介绍了作为管理员配置 SIP 网关必须执行的操作。

本文还介绍如何:

验证 SIP 网关是否可用于组织

  1. 登录到 Teams 管理中心

  2. 在左侧选择“ Teams 设备 ”,查看 “SIP 设备 ”选项卡是否可见。 如果是,则为组织启用 SIP 网关服务。

为组织中的用户启用 SIP 网关

可以通过以下两种方式之一为组织启用 SIP 网关:使用 Teams 管理中心或使用 PowerShell cmdlet。

使用 Teams 管理中心

若要在 Teams 管理中心启用 SIP 网关,请执行以下步骤:

  1. 转到 Teams 管理中心

  2. 在左侧的 “语音”下,选择“ 呼叫策略”。

  3. “管理策略”下的右侧,选择分配给用户的相应调用策略,或者根据需要创建新的呼叫策略并将其分配给所需用户。

  4. 选择 “管理策略”,选择一个策略,然后选择“ 编辑”。

  5. 打开 “SIP 设备可用于呼叫”的设置,然后选择“ 保存”。

使用 PowerShell

还可以使用 PowerShell Set-CsTeamsCallingPolicy cmdlet 启用 SIP 网关。 若要为 SIP 设备启用用户,请选择一个策略,并将 属性 -AllowSIPDevicesCalling 设置为 True。 默认值 False为 ,因此除非启用,否则用户将无法使用其 SIP 设备。

注意

策略传播最多可能需要 24 小时。

设置 SIP 网关预配服务器 URL

可以在动态主机配置协议 (DHCP) 服务器中设置 SIP 网关预配服务器的 URL。 远程工作的用户必须手动配置它。

使用 DHCP

对于每个 SIP 设备,请设置以下 SIP 网关预配服务器 URL 之一:

  • EMEA: http://emea.ipp.sdg.teams.microsoft.com
  • 美洲: http://noam.ipp.sdg.teams.microsoft.com
  • APAC: http://apac.ipp.sdg.teams.microsoft.com

通过在 DHCP 服务器中配置上述 SIP 网关预配服务器 URL,将 SIP 设备添加到 Teams 组织。 若要详细了解 DHCP 服务器,请参阅 部署和管理 DHCP。 此外,可以使用 DHCP 选项 42 (NTP) 服务器指定网络时间协议,使用 DHCP 选项 2 指定协调世界时 (UTC) 的偏移量(以秒为单位)。 组织中的设备将路由到 SIP 网关预配服务器。 成功预配的 SIP 电话将显示 Teams 徽标和用于登录的软按钮。

确保 SIP 设备处于支持的最低载入固件版本。 在载入期间,SIP 网关会将默认配置和身份验证用户界面推送到设备。 若要了解 SIP 设备所需的固件版本,请参阅 规划 SIP 网关

手动地

远程工作的用户必须使用以下步骤将预配服务器 URL 手动配置到其 SIP 设备:

  1. 在设备上打开 “设置” 并获取设备的 IP 地址。

  2. 打开浏览器窗口,输入设备的 IP 地址,根据需要登录 () 并在设备的 Web 实用工具中配置预配服务器的 URL。

  3. “设置” 或“Web 实用工具 的高级设置” 下,输入上面显示的预配服务器 URL。

注意

  • 只能将兼容的 SIP 设备载入到 SIP 网关。
  • 必须先将 Cisco IP 电话刷写到多平台固件,然后才能载入。 若要了解如何操作,请参阅 Cisco 固件转换指南
  • 对于 Yealink 和 Alcatel-Lucent 企业版电话,请使用选项 66。
  • 对于 Cisco、Poly 和 AudioCode 电话,请使用选项 160。
  • 对于 Cisco 设备,请将 /$PSN.xml 追加到预配服务器 URL。

配置条件访问

条件访问是一项Microsoft Entra功能,可帮助确保访问 Microsoft 365 资源的设备得到适当的管理和保护。 SIP 设备不由Intune因此会对其应用更严格的条件访问检查。 SIP 网关使用Microsoft Entra ID对 SIP 设备进行身份验证,因此,如果组织对公司网络中的设备使用条件访问,则应执行以下操作之一:

  1. 从条件访问检查中排除站点公共 IP 地址和以下 SIP 网关服务 IP 地址:

    • 北美:
      • 美国东部:52.170.38.140
      • 美国西部:40.112.144.212
    • EMEA 区域:
      • 欧盟北部:40.112.71.149
      • 欧盟西部:40.113.112.67
    • APAC 区域:
      • 澳大利亚东部:20.92.120.71
      • 澳大利亚东南部:13.73.115.90
  2. 从条件访问检查中排除 Teams 应用。

有关详细信息,请参阅 IP 地址范围

将 SIP 设备预配和注册为公用区域电话

注意

SIP 设备必须先载入 SIP 网关,然后才能注册。

若要简化任务,可以在 Teams 管理中心中一次注册一个 SIP 设备,也可以分批注册 SIP 设备。 操作步骤如下:

  1. 登录到 Teams 管理中心

  2. 选择 “Teams 设备>SIP 设备”。

  3. 在右上角,选择 “操作>预配设备 ”,然后执行以下步骤之一:

    • 若要预配一台设备,请执行以下操作:

      1. “等待激活”下,选择“ 添加”。

      2. “添加 MAC 地址 ”窗格中,输入设备的 MAC 地址位置 ,然后选择“ 应用”。

      3. “等待激活”下,选择刚刚添加的设备,然后选择“ 生成验证码”。

      4. 在“ 预配设备 ”窗格的 “验证码”下,记下 SIP 设备的验证码。

    • 若要预配多个设备,请执行以下操作:

      1. 在右侧的 “等待激活”下,选择“ 导出 ” (Microsoft Excel 图标) 。

      2. 在“ 预配设备 ”窗格的“ 上传多个 MAC 地址”下,选择 “下载模板”。

      3. 将Template_Provisioning.csv 保存到计算机,并填写“MAC ID”和“位置”字段。

      4. “预配设备 ”窗格中,选择“ 上传多个 MAC 地址”。

      5. 在“ 上传 MAC 地址 ”窗格的右侧,选择“ 选择文件”,然后选择包含数据的 Template_Provisioning.csv 文件。

      6. “预配设备 ”窗格的“ 等待激活”下,选择一台设备,然后选择“ 生成验证码 ”,为每个预配的设备生成一次性验证码。 记下每个 SIP 设备的验证码。

  4. 在 SIP 设备上,拨打注册功能代码,后跟验证码。 在 SIP 设备上,拨打 SIP 网关用于注册一次性验证码验证) 的注册功能代码 *55* (,然后拨出此特定设备的 Teams 管理员中心生成的验证码。 例如,如果验证码123456,请拨打 *55*123456 注册设备。

  5. “预配设备 ”窗格的 “等待登录”下,选择“ 注销”。

  6. “登录用户 ”对话框中,将显示身份验证 URL 和配对代码。

  7. 在用户的桌面或移动浏览器中导航到身份验证 URL,并使用公司凭据登录。

  8. 在 Web 身份验证应用中输入“ 登录用户 ”对话框中显示的配对代码,将 SIP 电话与用户帐户配对。 成功登录(可能需要一段时间),如果设备支持,SIP 电话将显示电话号码和用户名。

如何登录和注销

用户的个人设备仅支持本地登录。 若要从管理员中心注销设备,请执行以下步骤:

  1. 登录到 Teams 管理中心

  2. 选择 “Teams 设备>SIP 设备”。

  3. 在右侧,选择 SIP 设备,然后选择“ 注销”。

零接触公共区域电话登录

你可以远程将公用区域电话登录到 SIP 网关,而无需对设备进行任何物理干预。

  1. 确保 大容量登录先决条件 已到位。

  2. 在浏览器选项卡中打开 SIP 远程登录门户

  3. 使用要与设备关联的公用区域电话凭据进行身份验证。

  4. 选择适当的设备区域。 可以使用 NOAM、EMEA 或 APAC。

  5. 以 XX-XX-XX 格式输入设备的 MAC 地址。

用户配对和登录

若要在用户使用公司凭据进行身份验证后配对 SIP 设备,用户必须:

  1. 在 SIP 电话上按 “登录” 以显示身份验证 URL 和配对代码。 配对代码对时间敏感。 如果过期,用户必须在手机上按 “后退 ”,然后再次开始登录过程。

  2. 在用户的桌面或移动浏览器中导航到身份验证 URL,并使用公司凭据登录。

  3. 将 SIP 电话上显示的配对代码输入到 Web 身份验证应用中,以将 SIP 电话与用户帐户配对。 成功登录(可能需要一段时间),如果设备支持,SIP 电话将显示电话号码和用户名。

注意

Microsoft Entra Web 身份验证应用中显示的设备位置是设备连接到的 SIP 网关数据中心。 范围内的 SIP 电话不支持 OAuth,因此 SIP 网关通过 Web 身份验证应用对用户进行身份验证,然后将设备与用户的凭据配对。 在此处了解详细信息:Microsoft 标识平台和 OAuth 2.0 设备授权流

注意

我们将逐步为 SIP 网关兼容的设备引入新的身份验证体验。 具有新体验的用户将看到 新的身份验证 URL

注销

若要注销,设备用户可以:

  • 在 SIP 设备上按 “注销 ”,然后按照设备上所述的步骤进行操作。

若要在 Teams 管理中心注销设备,请执行以下操作:

  1. 登录到 Teams 管理中心

  2. 选择 “Teams 设备>SIP 设备”。

  3. 在右侧的“ SIP 设备 ”窗格中,选择设备。

  4. 在设备的 “详细信息”窗格中,选择“ 详细信息 ”选项卡,然后在右上方的 “操作” 菜单上,选择“ 注销”。

批量登录

批量登录使你能够在 SIP 设备上以最多 100 台设备的批方式使用共享帐户登录,但每个区域的限制为 3 个并发批。

批量登录非常有用,可用于这些方案。

  • 激活新的 SIP 设备 如果要在 3 天内激活和部署新的 SIP 设备, (或 72 小时) 加入 SIP 网关。
  • 已注销的设备 若要登录因任何原因而注销的设备,请在 7 天内 (或 168 小时) 注销。在此方案中,无需将租户 ID 添加到预配 URL,如下面的步骤 2 所示。

批量登录先决条件

  1. 在运行批量登录 cmdlet 之前,必须至少 24 小时在 Teams 管理中心将站点公共 IP 地址或范围添加到 租户的受信任 IP

  2. 必须将组织的租户 ID 添加到设备的预配 URL。

    注意

    以下示例适用于 北美 区域。

    • 对于 Alcatel-Lucent 企业版、AudioCodes 和 Yealink IP 电话,请使用: http://noam.ipp.sdg.teams.microsoft.com/tenantid/<your-tenant-ID-guid>
    • 对于 Cisco IP 电话,请使用: http://noam.ipp.sdg.teams.microsoft.com/tenantid/<your-tenant-ID-guid>/$PSN.xml
    • 对于连接到 AudioCodes ATA 的模拟设备,请使用: http://noam.ipp.sdg.teams.microsoft.com/tenantid/<your-tenant-ID-guid>/mac.ini

    重要

    对于 Cisco ATA,请将 mac.ini 替换为 mac.cfg。 对于 Poly ATA,请将 mac.ini 替换为 $mac.cfg。

  3. 必须安装 Microsoft Teams Power Shell 5.6.0 或更高版本。

    注意

    批量登录 cmdlet 未包含在以前的版本中。

  4. 必须将 CommonAreaPhone 策略 应用于属于批量登录请求的帐户。

  5. 这些帐户不得启用多重身份验证 (MFA) 。

  6. 帐户必须分配有电话号码。

  7. 这些帐户必须分配 SIP 设备呼叫策略。 AllowSIPDevicesCalling 策略

  8. 必须使用具有 全局管理员、特权身份验证管理员或身份验证管理员角色的 帐户来运行 cmdlet。

    重要

    Microsoft建议使用权限最少的角色。 使用权限较低的帐户有助于提高组织的安全性。 全局管理员是一种高特权角色,在无法使用现有角色时,应仅限于紧急情况。

  9. TeamsSipDevicesConfiguration 中,BulkSignIn 属性必须设置为Enabled

    注意

    最佳做法是在设备预配后至少 1 小时和最多 70 小时尝试运行批量登录 cmdlet。

如何创建批量登录请求

  1. 创建将用于两列的 CSV 文件: 用户名HardwareId

    • 用户名列:将Microsoft Entra用户名或用户主体名称 (列表中,) 用于与 HardwareId 列中找到的设备 MAC 地址相关联。

    • HardwareId 列:按以下格式列出每个 IP 电话的 MAC 地址:xx-xx-xx-xx-xx-xx 或 xx-xx-xx-xx-xx-xx:xxx (,其中最后三位数字是 ATA 端口号。对于模拟设备,端口号从 001.) 没有 ATA 端口号的 MAC 地址的示例为:1A-2B-3C-D4-E5-F6。 模拟设备的 MAC 地址示例为:1A-2B-3C-D4-E5-F6:001

    • 示例 CSV

      Username HardwareId
      FirstFloorLobbyPhone1@contoso.com 1A-2B-3C-D4-E5-F6
      SecondFloorLobbyPhone2@contoso.com 2A-3B-4C-5D-6E-7F
  2. 按照使用 PowerShell 为一线工作人员大规模部署一线静态团队中所述设置 PowerShell 环境,并获取Microsoft Teams PowerShell 模块 5.6.0。

  3. 请运行以下命令:

    Import-Module MicrosoftTeams
    $credential = Get-Credential   // Enter your admin’s email and password 
    Connect-MicrosoftTeams –Credential $credential
    $newBatchResponse = New-CsSdgBulkSignInRequest  -DeviceDetailsFilePath  .\Example.csv  -Region APAC
    

    参数 DeviceDetailsFilePath 指定创建并保存的 CSV 的位置。 参数 Region 指定部署设备的 SIP 网关预配区域。 值为:APAC、EMEA、NOAM。

  4. 若要检查批量登录批处理的状态,请运行以下命令:

    $newBatchResponse = New-CsSdgBulkSignInRequest  -DeviceDetailsFilePath  .\Example.csv  -Region APAC
    $newBatchResponse.BatchId
    $getBatchStatusResponse = Get-CsSdgBulkSignInRequestStatus -Batchid $newBatchResponse.BatchId
    $getBatchStatusResponse | ft
    $getBatchStatusResponse.BatchItem
    

批量登录错误消息

为了帮助你排查和修复常见问题,你可能会看到这些常见错误消息,以及应该采取哪些操作来修复它。

错误消息 潜在解决方案
在租户中找不到用户。 检查用户名或用户主体名称 (UPN) 是否正确。
用户缺少电话号码分配。 验证用户是否分配了电话号码。
用户缺少 AllowSIPDevicesCalling 策略分配 AllowSIPDevicesCalling验证策略是否设置为“已启用”。 请参阅先决条件 7。
用户缺少 CAP 策略分配。 验证帐户是否已 CommonAreaPhone 分配策略。 请参阅先决条件 4
在记录中找不到设备。 检查设备是否已正确预配到 SIP 网关,以及批量登录请求中的 region 参数是否正确。
设备的 BulkSignIn 标记缺失 检查设备预配 URL 是否具有正确的租户 ID。
设备处于脱机状态。 无法找到设备,因为它已关闭或与网络断开连接。 重新连接设备,然后重试。
公共 IP 未配置为受信任的 IP。 预配 URL 中列出的租户 ID 不正确,或者设备的公共 IP 地址未在 Teams 管理中心中列为受信任的 IP 地址。 请参阅先决条件 1。
批量登录截止时间已过期。 设备在预配 (后 72 小时内或) 168 小时内未登录。
找到用于批量登录的重复设备。 验证 CSV 文件中包含的 MAC 地址是否正确,并且没有重复的地址。 返回重复设备的 IP 地址。
输入硬件 ID 的格式不正确 验证硬件 ID 格式。 请参阅 How to create a bulk sign in request
本地 AD 配置失败。 请联系本地 Active Directory团队。
检测到本地 AD 限制 请重试,但批中的设备数较少。 根据网络连接情况,大型批处理需要更多时间才能完成,并且可能会卡住。
密码写回服务未能在租户的本地目录上设置密码。 用于设备的用户帐户不得具有 用户必须在下次登录时更改密码 ,或者 无法更改用户的密码OR 并且必须将最短密码期限设置为大于 0 的值。 验证未选择密码选项,并且最短密码期限设置为 0,然后重试。

查看和监视 SIP 设备

设备的用户至少登录一次后,可以在 Teams 管理中心查看和监视 SIP 设备清单。 操作步骤如下:

  1. 登录到 Teams 管理中心

  2. 选择 “Teams 设备>SIP 设备”。 右侧列出了所有已登录的 SIP 设备。

重启 SIP 设备

  1. 登录到 Teams 管理中心

  2. 选择 “Teams 设备>SIP 设备”。

  3. 在右侧,选择要重启的 SIP 设备,然后选择“ 重启”。

注意

  • 从租户中删除 SIP 设备目前在 Teams 管理中心不可用。
  • 命令执行取决于设备可用性,它可能与 Teams 管理中心中显示的执行状态不匹配。 如果尝试在不支持 SIP 网关的设备上启用 SIP 网关,则不会执行该命令。

将策略更改同步到 SIP 设备以强制实施策略

用户登录时,会将用户详细信息和策略提取到 SIP 设备。 此后,针对已登录用户所做的任何策略更改将在一小时内同步到设备。 设备必须定期使用 SIP 网关刷新其注册。 SIP 电话依赖于呼叫重定向,因此管理员必须将 中的 Set-CsTeamsCallingPolicy 属性设置为 。AllowCallRedirectEnabled

设置 SIP 设备的 UI 语言

SIP 设备通常可以多种语言显示信息。 设置其 UI 语言会影响其界面,包括软键和登录/注销系统消息。 设置 UI 语言是在预配服务器中使用 DHCP 服务器完成的,或者通过在 URL 中追加代码字符串手动完成,如以下示例所示。

如何为 Polycom、AudioCodes、Alcatel-Lucent Enterprise 和 Yealink 电话设置德语:

  • http://emea.ipp.sdg.teams.microsoft.com/lang_de

如何为 Cisco 手机设置日语:

  • http://emea.ipp.sdg.teams.microsoft.com/lang_ja/$PSN.xml

支持的语言

语言名称 语言代码
英语 (默认) en
西班牙语 es
日语 ja
德语
法语 fr
葡萄牙语

注意

Yealink 不支持日语,Polycom VVX 部分支持日语。

  • 如果 SIP 终结点不支持所选语言,则系统默认为英语。

  • 如果未通过预配 URL 设置 lang_xx 参数,则使用英语作为默认语言。

  • 如果 登录以发出紧急呼叫 文本未翻译为其他语言,由于屏幕大小限制,在以下 IP 电话型号上 按“登录 ”上将显示英文缩写版本:

    • Poly VVX 150、VVX 201
    • Cisco CP-6821、CP-7811、CP-7821、CP-7841、CP-7861
  • 由于字符串长度限制,语音邮件软键标签在 Poly VVX 的所有语言中使用 VM 文本进行硬编码。

Microsoft Teams 和 IPv6

SIP 网关仅支持 IPv4。 Microsoft Teams 服务和客户端支持 IPv4 和 IPv6。 如果要控制Microsoft Teams 的通信,请使用 Microsoft 365 URL 和 IP 地址范围中的 IP 地址范围

紧急呼叫

SIP 网关支持动态紧急呼叫 (动态 E911) ,用于通过网络共享网络属性的兼容 SIP 设备。 这些属性在 Teams 管理中心进行预配,可以是本地 IP 和子网长度的组合,也可以是机箱 ID 和网络端口号的组合。 对于不共享位置属性的设备,或者如果出于任何原因未动态解析位置,SIP 网关将继续支持基于已注册地址的紧急呼叫。 目前,直接路由方案不支持已注册的地址。 有关紧急呼叫的详细信息,请参阅 计划和管理紧急呼叫

注意

兼容的 Cisco SIP IP 电话仅支持通过 LLDP 进行动态位置发现。

向Microsoft报告问题

若要报告问题,请联系 Microsoft 支持部门