Citrix ADC

大规模的NAT

请注意

此功能可与Citrix ADC高级版或高级版许可证一起使用。

互联网的迅猛发展导致了公共IPv4地址的短缺。大规模NAT (LSN/CGNAT)为这个问题提供了解决方案,通过在大量互联网用户中共享少量的公共IPv4地址,最大限度地利用可用的公共IPv4地址。

LSN将私有IPv4地址转换为公有IPv4地址。它包括网络地址和端口转换方法,将许多私有IP地址聚合为更少的公共IPv4地址。LSN被设计用来处理大规模的NAT。Citrix ADC LSN特性对于提供数百万种翻译以支持大量用户(订户)和非常高吞吐量的互联网服务提供商(isp)和运营商非常有用。

LSN架构

使用Citrix产品的ISP的LSN架构由用户(Internet用户)组成,这些用户位于私有地址空间,通过部署在ISP核心网络中的Citrix ADC设备访问Internet。用户通过运营商的接入网接入运营商。通常,商业互联网用户直接连接到ISP的接入网。为这些用户提供服务只需要一级NAT (NAT44)。

然而,非商业用户通常在客户场所设备(CPE)之后,如路由器和调制解调器,它们也实现了NAT。这两层NAT创建了NAT444模型。在ISP的核心网络中为LSN功能部署Citrix ADC设备对订阅者是透明的,不需要对订阅者或cpe进行配置更改。

局部的图片

Citrix ADC设备接收所有发送到Internet的订阅者信息包。该设备配置了一个用于LSN的预定义NAT IP地址池。Citrix ADC设备使用其LSN特性将包的源IP地址(私有)和端口转换为NAT IP地址(公共)和NAT端口,然后将包发送到Internet上的目的地。该设备维护使用LSN特性的所有活动会话的记录。这些会话称为LSN会话。Citrix ADC设备还维护每个会话的订户IP地址和端口以及NAT IP地址和端口之间的映射。这些映射称为LSN映射。从LSN会话和LSN映射中,Citrix ADC设备识别属于特定会话的响应包(从Internet接收)。设备将响应报文的目的IP地址和端口从NAT IP地址:port转换为用户IP地址:port,并将转换后的报文发送给用户。

Citrix ADC设备支持的LSN特性

以下描述了Citrix ADC设备支持的一些LSN特性:

NAT资源分配

Citrix ADC设备从其预定义的NAT资源池中分配NAT IP地址和端口给订阅者,以将他们的数据包转换为传输到外部主机(Internet)。Citrix ADC设备支持以下类型的NAT IP地址和端口分配给用户:

  • 确定的。Citrix ADC设备为每个订阅者分配一个NAT IP地址和一个端口块。设备依次为这些订阅者分配NAT资源。它将起始NAT IP地址上的第一个端口块分配给起始用户IP地址。下一个端口范围被分配给下一个订阅者,以此类推,直到NAT地址没有足够的端口给下一个订阅者。此时,下一个NAT地址上的第一个端口块被分配给订阅者,以此类推。

    Citrix ADC设备记录为用户分配的NAT IP地址和端口块。对于连接,用户可以仅通过其映射的NAT IP地址和端口块来识别。由于这个原因,Citrix ADC设备不会记录创建或删除的任何LSN会话。如果正在使用整个端口块,则Citrix ADC设备将从订阅者删除任何新连接。

  • 动态的。Citrix ADC设备从LSN NAT池中分配一个随机的NAT IP地址和一个端口用于用户的连接。当在配置中启用端口块分配时,设备在首次发起连接时为订阅者分配一个随机的NAT IP地址和一个端口块。然后,Citrix ADC设备将这个NAT IP地址和分配的块中的一个端口分配给来自该订阅者的每个后续连接。如果正在使用整个端口块,设备在启动新连接时将分配一个新的随机端口块给订阅者。新端口块中的一个端口被分配给新连接。

IP池

如果用户已为已创建的会话分配了随机NAT IP地址和端口,则该用户的后续会话可以使用以下NAT资源分配选项。

  • 配对。Citrix ADC设备为与同一订户关联的所有会话分配相同的NAT IP地址。当该地址没有可用端口时,设备将从订阅者删除任何新连接。对于某些需要在同一源IP地址上创建多个会话的应用程序(例如使用RTP或RTCP协议的点对点应用程序),需要使用此选项。
  • 随机的。Citrix ADC设备从池中为与同一订户关联的不同会话分配随机的NAT IP地址。

