English | 简体中文
traudit is a reverse proxy supporting TCP/UDP/Unix Sockets, focused on connection auditing with support for multiple databases.
- Multi-Protocol Support: TCP, UDP, Unix Domain Sockets.
- Proxy Protocol: Support Proxy Protocol to record real IP.
- Audit Logging: Store connection information in databases (ClickHouse, MySQL, PostgreSQL, SQLite).
- Zero-Copy Forwarding: Uses
spliceon Linux for zero-copy forwarding.
What? You don't need a database? Then go use HAProxy.
See config_example.yaml.
- Core Implementation
- Configuration parsing (
serde_yaml) - TCP Proxy & Zero-copy forwarding (
splice) - Proxy Protocol V1/V2 parsing
- UDP Forwarding (Planned)
- Unix Socket Forwarding
- Configuration parsing (
- Database Integration
- ClickHouse Adapter (Native Interface)
- Traffic Accounting (Bytes/Bandwidth)
- IPv6 Support
- SQLite/MySQL Adapters (Future)
- Documentation & Testing
- Basic End-to-end tests
- Comprehensive Unit Tests
- Deployment Guide