Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
AI disclaimer: This merge/pull request was generated by claude-opus-5 (Claude Code).
With
net.ipv6.conf.all.disable_ipv6 = 1, lo has no::1. But because ofnet.ipv6.ip_nonlocal_bind = 1(commit 915614d (sysctl.conf: Allow inet free binds)), binding to::1still succeeds, while connecting to it fails:Servers trying
::1first, and falling back to 127.0.0.1 only if the bind fails, therefore listen on an address no client can reach. Bazel does exactly that (GrpcServerImplbinds[::1]via Netty’s epoll transport), so on MarIuX the Bazel client never connects to its own server:Re-enable IPv6 on lo only. All other interfaces stay without IPv6, as
allanddefaultkeepdisable_ipv6 = 1.Tested in a network namespace (
unshare -rn): applying the changed file withsysctl -pgives lo::1/128, and connecting to a server bound to::1succeeds.Two related notes (not changed here):
ip6.service’sExecStopwritesall.disable_ipv6 = 1, which would remove::1from lo again./etc/hostshas no::1 localhostentry, sogetent hosts localhostreturns::1from unbound’s built-in localhost zone, whilegetent ahosts localhostreturns 127.0.0.1 from/etc/hosts.