重用LSN映射

Citrix ADC设备可以重用现有的LSN映射,用于来自相同订阅者IP地址和端口的新连接。Citrix ADC LSN特性支持以下类型的LSN映射重用:

  1. 端点独立。对于从相同订阅者IP地址和端口(X: X)发送到任何外部IP地址和端口的后续包,Citrix ADC设备重用LSN映射。这种类型的LSN映射重用对于VOIP和点对点应用程序的正常功能非常有用。
  2. 地址相关的。不管外部端口是什么,Citrix ADC设备都重用从相同订户IP地址和端口(X: X)发送到相同外部IP地址(Y)的后续包的LSN映射。
  3. 地址端口相关的。Citrix ADC设备对从相同的内部IP地址和端口(X: X)发送到相同的外部IP地址和端口(Y: Y)的后续包重用LSN映射,而映射仍然是活动的。

LSN过滤

Citrix ADC设备可以根据活动LSN会话和LSN映射过滤来自外部主机的包。考虑一个LSN映射示例,其中包括用户IP:port (X: X)、NAT IP:port (N: N)和外部主机IP:port (Y: Y)的映射。Citrix ADC LSN特性支持以下类型的滤波:

  1. 端点独立。Citrix ADC设备只过滤那些不是目的地为NAT IP:port (N: N)的包,这代表用户IP:port (X: X),而不考虑外部主机IP地址和端口源(Z: Z)。Citrix ADC设备转发任何目的地为X: X的包。换句话说,从订阅者发送数据包到任何外部IP地址就足以允许从任何外部主机发送数据包到订阅者。这种类型的过滤对于VOIP和点对点应用程序的正常运行是有用的。
  2. 地址相关的。Citrix ADC设备过滤掉不是目的地为NAT IP:port (N: N)的包,它代表用户IP:port (X: X)。此外,如果用户之前没有向Y:anyport(外部端口独立)发送过数据包,设备将过滤出从外部主机IP地址和端口(Y: Y)发送到N: N的数据包。换句话说,从特定的外部主机接收数据包需要订阅者首先将数据包发送到该特定的外部主机的IP地址。
  3. 地址端口相关的。Citrix ADC设备过滤掉不是目的地为NAT IP:port (N: N)的包,它代表用户IP:port (X: X)。此外,如果用户以前没有向Y: Y发送过数据包,设备将过滤出从外部主机IP地址和端口(Y: Y)发送到N: N的数据包。换句话说,从特定的外部主机接收数据包需要订阅者首先将数据包发送到该特定的外部IP地址和端口。

配额

Citrix ADC设备可以限制每个订阅者的NAT端口和会话数量,以确保在订阅者之间公平分配资源。Citrix ADC设备还可以限制订阅者组的会话数量,以确保不同订阅者组之间资源的公平分配。

  • 港口配额。Citrix ADC设备可以限制每个订阅者针对指定协议一次使用的LSN NAT端口。例如,您可以将每个订阅者限制为最多500个TCP NAT端口。当订阅服务器的LSN NAT映射达到限制时,Citrix ADC设备不会将指定协议的其他NAT端口分配给该订阅服务器。
  • 用户会话限制。一个订阅者的并发会话数可以超过它的端口配额。Citrix ADC设备可以针对指定协议限制每个订阅者允许的LSN会话。当LSN会话数量达到订阅者的限制时,Citrix ADC设备不允许订阅者打开指定协议的附加会话。
  • 组会话限制。Citrix ADC设备可以限制指定协议的订阅者组所允许的LSN会话总数。当LSN会话总数达到指定协议的组的限制时,Citrix ADC设备不允许组的任何订阅者打开指定协议的附加会话。例如,限制一个组内最大UDP会话数为10000。当该组的UDP会话总数达到10000时,Citrix ADC设备不允许该组的任何订阅者打开额外的UDP会话。

应用层网关

对于某些应用层协议,IP地址和协议端口号也在包的有效载荷中进行通信。协议的应用层网关解析数据包的有效负载,并进行必要的更改,以确保协议继续在LSN上工作。

Citrix ADC设备支持以下协议的ALG:

  • FTP
  • ICMP
  • TFTP
  • PPTP
  • SIP
  • RTSP

发夹的支持

Citrix ADC设备支持使用NAT IP地址在订阅者或内部主机之间进行通信。这种使用NAT IP地址的两个用户之间的通信称为发夹流。默认情况下,发夹流是启用的,不能禁用它。

大规模的NAT