Relay for bidirectional data transfer
Socat is a relay for bidirectional data transfer between two independent data channels. Data channels may be files, pipes, devices (terminal or modem, etc.), or sockets (Unix, IP4, IP6 - raw, UDP, TCP), etc. It provides forking, logging, and tracing, different modes for interprocess communication, and many more options. It can be used, for example, as a TCP relay (one-shot or daemon), as an external socksifier, as a shell interface to Unix sockets, as an IP6 relay, as a netcat and rinetd replacement, for redirecting TCP-oriented programs like brutus to a serial line, or to establish a relatively secure environment (su and chroot) for running client or server shell scripts with network connections.
released on 29 January 2016
6 March 2002
Leaders and contributors
Resources and communication
This entry (in part or in whole) was last reviewed on 27 February 2018.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.