Skip to content

Enable IPv6 by default, support IPv6 for frontend #13416

Open

Description

Is your feature request related to a problem? Please describe.
I got bitten by Loki disabling IPv6 everywhere by default.

I wanted to do a all-in-one deployment on 3 individual machines, which share a IPv6-only network interface.

I configured it to pick IP addresses from that interface (via common/ring/instance_interface_names), and got greeted by the

loki[268306]: no useable address found for interfaces [mycelium]

error message.

After some searching, I discovered Loki requires you to enable IPv6 explicitly for each and every component,and is disabled by default.

#10650 provides a snippet that enables IPv6 in every individual component. It's quite a bit of work, in 2024 I wouldn't expect something to come with IPv6 disabled by default, especially with the rise of IPv6-only deployments (be it Kubernetes or outside).

Describe the solution you'd like

  • Flip the default of all the _enable_ipv6 / _enable_inet6 options, and require people to explicitly set things to false if they want IPv6 disabled.
  • Ensure the address discovery logic prefers IPv4 addresses over IPv6 link-local addresses (didn't check)
  • For people not assigning IPv6 addresses to their interfaces, it shouldn't cause a change in behaviour.

Describe alternatives you've considered
More prominently documenting at least 27 additional lines of config are required to make loki ring discovery work in an IPv6-only environment.

Additional context
#10650

cc @matthewpi @periklis @leahoswald @rfratto

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    type/featureSomething new we should do

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions