cloudflare / cloudflare/pingora
HAProxy PROXY protocol v1/v2 support
- Dominant language
- Rust
- Stars
- 27.4k
- Forks
- 1.7k
- Avg merge
- 6h 22m
- Merged PRs (30d)
- 3
Description
## What is the problem your feature solves, or the need it fulfills?
its a quite common usecase to have pingora behind a loadbalancer when running inside of cloud infrastructure. They usually implement the PROXY protocol to give information about the TCP session like the connection initiator, connection target, client & server and the proxy. It would be immensly helpful to have those informations on pingora's side.
## Describe the solution you'd like
Implement the PROXY protocol as decribed in the [docs](https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt) from HAProxy itself. Otherwise there are some rust based implementations floating around that could speedup the process.
[example 1](https://crates.io/crates/proxy-protocol)
[example 2](https://crates.io/crates/proxy-header)
[example 3](https://crates.io/crates/actix-proxy-protocol)
[example 4](https://crates.io/crates/ppp)
## Describe alternatives you've considered
The other solution would be to use [mmproxy](https://github.com/cloudflare/mmproxy) but that makes it quite inflexible and brings other challenges in itself.
Thank you for this awesome project. 👍
Contributor guide
Assessment
This issue has not been assessed yet.