Citrix ADC

SIP 协议的应用程序层网关

将 DS-Lite 与会话启动协议 (SIP) 结合使用非常复杂,因为 SIP 消息在 SIP 标头以及 SIP 正文中包含 IP 地址。与 SIP 一起使用 LSN 时,SIP 标头包含有关调用者和接收者的信息,设备将此信息转换为将其隐藏在外部网络中。SIP 正文包含会话描述协议 (SDP) 信息,其中包括用于传输媒体的 IP 地址和端口号。适用于 DS-Lite 的 SIP ALG 符合 RFC 3261、RFC 3581、RFC 4566 和 RFC 4475 的要求。

注意

Citrix ADC 独立设备、Citrix ADC 高可用性设置以及 Citrix ADC 群集设置均支持 SIP ALG。

SIP ALG 的局限性

DS-Lite 的 SIP ALG 具有以下限制:

  • 仅支持 SDP 负载。
  • 以下对象不受支持:
    • 多播 IP 地址
    • 加密的 SDP
    • SIP TL
    • FQDN 翻译
    • SIP 层身份验证
    • 管理分区
    • 多部位体
    • 折線

配置 SIP ALG

您需要将 SIP ALG 配置作为 LSN 配置的一部分。有关配置 LSN 的说明,请参阅 配置 DS-Lite。配置 LSN 时,请确保:

  • 在添加 LSN 应用程序配置文件时设置以下参数:

    • IP 池 = 已配对
    • 地址和端口映射 = 与端点无关
    • 过滤 = 与端点无关
  • 创建 SIP ALG 配置文件,并确保定义源端口范围或目标端口范围。将 SIP ALG 配置文件绑定到 LSN 组
  • 在 LSN 组中启用 SIP ALG

使用 CLI 为 LSN 配置启用 SIP ALG

在命令提示窗口中,键入:

add lsn group <groupname> -clientname <string>[-sipalg ( ENABLED | DISABLED )]

show lsn group<groupname>

使用 CLI 为 LSN 配置启用 SIP ALG

在命令提示窗口中,键入:

add lsn sipalgprofile<sipalgprofilename>[-dataSessionIdleTimeout<positive_integer>][-sipSessionTimeout<positive_integer>][-registrationTimeout<positive_integer>][-sipsrcportrange<port[-port]>][-sipdstportrange<port[-port]>][-openRegisterPinhole ( ENABLED | DISABLED )][-openContactPinhole ( ENABLED | DISABLED )][-openViaPinhole ( ENABLED | DISABLED )][-openRecordRoutePinhole ( ENABLED | DISABLED )]-sipTransportProtocol ( TCP | UDP )[-openRoutePinhole ( ENABLED | DISABLED )][-rport ( ENABLED | DISABLED )]

show lsn sipalgprofile<sipalgprofilename>

示例配置

下面的示例 DS-Lite 配置,SIP ALG 从网络 2001:DB8::3:0/96 中的 B4 设备的 TCP 流量启用。

add lsn client LSN-DSLITE-CLIENT-1
Done
bind lsn client LSN-DSLITE-CLIENT-1 -network6 2001:DB8::3:0/96
Done
add lsn pool LSN-DSLITE-POOL-1
Done
bind lsn pool LSN-DSLITE-POOL-1 203.0.113.61 - 203.0.113.70
Done
add lsn ip6profile LSN-DSLITE-PROFILE-1 -type DS-Lite -network6 2001:DB8::5:6
Done
add lsn appsprofile LSN-DSLITE-APPS-PROFILE-1 TCP -ippooling PAIRED –mapping ENDPOINT-INDEPENDENT -filtering ENDPOINT-INDEPENDENT
Done
add lsn sipalgprofile SIPALGPROFILE-1  -sipdstportrange 5060 -sipTransportProtocol TCP
Done
add lsn group LSN-DSLITE-GROUP-1 -clientname LSN-DSLITE-CLIENT-1 -portblocksize 1024 -ip6profile LSN-DSLITE-PROFILE-1 -sipalg ENABLED
Done
bind lsn group LSN-DSLITE-GROUP-1 -poolname LSN-DSLITE-POOL-1
Done
bind lsn group LSN-DSLITE-GROUP-1 -appsprofilename LSN-DSLITE-APPS-PROFILE-1
Done
bind lsn group LSN-DSLITE-GROUP-1 -sipalgprofilename SIPALGPROFILE-1
Done

SIP 协议的应用程序层网关