Top Related Projects
Web-based Traffic and Security Network Traffic Monitoring
Zeek is a powerful network analysis framework that is much different from the typical IDS you may know.
Architected for speed. Automated for easy. Monitoring and troubleshooting, transformed!
Network flow analytics (Netflow, sFlow and IPFIX) with the Elastic Stack
High-speed packet processing framework
Quick Overview
nProbe is an open-source network traffic probe and flow exporter. It captures, analyzes, and exports network traffic data in various formats, including NetFlow and IPFIX. nProbe is designed to provide detailed network visibility and monitoring capabilities for network administrators and security professionals.
Pros
- High performance and scalability, capable of handling large volumes of network traffic
- Supports multiple export formats, including NetFlow v5/v9, IPFIX, and sFlow
- Extensive protocol support, allowing for deep packet inspection and application-level visibility
- Flexible configuration options and plugin system for customization
Cons
- Steep learning curve for new users due to its extensive feature set
- Limited documentation for some advanced features
- Requires careful configuration to avoid performance issues in high-traffic environments
- Some features are only available in the commercial version
Getting Started
To get started with nProbe, follow these steps:
-
Download and install nProbe from the official repository:
git clone https://github.com/ntop/nProbe.git cd nProbe ./autogen.sh ./configure make sudo make install
-
Create a basic configuration file (e.g.,
nprobe.conf
):-n=none -i=eth0 -T=%IN_SRC_MAC,%OUT_DST_MAC,%SRC_IP,%DST_IP,%PROTOCOL,%SRC_PORT,%DST_PORT,%BYTES,%PACKETS -O=flows.txt
-
Run nProbe with the configuration file:
sudo nprobe -f nprobe.conf
This basic setup will capture traffic on the eth0
interface and export flow data to flows.txt
. Adjust the configuration as needed for your specific use case.
Competitor Comparisons
Web-based Traffic and Security Network Traffic Monitoring
Pros of ntopng
- More comprehensive network monitoring and analysis capabilities
- User-friendly web interface for easier data visualization
- Supports real-time and historical data analysis
Cons of ntopng
- Higher resource consumption due to advanced features
- Steeper learning curve for full utilization of all features
Code Comparison
ntopng:
void NetworkInterface::dumpStats(bool forceDump) {
if(forceDump || (((lastDumpTime+DUMP_TIMEOUT) < time(NULL)) && (numPkts > 0))) {
dumpStatsToDatabase();
lastDumpTime = time(NULL);
numPkts = 0;
}
}
nProbe:
void dumpStats(void) {
if(num_pkts && (time(NULL)-last_dump > DUMP_TIMEOUT)) {
dumpStatsToFile();
last_dump = time(NULL);
num_pkts = 0;
}
}
The code snippets show similar functionality for dumping statistics, but ntopng's implementation is more object-oriented and includes a forceDump parameter for additional control.
Zeek is a powerful network analysis framework that is much different from the typical IDS you may know.
Pros of Zeek
- More extensive scripting capabilities for custom analysis
- Larger community and ecosystem of plugins/scripts
- Better suited for in-depth security analysis and threat hunting
Cons of Zeek
- Steeper learning curve, especially for complex deployments
- Higher resource requirements for full packet capture and analysis
- Less focus on traditional network monitoring metrics
Code Comparison
Zeek script example:
event http_request(c: connection, method: string, original_URI: string,
unescaped_URI: string, version: string)
{
print fmt("HTTP request: %s %s", method, original_URI);
}
nProbe configuration example:
--collector-port 2055
--collector-ip 192.168.1.1
--flow-template %IPV4_SRC_ADDR %IPV4_DST_ADDR %IN_BYTES %OUT_BYTES
Summary
Zeek is a powerful network security monitor with extensive scripting capabilities, while nProbe focuses more on traditional network flow monitoring. Zeek offers deeper security analysis but requires more resources and expertise. nProbe is easier to set up for basic network monitoring but has less flexibility for custom analysis. Choose based on your specific needs for network visibility vs. security analysis.
Architected for speed. Automated for easy. Monitoring and troubleshooting, transformed!
Pros of netdata
- Comprehensive real-time monitoring with a user-friendly web interface
- Extensive plugin system for monitoring various services and applications
- Free and open-source with a large community and frequent updates
Cons of netdata
- Higher resource usage, especially on systems with many metrics
- Can be complex to configure for advanced use cases
- Limited long-term data storage capabilities out of the box
Code Comparison
netdata configuration example:
[global]
update every = 1
memory mode = ram
history = 3600
nProbe configuration example:
-n none
-i eth0
-T "%IPV4_SRC_ADDR %IPV4_DST_ADDR %IN_BYTES %OUT_BYTES"
While both projects focus on network monitoring, they serve different purposes. netdata is a comprehensive system and application monitoring solution, while nProbe is primarily a network traffic analyzer and NetFlow/IPFIX probe. netdata offers a more user-friendly interface and broader monitoring capabilities, while nProbe provides deeper network traffic analysis and export capabilities.
Network flow analytics (Netflow, sFlow and IPFIX) with the Elastic Stack
Pros of ElastiFlow
- Open-source and free to use, allowing for community contributions and customization
- Provides a comprehensive ELK-based solution for network flow data analysis
- Offers pre-built dashboards and visualizations for quick insights
Cons of ElastiFlow
- Requires more setup and configuration compared to nProbe's out-of-the-box solution
- May have a steeper learning curve for users unfamiliar with the ELK stack
- Limited support options compared to nProbe's commercial backing
Code Comparison
ElastiFlow (Logstash configuration):
input {
udp {
port => 2055
codec => netflow
}
}
filter {
# ElastiFlow-specific filters
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "elastiflow-%{+YYYY.MM.dd}"
}
}
nProbe (command-line usage):
nprobe -i eth0 -n none -T "%IPV4_SRC_ADDR %IPV4_DST_ADDR %IN_BYTES %OUT_BYTES" \
-O "/tmp/nprobe.txt"
Both tools offer network flow data collection and analysis capabilities, but ElastiFlow focuses on integration with the ELK stack for visualization and analysis, while nProbe provides a more standalone solution with additional features for network traffic monitoring and analysis.
High-speed packet processing framework
Pros of PF_RING
- Lower-level packet processing framework, offering better performance for high-speed networks
- More flexible and customizable for advanced networking applications
- Supports zero-copy packet capture, reducing CPU overhead
Cons of PF_RING
- Steeper learning curve and more complex implementation
- Requires kernel module installation, which may not be suitable for all environments
- Less out-of-the-box functionality compared to nProbe
Code Comparison
PF_RING example:
#include <pfring.h>
pfring *ring = pfring_open("eth0", 1500, PF_RING_PROMISC);
pfring_enable_ring(ring);
pfring_recv(ring, &buffer, sizeof(buffer), &hdr, 0);
nProbe example:
#include <nprobe.h>
nprobe_init();
nprobe_set_interface("eth0");
nprobe_start_capture();
nprobe_process_packet(&pkt);
PF_RING focuses on low-level packet capture and processing, while nProbe provides higher-level network traffic analysis and flow export capabilities. PF_RING is more suitable for building custom network tools, while nProbe offers a more complete solution for network monitoring and analysis out of the box.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
nProbe
This repository contains open source components and extensions for nProbe available at http://www.ntop.org/products/netflow/nprobe/
Here you can find:
- Add-on and extensions
- Code examples of applications that can interact with nProbe
Enjoy!
Documentation
If you want to learn more about nProbe please visit the User's Guide.
Details
For more information about nProbe, please visit http://ntop.org.
Top Related Projects
Web-based Traffic and Security Network Traffic Monitoring
Zeek is a powerful network analysis framework that is much different from the typical IDS you may know.
Architected for speed. Automated for easy. Monitoring and troubleshooting, transformed!
Network flow analytics (Netflow, sFlow and IPFIX) with the Elastic Stack
High-speed packet processing framework
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot