dest-unreach / socat

socat - Multipurpose relay

Abstract

what: "netcat++" (extended design, new implementation)
OS:   AIX, BSD, HP-UX, Linux, Solaris e.a. (UNIX)
lic:  GPL2
inst: tar x..., ./configure, make, make install
doc:  README; socat.1, socat.html; xio.help
ui:   command line
exa:  socat TCP6-LISTEN:8080,reuseaddr,fork PROXY:proxy:www.domain.com:80
keyw: tcp, udp, ipv6, raw ip, unix-socket, pty, pipe, listen, socks4, socks4a,
      proxy-connect, ssl-client, filedescriptor, readline, stdio,
      exec, system, file, open, tail -f, termios, setsockopt, chroot,
      fork, perm, owner, trace, dump, dgram, ext3, resolver, datagram,
      multicast, broadcast

What's new?

2008/04/20: A couple of patches that were contributed within the last year are now made available. They are:
SCTP feature (for socat 2.0.0-b1)
Mac OS X port (for socat 1.6.0.1)
Proxy certificates feature (for socat 1.6.0.0)
GNU Hurd port (for socat 1.6.0.0)

2008/02/09: socat version 1.6.0.1 fixes lots of bugs (zombie processes, service name resolution, higher FD numbers, etc - see CHANGES). Use of a public GIT repository has been prepared (wait for separate announcement).

2007/06/20: An extension for RFC 2217 support written by Kenneth Kassing is provided in the contrib section.

2007/06/01: Version 2 of socat is currently under development. The first beta version is available now in the download area. The main enhancement are address chains (see later parts of the Linuxwochen presentation)

2007/06/01: The author talked about socat and presented the upcoming version 2 at Linuxwochen in Vienna. You can download the presentation

2007/03/06: socat version 1.6.0.0 provides reasonable multicast and broadcast support, creates TUN/TAP devices on Linux, and introduces abstract UNIX domain sockets on Linux. Furthermore, security with OpenSSL is improved. A couple of bugs and problems have been corrected (CHANGES).

Get it!

You can download socat 1.6.0.1 in source form (.gz, .bz2). A patch is available for update from version 1.6.0.0.
Feel free to check the signed md5 hashes!

Many actual Linux and BSD distributions already provide socat; for other distributions and for some commercial UNIX platforms, precompiled socat packages are available too, so search the internet if you dont´t want to bother with compiling it yourself.

There is a page with socat patches and contributions.

Documentation

A new type of documentation is being introduced. The man page is probably no good entry point for first time socat users. Therefore, kind of mini tutorials are provided that each focus on a particular usage of socat; they present a working example with hints for troubleshooting and provide links to more detailled reference documentation.

Mini tutorials:

Classical documentation:

Contact

If you have more questions, please contact socat@dest-unreach.org