我遇到过这种情况:haproxy 中提到的主机被解析为其 ip 并发送请求。但在主机的服务器中,它们已配置为仅使用主机名称接收请求,ug1.firstlink.com:367/yts/display
而不是使用其 ip“” 10.78.15.123:367/yts/display
。
尝试使用解析器,但无法启动 haproxy 并且出现错误,所以想知道是否有人已经使用过它一次。
我的配置:
resolvers mydns
nameserver dns1 ug1.firstlink.com:367
并在听众中
server-template server1 1 ug1.firstlink.com:367 check resolvers mydns init-addr none
请让我知道如何正确配置 haproxy 以禁用 dns 解析,谢谢您的回复。
答案1
一般来说,您希望服务的 DNS 名称(“service.example.com”)解析为 HAProxy 服务器的侦听器地址。然后,您可以将后端服务器称为其他名称(“webserver1.example.com”),即使您仍可能将它们配置为专门侦听对“service.example.com”的请求。即使实际机器的名称不同,它们也会通过请求中的 Host 标头字段的内容知道客户端请求了正确的名称。
如果您想要resolvers
HAProxy 中的定义,它应该只包含您想要查询的一个或多个 DNS 服务器的地址;而不是您想要查找其名称的后端服务器。