F5 术语

安全网络地址转换 (SNAT)

什么是 SNAT(安全网络地址转换)?

SNAT(安全网络地址转换)是 F5 提供的负载均衡器 F5 BIG-IP 本地流量管理(LTM)中实现的一项功能。 SNAT 修改传入数据包的源 IP 地址,将其转换为不同的 IP 地址。 BIG-IP LTM 还包括 NAT 功能,允许私有 IP 地址和全局 IP 地址之间的一对一映射。 虽然 SNAT 与 NAT 非常相似,但它通过将多个原始地址映射到单个转换地址来增强功能。

SNAT 提供三种地址转换方法:

  1. 将一个或多个原始地址直接映射到特定的转换地址。
  2. 自动从 BIG-IP 自己的 IP 地址中选择一个进行地址转换(SNAT Automap)。
  3. 使用 iRules(智能 SNAT)中专门定义的规则。

SNAT 的一个常见用例是将来自内部网络服务器的传出请求的源私有 IP 地址修改为全局 IP 地址。 然而,其主要功能在于处理来自外部客户端的传入请求的地址转换。

通常,BIG-IP LTM 从外部客户端接收数据包,应用预配置的规则将目标全局 IP 地址转换为内部私有 IP 地址,然后将数据包转发到服务器。 服务器响应通常通过 BIG-IP LTM 路由回来,其中服务器的源私有 IP 地址在发送到客户端之前被转换回全局 IP 地址。

然而,某些网络配置会破坏此路由。 例如:

  • 在单臂配置中,客户端、BIG-IP 和服务器位于同一网络中,服务器响应绕过 BIG-IP 并直接发送到客户端。 结果,客户端拒绝响应,因为服务器的源 IP 地址与客户端最初请求的 IP 地址不匹配。
  • 即使在更复杂的配置中,BIG-IP 将客户端和服务器段分开,如果中间路由器充当默认网关而不是 BIG-IP,则可能出现问题,从而导致类似的路由问题。

SNAT 通过确保服务器响应始终通过 BIG-IP 来解决这些问题。 它通过将传入数据包的源地址转换为 BIG-IP 自己的 IP 地址,然后再将其转发到服务器来实现这一点,从而保证响应通过 BIG-IP 返回。