入站网络地址转换
当客户端向配置了入站网络地址转换(INAT)的Citrix ADC设备发送数据包时,该设备将数据包的公共目标IP地址转换为私有目标IP地址,并将数据包转发到该地址的服务器。
支持以下配置:
- IPv4-IPv4映射: Citrix ADC设备上的公共IPv4地址代表私有IPv4服务器侦听连接请求。Citrix ADC设备将数据包的公共目的IP地址转换为服务器的目的IP地址。然后设备将数据包转发到该地址的服务器。
- IPv4-IPv6映射: Citrix ADC设备上的公共IPv4地址代表私有IPv6服务器侦听连接请求。Citrix ADC设备以IPv6服务器的IP地址作为目标IP地址创建一个IPv6请求数据包。
- IPv6-IPv4映射: Citrix ADC设备上的公共IPv6地址代表私有IPv4服务器侦听连接请求。Citrix ADC设备以IPv4服务器的IP地址作为目标IP地址创建一个IPv4请求数据包。
- IPv6-IPv6映射: Citrix ADC设备上的公共IPv6地址代表私有IPv6服务器侦听连接请求。Citrix ADC设备将数据包的公共目的IP地址转换为服务器的目的IP地址。然后设备将数据包转发到该地址的服务器。
当设备将数据包转发到服务器时,分配给数据包的源IP地址确定如下:
- 如果启用了使用子网IP (USNIP)模式并且禁用了使用源IP (USIP)模式,则设备使用子网IP地址(SNIP)作为源IP地址。
- 如果启用USIP模式,禁用USNIP模式,则设备使用客户端IP (CIP)地址作为源IP地址。
- 如果同时启用USIP和USNIP模式,则USIP模式优先。
- 通过配置proxyIP参数,也可以配置Citrix ADC使用唯一的IP地址作为源IP地址。
- 如果没有启用上述模式,并且没有指定唯一的IP地址,则Citrix ADC将尝试使用MIP作为源IP地址。
- 如果同时使能USIP模式和USNIP模式,且配置了唯一的IP地址,则优先级顺序为:USIP-unique IP-USNIP- mip - error。
为了保护Citrix ADC免受DoS攻击,可以启用TCP代理。但是,如果您的网络中使用了其他保护机制,则可以禁用它们。
配置INAT规则
您可以创建、修改或删除INAT条目。
CLI程序
使用CLI创建一个INAT条目。
在命令提示符下,输入以下命令创建INAT条目并验证其配置:
- 添加inat
[-tcpproxy(启用|禁用)) ((ftp(启用|禁用)) ((切实(在|从)) ((usnip(在|从)) ((proxyIP<Ip_addr > ipv6_addr>] - 显示inat(<名称>)
例子:
add inat ip4-ip4 172.16.1.2 192.168.1.1 -proxyip 10.102.29.171完成
使用CLI修改INAT表项。
要修改INAT条目,请键入设置inat
命令、条目的名称和要更改的参数及其新值。
使用CLI命令删除INAT配置。
在命令提示符下,输入:
- rm inat<名称>
例子:
> rm inat ip4-ip4完成
GUI程序
使用GUI配置INAT条目:
导航到系统>网络>路线>INAT,并添加INAT项或编辑现有的INAT项。
使用GUI删除INAT配置:
导航到系统>网络>路线>INAT,删除INAT配置。
INAT规则的连接故障转移
连接故障转移或连接镜像使主节点能够将连接和持久性信息复制到高可用性的辅助节点。启用连接镜像后,连接状态信息会定期与从节点共享。
启用连接故障转移提供了更高的可靠性,但代价是要花费一些系统时间来共享状态信息。每次包或流状态更新时,连接数据都会同步到备用单元。因此,它只能在连接级可靠性至关重要的地方使用。
Citrix ADC设备高可用性设置支持INAT连接的连接故障转移。主节点定期向从节点发送INAT映射和其他与INAT相关的连接信息。辅助设备仅在发生故障转移时使用映射和连接信息。
发生故障转移时,新的主节点具有有关在故障转移之前建立的INAT连接的信息。因此,即使在故障转移之后,它也会继续为这些连接提供服务。
从客户端的角度来看,故障转移是透明的。在过渡期间,客户机和服务器可能会经历短暂的中断和重传。每个INAT规则都可以启用连接故障转移。
要在INAT规则上启用连接故障转移,可以启用connFailover
指定RNAT规则的参数。
CLI程序
使用CLI为INAT规则启用连接故障转移。
要在添加INAT规则时启用连接故障转移,请在命令提示符下输入:
添加inat
[-tcpproxy(启用|禁用)) ((ftp(启用|禁用)) ((切实(在|从)) ((usnip(在|从)) ((proxyIP< ip_addr | ipv6_addr >)connfailover(启用|禁用) 显示inat<名称>
要在修改现有INAT规则时启用连接故障转移,请在命令提示符下输入:
-
设置inat -connfailover(启用 禁用) - 显示inat<名称>