ADC

大型 NAT

注意:

从 NetScaler 14.1 版本起,不推荐使用大规模 NAT (LSN) 功能。

已弃用的功能不会立即删除。NetScaler 设备将继续支持已弃用的功能,直到在将来的版本中将其删除。

互联网的惊人增长导致了公有 IPv4 地址的短缺。大规模 NAT (LSN/CGNAT) 为这个问题提供了解决方案,通过在庞大的互联网用户群中共享几个公有 IPv4 地址,最大限度地利用可用的公有 IPv4 地址。

LSN 将私有 IPv4 地址转换为公有 IPv4 地址。它包括网络地址和端口转换方法,可将许多专用 IP 地址聚合为较少的公有 IPv4 地址。LSN 旨在大规模处理 NAT。NetScaler LSN 功能对于互联网服务提供商 (ISP) 和运营商非常有用,这些提供数百万种翻译以支持大量用户(订阅者)且吞吐量非常高。

LSN 架构

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

但是,非商业用户通常支持同样实现 NAT 的客户驻地设备 (CPE),例如路由器和调制解调器。这两级 NAT 创建了 NAT444 模型。在 ISP 的核心网络中部署 NetScaler 设备以实现 LSN 功能对订阅者来说是透明的,无需更改订阅者或 CPE 的配置。

本地化后的图片

NetScaler 设备接收所有发往互联网的订阅者数据包。该设备配置了一个预定义的 NAT IP 地址池,用于 LSN。NetScaler 设备使用其 LSN 功能将数据包的源 IP 地址(私有)和端口转换为 NAT IP 地址(公共)和 NAT 端口,然后将数据包发送到其在互联网上的目的地。设备会保留使用 LSN 功能的所有活动会话的记录。这些会话称为 LSN 会话。NetScaler 设备还维护每个会话的订户 IP 地址和端口以及 NAT IP 地址和端口之间的映射。这些映射称为 LSN 映射。从 LSN 会话和 LSN 映射中,NetScaler 设备识别出属于特定会话的响应数据包(从互联网接收)。设备将响应数据包的目标 IP 地址和端口从 NAT IP 地址:端口转换为订阅者 IP 地址:端口,并将转换后的数据包发送给订阅者。

NetScaler 设备支持的 LSN 功能

以下介绍了 NetScaler 设备支持的部分 LSN 功能:

NAT 资源分配

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

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

    NetScaler 设备记录为订阅者分配的 NAT IP 地址和端口块。对于连接,仅通过其映射的 NAT IP 地址和端口块即可识别订阅者。因此,NetScaler 设备不会记录任何创建或删除的 LSN 会话。如果整个端口块都在使用中,NetScaler 设备将断开来自订阅者的任何新连接。

  • 动态。NetScaler 设备从 LSN NAT 池中随机分配一个 NAT IP 地址和一个端口,用于订阅者的连接。在配置中启用端口块分配后,设备会在首次启动连接时为订阅者分配随机 NAT IP 地址和一块端口。然后,NetScaler 设备将此 NAT IP 地址和分配块中的一个端口分配给该订阅者的每个后续连接。如果正在使用整个端口块,则设备在启动新连接时会向订阅者分配一个新的随机端口块。新端口块中的一个端口是为新连接分配的。

IP 池

以下 NAT 资源分配选项可用于为现有会话分配了随机 NAT IP 地址和端口的订阅者的后续会话。

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

重复使用 LSN 映射

NetScaler 设备可以将现有 LSN 映射用于源自相同订阅者 IP 地址和端口的新连接。NetScaler LSN 功能支持以下类型的 LSN 映射重用:

  1. 与端点无关。NetScaler 设备重复使用 LSN 映射,将后续数据包从相同的订阅者 IP 地址和端口 (x: x) 发送到任何外部 IP 地址和端口。这种类型的 LSN 映射重用对于 VOIP 和点对点应用程序的正常运行很有用。
  2. 取决于地址。无论外部端口如何,NetScaler 设备都会重复使用 LSN 映射,将后续数据包从相同的订阅者 IP 地址和端口 (x: x) 发送到相同的外部 IP 地址 (Y)。
  3. 地址端口相关。NetScaler 设备重复使用 LSN 映射,用于在映射仍处于活动状态时从相同的内部 IP 地址和端口 (x: x) 发送到相同的外部 IP 地址和端口 (y: y) 的后续数据包。

局域网过滤

NetScaler 设备可以根据活动的 LSN 会话和 LSN 映射过滤来自外部主机的数据包。以一个 LSN 映射为例,该映射包括订阅者 IP: 端口 (x: X)、NAT IP: 端口 (n: n) 和外部主机 IP: 端口 (y: y) 的映射。NetScaler LSN 功能支持以下类型的过滤:

  1. 与端点无关。无论外部主机 IP 地址和端口来源 (z: z) 如何,NetScaler 设备仅筛选出那些未发往 NAT IP: Port (n: n) 的数据包,后者代表订阅者 IP: 端口 (x: x)。NetScaler 设备会转发任何发往 x: x 的数据包。换句话说,从订阅者向任何外部 IP 地址发送数据包足以允许数据包从任何外部主机发送到订阅者。这种类型的过滤对于 VOIP 和点对点应用程序的正常运行很有用。
  2. 取决于地址。NetScaler 设备筛选出未发往 NAT IP: Port (n: n) 的数据包,它代表订阅者 IP: 端口 (x: X)。此外,如果订阅者之前没有向 y: anyPort(外部端口无关)发送数据包,则设备会筛选出来自外部主机 IP 地址和端口 (y: y) 的发往 n: n 的数据包。换句话说,接收来自特定外部主机的数据包要求订阅者首先将数据包发送到该特定外部主机的 IP 地址。
  3. 地址端口相关。NetScaler 设备筛选出未发往 NAT IP: Port (n: n) 的数据包,它代表订阅者 IP: 端口 (x: X)。此外,如果订阅者之前没有向 y: y 发送数据包,则设备会过滤掉来自外部主机 IP 地址和端口 (y: y) 的发往 n: n 的数据包。换句话说,接收来自特定外部主机的数据包要求订阅者首先将数据包发送到该特定的外部 IP 地址和端口。

配额

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

  • 端口配额。NetScaler 设备可以限制每个订阅者一次只能使用指定协议的 LSN NAT 端口。例如,您可以将每个订阅者限制为最多 500 个 TCP NAT 端口。当订阅者的 LSN NAT 映射达到限制时,NetScaler 设备不会向该订阅者分配指定协议的其他 NAT 端口。
  • 订阅者会话限制。订阅者的并发会话数量可以超过其端口配额。NetScaler 设备可以限制每个订阅者在指定协议下允许的 LSN 会话。当 LSN 会话数量达到订阅者的限制时,NetScaler 设备不允许订阅者打开指定协议的其他会话。
  • 组会话限制。NetScaler 设备可以限制指定协议的订阅者组允许的 LSN 会话总数。当 LSN 会话总数达到指定协议组的限制时,NetScaler 设备不允许该组的任何订阅者打开指定协议的其他会话。例如,您将一个组限制为最多 10000 个 UDP 会话。当该组的 UDP 会话总数达到 10000 时,NetScaler 设备不允许该组的任何订阅者打开其他 UDP 会话。

应用层网关

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

NetScaler 设备支持以下协议的 ALG:

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

发夹支撑

NetScaler 设备支持使用 NAT IP 地址在订阅者或内部主机之间进行通信。使用 NAT IP 地址在两个订阅者之间进行的这种通信称为发夹流。默认情况下,Hairpin flow 处于启用状态,您无法将其禁用。

大型 NAT