Here is a quick tutorial on simulating TCP and UDP clients on any Linux OS of your choice.

#1 - Using Pseudo Devices

Suppose a TCP/UDP server is running in a local/remote machine and you want to check whether it actually receives the messages originated from your terminal machine, but you don’t have a client to do this. Then, you can use this method straight away to send an instant TCP/UDP packet to the desired destination over a desired port.

// Base Command

// TCP
$ echo "This is my TCP message" > /dev/tcp/

// UDP
$ echo "This is my UDP message" > /dev/udp/

#2 - Using NetCat (NCat)

If you need your TCP/UDP client to keep the TCP/UDP connection open (just like a chat client), use the below NetCat command. It will give you an open connection, so that you can input messages line by line. Each time you click Enter/Return button, to go to the next line, NetCat will send the currently -typed message to the given server.

// TCP
nc localhost 31000
> Hello world from TCP client!  

// UDP
$ nc -u localhost 30000
> Hello world from UDP client!  

If you need to install NetCat or find out more options, read here

✅ Tested OS's : RHEL 7+, CentOS 7+, Ubuntu 18.04+, Debian 8+
✅ Tested Gear : Cloud (AWS EC2), On-Prem (Bare Metal)

👉 Any questions? Please comment below.

Leave a comment