Product Documentation

Application Layer Gateway for SIP Protocol

Aug 30, 2016

Using Large Scale NAT64  with Session Initiation Protocol (SIP) is complicated, because SIP messages contain IP addresses in the SIP headers as well as in the SIP body. When LSN is used with SIP, the SIP headers contain information about the caller and the receiver, and the device translates this information to hide it from the outside network. The SIP body contains the Session Description Protocol (SDP) information, which includes IP addresses and port numbers for transmission of the media. SIP ALG for large scale NAT64 is compliant with RFC 3261, RFC 3581, RFC 4566, and RFC 4475.

Limitations of SIP ALG

SIP ALG for large scale NAT64 has the following limitations:

  • Only SDP payload is supported.
  • The following are not supported:
    • Multicast IP addresses
    • Encrypted SDP
    • SIP TLS
    • FQDN translation
    • SIP layer authentication
    • Traffic Domains
    • Admin partitions
    • NetScaler Clusters
    • Multipart body
    • Line folding

Configuring SIP ALG

You need to configure the SIP ALG as part of the LSN configuration. For instructions on configuring LSN, see Configuration Large Scale NAT64. While configuring LSN, make sure that you:

  • Set the following parameters while adding an LSN application profile:
    • IP Pooling = PAIRED
    • Address and Port Mapping = ENDPOINT-INDEPENDENT
    • Filtering = ENDPOINT-INDEPENDENT
  • Create a SIP ALG profile and make sure that you define either the source port range or destination port range. Bind the SIP ALG profile to the LSN group.
  • Enable SIP ALG in the LSN group.

To enable SIP ALG for an LSN configuration by using the NetScaler command line

At the command prompt, type:

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

To enable SIP ALG for an LSN configuration by using the NetScaler command line

At the command prompt, type:

  • 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

Sample Configuration

The following sample large scale NAT64 configuration, SIP ALG is enabled for TCP traffic from subscriber devices in the network 2001:DB8:1003::/96.

Sample Configuration 복사

> add lsn client LSN-NAT64-CLIENT-9
Done 

> bind lsn client LSN-NAT64-CLIENT-9 -network6 2001:DB8:1002::/96
Done

> add lsn pool LSN-NAT64-POOL-9
Done 

> bind lsn pool LSN-NAT64-POOL-9 203.0.113.90
Done 

> add lsn ip6profile LSN-NAT64-PROFILE-9 -type NAT64 -natprefix 2001:DB8:309::/96
Done

> add lsn appsprofile LSN-NAT64-APPS-PROFILE-9 TCP -ippooling PAIRED –mapping ENDPOINT-INDEPENDENT -filtering ENDPOINT-INDEPENDENT
Done

> add lsn sipalgprofile SIPALGPROFILE-9  -sipdstportrange 5060  -sipTransportProtocol TCP 
Done

> add lsn group LSN-NAT64-GROUP-9 -clientnameLSN-NAT64-CLIENT-9 -ip6profile LSN-NAT64-PROFILE-7 -sipalg ENABLED
Done

> bind lsn group LSN-NAT64-GROUP-9 -poolnameLSN-NAT64-POOL-9 

Done

> bind lsn group LSN-NAT64-GROUP-9 -appsprofilename LSN-NAT64-APPS-PROFILE-9

Done

> bind lsn group LSN-NAT64-GROUP-9 -sipalgprofilename SIPALGPROFILE-9 

Done