Ncat is meant to be a modern implementation of Netcat using Nmap’s mature networking libraries, combining the best features of the various Netcat derivatives into one new tool. While Ncat is an extremely versatile tool with many amazing new features, it is not quite 100% reverse-compatible with the original Netcat.

Some of the new features in Ncat compared to the original Netcat are:

-> IPv6 Support
-> Support for SSL
-> Proxy support
-> Ability to chain Ncat’s together
-> Ability to specify specific hosts to allow or deny access to in listen mode

Implementing chat using Netcat:

Suppose you have two hosts. Host A and Host B. Both of them should have Netcat being installed, before we could do anything about it.

Installing netcat on Debian flavours:

$ sudo aptitude install netcat

Installing Netcat on Fedora:

$ sudo yum install netcat

or you could install using their RPM packages.

After installation, and before we could start our chat session. One of the Host’s should be made the server. It is called the server, since it has to listen on one of its local ports for connections from other netcat hosts.

Suppose we use Host A as the server. Issue the following command at Host A’s terminal

$ nc -l -p  <local_port_number>

-l signifies listen
-p for the port number

NB: Use a port number above 1032

Suppose Host A’s IP is 10.10.10.35 and Host B want to communicate with Host A via Netcat. Issue the following command at Host B’s terminal.

$ nc 10.10.10.10  <local_port_number>

That’s all required. Now both parties can chat.