The Netcat6 Homepage - HISTORICAL

Table of Contents

What is netcat6?
Usage
Building
Mailing Lists
Bug Reports
CVS Repository
Anonymous CVS
The ViewCVS web interface
Availability
Authors
Copyright

What is netcat6?

Netcat6 is a clone of the original netcat utility. From the netcat README:

      Netcat is a simple Unix utility which reads and writes data across network
      connections.  It is designed to be a reliable "back-end" tool that can be used
      directly or easily driven by other programs and scripts.  At the same time, it
      is a feature-rich network debugging and exploration tool, since it can create
      almost any kind of connection you would need and has several interesting
      built-in capabilities.  Netcat, or "nc" as the actual program is named, should
      have been supplied long ago as another one of those cryptic but standard Unix
      tools.
    

Netcat6 is a total rewrite of netcat, with several advantages:

  • It fully supports IPv6.

  • It is far more efficient, utilizing flexible buffering and minimal (or no) data copying or analysis.

  • The source is well structured, documented and very easy to follow. One of the main objectives of netcat6 is to produce an excellent example of AF independant networking and efficient data transfer. The code has minimal dependancy on the address family or protocol type and can be trivially extended to talk many layer 3 protocols.

  • Greatly improved configuration and platform indipendence.

  • Can support servers or clients that use TCP half-close.

Some features of the original netcat are not present in netcat6, either because they haven't yet been implemented or because there exists better tools for the job. See the TODO file included in the netcat6 package for more information.

Usage

In the simplest usage, "nc6 host port" creates a TCP connection to the given port on the given target host (using either IPv4 or IPv6 as appropriate). Your standard input is then sent to the host, and anything that comes back across the connection is sent to your standard output. This continues indefinitely, until the network side of the connection shuts down. Note that this behavior is different from most applications which shut everything down and exit after an end-of-file on standard input.

Netcat6 can also function as a server, by listening for inbound connections on arbitrary ports and then doing the same reading and writing when a client connects. With minor limitations, netcat doesn't really care if it runs in "client" or "server" mode -- it still shovels data back and forth until there isn't any more left.

Netcat6 can also be used over UDP (using the '-u' or '--udp' option). UDP is an unreliable transport protocol, meaning some data can get lost, but it's a very useful capability to have.

Some of netcat6's major features are:

  • Outbound or inbound connections, using TCP or UDP over any suitable transport protocol available on the system (usually IPv4 or IPv6).

  • Full DNS forward/reverse checking, with appropriate warnings.

  • Ability to use any local source port.

  • Ability to use any locally-configured network source address.

  • Flexible data buffering and control of MTU.

  • Flexible control of connection shutdown.

Efforts have been made to have netcat6 "do the right thing" in all its various modes. One of the development principles is "the principle of least surprise". This means that netcat6 should do what you expect it to do. If you think it doesn't do something quite right, let us know and we'll look into it.

For more information, see the man page included in the netcat6 package.

Netcat6 is licensed under the GNU Public License (see the section called “Copyright”).

Building

See the INSTALL file included in the netcat6 package for specific installation instructions. For those who can't wait, the following should do it:

                      
# ./configure
# make
# make install

    

If the build fails on your system, please let us know so that we can fix the issue.

Mailing Lists

There is a mailing list for the discussion about netcat6 and the other ipv6-enabled applications developed by the Deep Space 6 team. The mailing list is open for anyone to join, and its address is ds6@deepspace6.net. All the new releases of netcat6 will be announced to this list.

To join the ds6@deepspace6.net mailing list or browse the mailing list archives, please visit the webpage http://lists.deepspace6.net/listinfo/ds6.

There is also another mailing list for the discussion about the development of netcat6. This mailing list is open for anyone to join too, and its address is ds6-devel@deepspace6.net.

To join the ds6-devel@deepspace6.net mailing list or browse the mailing list archives, please visit the webpage http://lists.deepspace6.net/listinfo/ds6-devel.

Bug Reports

Before submitting a bug report, you should first take a look at the BUGS file included in the netcat6 package. It contains a few known major limitations in netcat6.

If you think you have found a bug which is not already known, please send a report to ds6-devel@deepspace6.net.

CVS Repository

If you want to get the very latest version of netcat6 code, then you can retrieve it from our CVS Repository via anonymous CVS or using the handy ViewCVS web interface.

Anonymous CVS

To retrieve netcat6 code via anonymous CVS, you will need a recent version of cvs. First, login to the CVS Repository with the following command:

$ cvs -d :pserver:anonymous@cvs.deepspace6.net:/ds6/cvs login

(just press enter at the password prompt, as any password will work). Now, you can retrieve (checkout) the netcat6 source code:

$ cvs -d :pserver:anonymous@cvs.deepspace6.net:/ds6/cvs co nc6

You can then logout with the following command:

$ cvs -d :pserver:anonymous@cvs.deepspace6.net:/ds6/cvs logout

The ViewCVS web interface

You can also browse the CVS Repository of netcat6 via web with the handy ViewCVS interface. To retrieve the whole netcat6 code, click on the Download tarball link on the left corner at the bottom of the page.

Availability

The latest version of netcat6 is 1.0. This release fixes several bugs and introduces the -X/--rev-transfer option for reverse file transfer mode.

You can download nc6 1.0 via FTP at the URLs:

ftp://ftp.deepspace6.net/pub/ds6/sources/nc6/nc6-1.0.tar.bz2

ftp://ftp.deepspace6.net/pub/ds6/sources/nc6/nc6-1.0.tar.gz

or via HTTP at the URLs:

http://ftp.deepspace6.net/pub/ds6/sources/nc6/nc6-1.0.tar.bz2

http://ftp.deepspace6.net/pub/ds6/sources/nc6/nc6-1.0.tar.gz

Authors

The authors of netcat6 are:

Copyright

Netcat6 is licensed under the GNU General Public License, which you can find in the COPYING file included in the netcat6 package, or at the URL:

http://www.fsf.org/licenses/gpl.html


Updated 10.02.2013Sources | DeepSpace6

Valid XHTML 1.0!IPv6 Ready