Skip to content

stick-tables and IPv6 improvements needed #2962

@bjacke

Description

@bjacke

Detailed Description of the Problem

as requested on the mailing list I file this as an issue to keep track of it:

After noticing this some years ago, I ran into this again: The haproxy configuration examples and tutorials like the one at https://www.haproxy.com/documentation/haproxy-configuration-tutorials/proxying-essentials/custom-rules/stick-tables/ propose the use of "stick-table type ip ...". While the name "ip" suggests that this can be actually any IP address this is limiting the stick-table to IPv4 only. To use stick-tables that work for both IPv4 and IPv6, you have to use "stick-table type ipv6 ...". This is counter-intuitive from the naming and it's bad for all the documentation that proposes such configurations that don't work for IPv6.

Expected Behavior

I'd propose to introduce a "ipv4" for stick-tables and make "ip" an alias for "ipv6" as the latter one works for both IPv4 and IPv6. Second best option would at least be to fix the documentation and make the examples IPv6 proof.

Steps to Reproduce the Behavior

Willy's reply:
I was absolutely certain that it was already the case, I thought we had
changed this years ago. But checking the code it's indeed not the case,
that's a bit of a shock to me! I think we had discussed it and nothing
changed, for whatever reasons possibly ranging from "not the right moment"
to "will use more RAM".

However, this is a breaking change, we cannot afford to do that right now
in LTS but we could plan it for 3.3. We could also accept ipv4 right now
so as to ease the transition to new versions.

Do you have any idea what may have caused this?

No response

Do you have an idea how to solve the issue?

No response

What is your configuration?

...

Output of haproxy -vv

...

Last Outputs and Backtraces


Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: future fixThis issue cannot be fixed without a major rework and thus is postponed.type: bugThis issue describes a bug.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions