是否可以配置 HAProxy 根据请求的源 IP 选择后端服务器?如果可以,该怎么做?

是否可以配置 HAProxy 根据请求的源 IP 选择后端服务器?如果可以,该怎么做?

标题几乎说明了一切。基本上,我想根据请求的源 IP 将请求路由到特定的后端服务器。

IE,

HTTP Request from 192.168.100.1 -> HAProxy -> BackendServer A
HTTP Request from 192.168.100.2 -> HAProxy -> BackendServer B

答案1

我将通过创建单独的后端来实现这一点,然后根据源 IP 从前端对它们进行相应的路由:

例如:

frontend foo
   acl is_A src 192.168.100.1
   acl is_B src 192.168.100.1
   use_backend A if is_A
   use_backend B if is_B
backend A
   server blah
backend B
   server baz

您还可以将 IP 列表放在一个文件中,然后使用类似以下命令获取该文件acl is_A src -f /etc/haproxy/special_ips

相关内容