Skip to content

Bind health-check listeners on binding_ip and v4v6#904

Open
s4heid wants to merge 1 commit intocloudfoundry:masterfrom
s4heid:ipv6
Open

Bind health-check listeners on binding_ip and v4v6#904
s4heid wants to merge 1 commit intocloudfoundry:masterfrom
s4heid:ipv6

Conversation

@s4heid
Copy link
Copy Markdown

@s4heid s4heid commented Apr 23, 2026

The four health-check listeners (health_check_http_url, its proxy protocol variant, and the per-tcp-proxy health_check_http_tcp-<name> pair) previously bound on :<port>, which is IPv4-wildcard only. On IPv6-only deployments (binding_ip: "::") the listeners were unreachable, causing monit host checks against localhost (IPv4) to fail and restart HAProxy.

Bind them on ha_proxy.binding_ip and append v4v6 like the other frontends so dual-stack works when ha_proxy.v4v6 is enabled.

Behavior change: when binding_ip is set to a specific IPv4 address, the health-check listeners now bind only on that address instead of all IPv4 interfaces. Operators probing health via a different NIC must update their probe targets accordingly.

The four health-check listeners (`health_check_http_url`, its PROXY protocol
variant, and the per-tcp-proxy `health_check_http_tcp-<name>` pair) previously
bound on `:<port>`, which is IPv4-wildcard only. On IPv6-only deployments
(`binding_ip: "::"`) the listeners were unreachable, causing monit host checks
against `localhost` (IPv4) to fail and restart HAProxy.

Bind them on `ha_proxy.binding_ip` and append `v4v6` like the other frontends
so dual-stack works when `ha_proxy.v4v6` is enabled.

Behavior change: when `binding_ip` is set to a specific IPv4 address, the
health-check listeners now bind only on that address instead of all IPv4
interfaces. Operators probing health via a different NIC must update their
probe targets accordingly.

Co-authored-by: jakobve <36446012+jakobve@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

1 participant