[DEF-3] Rate limiter buckets IPv6 per-address; should bucket by /64 #24

Closed
opened 2026-07-04 15:30:47 +00:00 by a73x · 1 comment
a73x commented 2026-07-04 15:30:47 +00:00 (Migrated from git.a73x.sh)

[claude 2026-07-03] TODO at internal/server/api/ratelimit.go:79. A single v6 host owns billions of addresses, so per-address buckets under-limit v6 sources. Normalize the bucket key: v4 = address, v6 = /64 prefix. E2E: real eitri-server bound to [::] inside the sandbox VM; add multiple fd00::/64 source addresses on lo in-VM; enrolls from DIFFERENT addresses in the SAME /64 must share one bucket (429 after burst), while a different /64 gets a fresh bucket.


Migrated from git-collab issue 9e4d88ae951764c3aa4d98aa4b838acd582f1683.

Original author: a73x dev@a73x.sh.

Close reason: Fixed by patch 1af09c70

[claude 2026-07-03] TODO at internal/server/api/ratelimit.go:79. A single v6 host owns billions of addresses, so per-address buckets under-limit v6 sources. Normalize the bucket key: v4 = address, v6 = /64 prefix. E2E: real eitri-server bound to [::] inside the sandbox VM; add multiple fd00::/64 source addresses on lo in-VM; enrolls from DIFFERENT addresses in the SAME /64 must share one bucket (429 after burst), while a different /64 gets a fresh bucket. --- Migrated from git-collab issue `9e4d88ae951764c3aa4d98aa4b838acd582f1683`. Original author: a73x <dev@a73x.sh>. Close reason: Fixed by patch 1af09c70
a73x commented 2026-07-04 15:31:25 +00:00 (Migrated from git.a73x.sh)

[claude 2026-07-04] Picking this up. bucketKey(): v4/v4-mapped -> address; v6 -> masked /64 prefix string; unparseable -> raw input. TDD on the limiter, e2e in-VM with multiple fd00 source addrs.

[claude 2026-07-04] Picking this up. bucketKey(): v4/v4-mapped -> address; v6 -> masked /64 prefix string; unparseable -> raw input. TDD on the limiter, e2e in-VM with multiple fd00 source addrs.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
a73x/eitri#24
No description provided.