proxy-protocol
PROXY protocol library with asyncio server implementation
Decision gist · record as of 2026-08-14
Yes, if you need PROXY protocol support in an asyncio server and are comfortable with dormant maintenance. The library is stable (Alpha status), has no known vulnerabilities, and low install friction. However, verify that the last update (2024-04-27) and lack of recent activity align with your support expectations—if you need active maintenance or rapid bug fixes, evaluate alternatives or plan to maintain a fork.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python ~=3.8 or later; intended for use with asyncio.start_server-based applications.
- Low install friction—pure Python wheel with only typing-extensions as a runtime dependency.
- Maintenance is dormant (last commit 2024-04-27, 839 days ago), though the repository remains active and the package is classified as Alpha.
License · maintenance · safety
permissive license (permissive) — MIT license (permissive) permits use, modification, and redistribution with minimal restrictions, making it safe for commercial and private projects.
last release 2024-04-27 (839 days) · last repo commit 2024-04-27 · 17 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,893,391 downloads/mo, #3,458 on PyPI
Alternatives
Verify before relying
pip install proxy-protocol
from proxy_protocol import ProxyProtocol
import asyncio
pp_detect = ProxyProtocol()
server = await asyncio.start_server(callback, 'localhost', 10007)- Whether dormant maintenance (last commit 2024-04-27) signals end-of-life or stable maturity for this use case.
- Real-world performance characteristics with high-throughput proxy scenarios.
- Compatibility with modern proxy/load-balancer implementations beyond the HAProxy specification.
What it is and what it does
proxy-protocol is a Python library that implements the PROXY protocol specification, enabling asyncio servers to read and interpret connection headers sent by proxies and load balancers. When traffic passes through a reverse proxy or load balancer, the original client's IP address and port are typically lost; the PROXY protocol solves this by prepending a header to the connection that encodes the original source and destination. This library detects and parses both PROXY protocol v1 (text-based) and v2 (binary) formats, extracting the original connection information so your server can log or act on the true client address.
Integration is designed to be straightforward with asyncio servers. The package depends only on typing-extensions and supports Python 3.8, 3.9, 3.10, 3.11, and 3.12. It includes reference server implementations and supports configuration-driven protocol selection—detect automatically, enforce a specific version, or disable the protocol entirely.
Use it for
- Logging true client IPs in a web service behind a reverse proxy or load balancer.
- Proxying connections between services while preserving original connection metadata.
- Building a load balancer or proxy that needs to forward connection info to backend servers.
- Debugging network topology by inspecting original vs. proxied connection information.
- Integrating with HAProxy or other proxies that emit PROXY protocol headers.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need PROXY protocol support in an asyncio server and are comfortable with dormant maintenance.
The library is stable (Alpha status), has no known vulnerabilities, and low install friction. However, verify that the last update (2024-04-27) and lack of recent activity align with your support expectations—if you need active maintenance or rapid bug fixes, evaluate alternatives or plan to maintain a fork.
Install
proxy-protocol on PyPI
Before you install
Low install friction—pure Python wheel with only typing-extensions as a runtime dependency. Maintenance is dormant (last commit 2024-04-27, 839 days ago), though the repository remains active and the package is classified as Alpha.
Requires Python ~=3.8 or later; intended for use with asyncio.start_server-based applications.
License in practice
MIT license (permissive) permits use, modification, and redistribution with minimal restrictions, making it safe for commercial and private projects.
Quickstart
pip install proxy-protocol
from proxy_protocol import ProxyProtocol
import asyncio
pp_detect = ProxyProtocol()
server = await asyncio.start_server(callback, 'localhost', 10007)
Verify before relying
- Whether dormant maintenance (last commit 2024-04-27) signals end-of-life or stable maturity for this use case.
- Real-world performance characteristics with high-throughput proxy scenarios.
- Compatibility with modern proxy/load-balancer implementations beyond the HAProxy specification.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release ~=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagetyping-extensions |
| Maintenance | Dormant 839 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,893,391 / month, #3,458 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaIntended Audience :: DevelopersIntended Audience :: Information TechnologyLicense :: OSI Approved :: MIT LicenseProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: proxy_protocol-0.11.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “proxy protocol asyncio”
- proxy-protocolParses and handles the PROXY protocol (v1 and v2) for asyncio-based…
- socksioSocksio is a sans-I/O SOCKS protocol implementation that handles the…
- python-socksProvides SOCKS4(a), SOCKS5(h), and HTTP CONNECT proxy client…
Give your agent the search over MCP, or paste the wish link into any chat.
More Internet packages
Botocore provides low-level, data-driven access to Amazon Web Services APIs, serving as the foundation for the AWS CLI and boto3 libraries.
Install it if you need programmatic access to AWS services.
Provides an async client for AWS services using botocore and aiohttp, allowing you to call AWS APIs asynchronously within asyncio-based applications.
Install it if you need to call AWS services from async Python code; it is the standard way to do so.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides a platform-independent file locking mechanism to coordinate access to files across processes and threads.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides common Protocol Buffer message definitions used across Google Cloud APIs, enabling Python clients to interact with Google services.
See also django-ipware · python-ipware · proxy.py · django-xff · mitmproxy · pproxy · PySocks · proxyproviders · SocketSwap · hass-web-proxy-lib