在多台主机上运行同一服务的 NAT 端口转发吗?

在多台主机上运行同一服务的 NAT 端口转发吗?

是否可以在 NAT 后面的不同主机上运行同一服务的端口转发?例如,如果有两个主机 192.2.0.2 和 192.2.0.3 使用网关 (NAT) 192.2.0.1 访问 Internet,并且都在端口 80 上运行 Web 服务器,那么外部客户端向 NAT(到其公共地址)发送 HTTP 请求后会指向哪个主机?

是否可以从 LAN 内部发出相同的请求(针对 NAT 的公共地址)?

答案1

端口转发旨在与固定规则一起使用。虽然您可以编写脚本来不时切换目标主机以“分配”流量,但这不是一个好主意,因为 NAT 不知道 HTTP 会话。结果将导致大量连接丢失,并且一台主机将在任何给定时间受到 100% 流量的攻击。

您可能需要使用会话感知 HTTP 代理/负载均衡器,如 HAProxy 或 nginx。

相关内容