Skip to content

Caddy 2.5.13: ship chaddy's tcp-probe v2 lookup - #3838

Merged
forgetso merged 3 commits into
mainfrom
chore/caddy-2.5.13-tcp-probe-v2
Nov 11, 2026
Merged

forgetso merged 3 commits into
mainfrom
chore/caddy-2.5.13-tcp-probe-v2

Conversation

@forgetso

Copy link
Copy Markdown
Member

What changed: the Caddy image version goes from 2.5.12 to 2.5.13. The Dockerfile already pinned chaddy at #21 (since #3668), but no image was ever built from it. The image in use, built on 2 Nov, still has the old chaddy.

Why it matters: the old chaddy looks up TCP signals with a request that only fits an IPv4 address, and skips IPv6 connections entirely. In production, 0% of IPv6 sessions (about 30% of traffic) have any TCP signal, against ~98% of IPv4. chaddy #21 passes the connection's own socket to tcp-probe v2, which sees IPv6, and forwards the answer as X-TCP-Probe. The legacy X-TLS-Tcp-* headers are unchanged, so nothing that reads them changes.

Built and checked: prosopo/caddy:2.5.13 is pushed (not latest). caddy build-info shows chaddy v0.0.0-20261109164248-faf69736830d. Adapting a production node's live Caddyfile with its env gives byte-identical JSON to the current image. On staging, an IPv6 request now arrives at the provider with a full X-TCP-Probe record (MSS, SYN TTL, options, RTT), and IPv4 requests still get every legacy header. For the provider to store the record, it also needs #3837 (its schema rejected the real record).

To roll out: retag latest to 2.5.13 and recreate caddy on each pronode, after tcp-probe is up.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@forgetso
forgetso requested a review from goastler as a code owner November 11, 2026 11:22
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@forgetso
forgetso requested a review from HughParry as a code owner November 11, 2026 13:18
@forgetso
forgetso merged commit 6449c6b into main Nov 11, 2026
13 of 14 checks passed
@forgetso
forgetso deleted the chore/caddy-2.5.13-tcp-probe-v2 branch November 11, 2026 13:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant