mirror of
https://github.com/icewind1991/warp-real-ip.git
synced 2026-06-03 10:44:07 +02:00
No description
- Rust 100%
|
|
||
|---|---|---|
| .github/workflows | ||
| src | ||
| tests | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
wrap-real-ip
Warp filter to get the "real ip" of the remote client
This uses the "x-forwarded-for", "x-real-ip" or "forwarded" headers set by reverse proxies. To stop clients from abusing these headers, only headers set by trusted remotes will be accepted.
Example
use warp::Filter;
use warp_real_ip::real_ip;
use std::net::IpAddr;
let proxy_addr = [127, 10, 0, 1].into();
warp::any()
.and(real_ip(vec![proxy_addr]))
.map(|addr: Option<IpAddr>| format!("Hello {}", addr.unwrap()));