IP_TRANSPARENT(2const) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | ERRORS | STANDARDS | HISTORY | SEE ALSO | COLOPHON

IP_TRANSPARENT(2const)                             IP_TRANSPARENT(2const)

NAME         top

       IP_TRANSPARENT - transparent proxying

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <netinet/in.h>  /* Definition of IP* constants */
       #include <sys/socket.h>

       int setsockopt(int sockfd, IPPROTO_IP, IP_TRANSPARENT,
                      const int *enable, sizeof(int));

DESCRIPTION         top

       Setting this boolean option enables transparent proxying on this
       socket.

       This socket option allows the calling application to bind to a
       nonlocal IP address and operate both as a client and a server with
       the foreign address as the local endpoint.

       This requires that routing be set up in a way that packets going
       to the foreign address are routed through the TProxy box (i.e.,
       the system hosting the application that employs the IP_TRANSPARENT
       socket option).

       Enabling this socket option requires superuser privileges (the
       CAP_NET_ADMIN or CAP_NET_RAW capability).

       TProxy redirection with the iptables TPROXY target also requires
       that this option be set on the redirected socket.

ERRORS         top

       See IPPROTO_IP(2const).  See setsockopt(2).  See ip(7).

STANDARDS         top

       Linux.

HISTORY         top

       Linux 2.6.24.

SEE ALSO         top

       IPPROTO_IP(2const), setsockopt(2), ip(7)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.18.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2026-05-24.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.18            2025-11-25         IP_TRANSPARENT(2const)

Pages that refer to this page: IPPROTO_IP(2const)