feat: Allow multiple options in request_ip_source #1985

Open
Omar007 wants to merge 2 commits from Omar007/continuwuity:feature/ip-src-fallback into main

2 commits

Author SHA1 Message Date
a12805e0c9 chore: Add towncrier news fragment
All checks were successful
Documentation / Build and Deploy Documentation (pull_request) Has been skipped
Checks / Changelog / Check changelog is added (pull_request_target) Successful in 6s
Checks / Prek / Check changed files (pull_request) Successful in 4s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 58s
Update flake hashes / update-flake-hashes (pull_request) Successful in 1m12s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 11m8s
2026-07-14 20:28:57 +02:00
ec8947f5d3 feat: Allow multiple options in request_ip_source
Only allowing a single option prevents results in requests being denied if
the singular selected source option isn't used for every single request flow.
This means you need to choose between selecting the right IP or properly
separating your infrastructure traffic. You can't have both;
running edge traffic through a reverse proxy with proper IP resolution,
as well as appservices isolated internally is not possible at the same time.

By allowing multiple options to be set, this limitation is resolved and
it becomes possible to have client IP resolution behind reverse proxies,
as well as allow for direct internal connections for appservices.

Options are evaluated in order. If all fail, the request still fails.
2026-07-14 20:28:53 +02:00