10 Free Networking Tools for Linux
If you're working on a Linux-based machine, you're fortunate to have access to hundreds of networking tools that meet your every need. At the same time, this can pose a challenge as well β whether you're a seasoned network expert or a curious beginner, having the right tools at hand can often make a big impact on your effectiveness with various network-related tasks.
In this list, we'll go over ten free networking tools for Linux, ranging from classics like Tshark to lesser-known highlights like Globalping. By the end, we hope you'll discover some new tools that you're eager to put into your networking toolbox.
Tshark: CLI network analyzer
What is it?
Tshark is a network protocol analyzing tool and is basically the CLI version of Wireshark (which you may already know since it's quite a popular tool). With Tshark, you can capture, filter, and analyze network traffic in real time or from capture files. While you work in a graphical interface with Wireshark, the CLI tool provides a more flexible and scriptable option for your network analysis tasks.
What can you do with it?
Use Tshark to analyze packets, extract useful information, and create reports that are helpful to troubleshoot network issues, identify security threats, improve network performance, etc.
Globalping: global network insights
What is it?
Globalping is a free, open-source network measurement platform that lets you run ping, mtr, dig, and other commands from anywhere in the world. The platform relies on a vast network of probes hosted mainly by community members in their homes and offices. You can leverage different integrations, such as a CLI tool, a Slack app, or a web tool. There's also an API you can use, for example, to build your own networking tools.
What can you do with it?
Globalping is of great help whenever you want to troubleshoot, benchmark, or investigate a network from a global viewpoint. Imagine users on the other side of the world having issues with your app. With Globalping, you can run tests from probes near these users to troubleshoot the problem without being in the same location.
In this example, we ping two probes in North America that are part of eyeball networks (non-datacenter networks) and have a specific ASN:
Cacti β web-based network monitoring
What is it?
Cacti is an open-source network monitoring and fault management framework that lets you view and analyze network performance data straight from your browser. It mainly uses the simple network management protocol (SNMP) and collects data using RRDtool, which it then displays in graphs.
What can you do with it?
With Cacti, you can monitor metrics like bandwidth usage, CPU load, and system uptime. This helps you troubleshoot various issues or analyze trends. Additionally, you can add plugins to extend the tool's features, making it fit for your use case, whether you're working in small or large networks.
A glimpse into the Cacti UI:
Masscan β mass IP port scanner
What is it?
masscan is a high-performance network port scanning tool that works similarly to the well-known Nmap command. It is designed to quickly identify open ports and services on large networks. According to the developers on the tool's GitHub README, "It can scan the entire Internet in under 5 minutes, transmitting 10 million packets per second, from a single machine."
What can you do with it?
Due to its speed and range, masscan is a great tool for many cybersecurity-related tasks like security audits, network asset mapping, and vulnerability assessments.
Flent β network performance tester
What is it?
Flent is a flexible, free network testing tool for Linux that makes it easier for you to run and analyze network performance benchmarks. Under the hood, it uses known tools like netperf and iperf to run tests (latency, throughput, packet loss, etc.) and compile the results into various formats like JSON or CSV.
What can you do with it?
Flent can provide you with detailed insights into your network's behavior under different conditions, which makes it especially useful for identifying and diagnosing network congestion.
GNS3 β network simulator
What is it?
GNS3 (Graphical Network Simulator-3) is a network simulation tool that allows you to create, test, and configure network topologies. It provides you with a graphical interface to simulate networks in a virtual environment using routers, switches, servers, etc.
What can you do with it?
The tool is great for network engineers as well as students who want to research, experiment, and troubleshoot network configurations without causing real-world consequences.
doggo β DNS client
What is it?
Doggo is a command-line DNS client that provides you with a user-friendly and efficient way to query DNS records. It supports various DNS protocols and delivers results in a readable, color-coded format. You can also enable JSON output to use the results for scripting and parsing or use the web interface if you prefer working in a GUI.
What can you do with it?
Use Doggo to check DNS resolution, troubleshoot DNS issues, or explore DNS records. Moreover, since it integrates Globalping (which we talked about above), you can include location data in your commands, allowing you to query DNS records from anywhere in the world.
Here are some simple example commands:
# Query MX records using a specific nameserver
doggo MX github.com @9.9.9.9
# Using Globalping to query from Germany and Japan
doggo example.com --gp-from Germany,Japan --gp-limit 2
Scapy β packet sender
What is it?
Scapy is an interactive packet manipulation tool based on Python that lets you craft, send, analyze, and manipulate network packets. It can also handle more classical tasks like scanning, tracerouting, probing, and network discovery.
What can you do with it?
With Scapy, you can create custom packets (precisely like you need them) to simulate attacks or analyze network traffic. The big advantage of the tool's flexible model is that you don't have to switch to another tool or write your own if you ever need to create very specific or even "exotic" packets.
Nornir β network automation
What is it?
Nornir is a free automation and orchestration framework that you can use directly from Python. It's designed to manage and configure multiple network devices simultaneously, which can help you speed up these operations. Additionally, you can add a variety of plugins or write your own using Python to make the tool fit your needs.
What can you do with it?
Nornir allows you to run tasks like configuration management, device inventory updates, compliance checks, firmware upgrades, network testing, and more. You can also use it together with other tools to, for example, trigger specific tasks.
mitmproxy β proxy tool
What is it?
mitmproxy is an interactive, open-source proxy tool that allows you to inspect, modify, and replay HTTP, HTTPS, and WebSocket traffic. You can use the CLI tool or web interface if you want a graphical interface. There's also an API if you want to develop your own scripts using the tool.
What can you do with it?
Use mitmproxy to debug your web apps, test their security, and analyze performance. Besides that, it's also a great tool for students and anyone who wants to understand how web applications work.
Hereβs what working with the CLI looks like:
Conclusion: Our favorite free networking tools for Linux
And these are our top 10 free networking tools for Linux! We hope you found some tools that you want to experiment with and add to your trusted networking toolbox.
We also invite you to check out Globalping β create your first network measurements using our web interface to get a taste!