The outreach probe executes a streaming ranged GET request through a custom SSRF guard with a strict 10-second timeout, terminating the connection immediately after reading status headers to avoid hanging on large downloads or looping redirects.
sequenceDiagram
autonumber
actor Client as Probe Engine
participant Guard as SSRF Guard
participant DNS as DNS Resolver
participant Target as Target Server
Client->>Guard: Check URL with Range: bytes=0-0
Guard->>DNS: Resolve hostname
DNS-->>Guard: Return IP address
alt Private / Loopback IP
Guard-->>Client: Block request (SSRF detected)
else Public IP
Guard->>Target: GET (Range: bytes=0-0, 10s timeout)
Target-->>Guard: Return Headers (200 / 206 / 404)
Guard-->>Target: Close connection (Abort body)
Guard-->>Client: Return HTTP status code
Client->>Client: Map status to liveness bucket
endReferenced by