TCP Option Address is a kernel module that extracts source IPv4 addresses from TCP option headers.
The module solves the problem of recovering the original client IP address when traffic passes through a load balancer or proxy that preserves this information in TCP options rather than in the standard source address field. By operating at the kernel level, the module intercepts TCP packets and reads the option section of the TCP header to retrieve the actual source IP, making it available to applications running on the system.
This tool is suited for environments where load balancers or proxies insert client IP information into TCP options, particularly in high-performance networking scenarios where preserving the original client address is critical. It requires a Linux kernel with available headers and development tools, and the compilation process follows standard kernel module build procedures. The module is most relevant for operators managing infrastructure where standard IP forwarding mechanisms do not preserve client identity.
The project maintains a straightforward codebase with minimal external dependencies beyond standard kernel development tools. Development activity centers on the core kernel module implementation without evidence of frequent updates or active feature expansion.