netflows
Skill847 starsChanged 5 months agoMITView on GitHub
Network flow extractor that analyzes pcap/pcapng files to identify outbound connections with automatic DNS hostname resolution. Use when you need to enumerate network destinations, identify what hosts a device communicates with, or map IP addresses to hostnames from packet captures.
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 23
When the user asks to analyze network flows, extract destinations, or identify what hosts a device talks to:
- Distinctive: line 27
Ask if they want to filter by a specific source IP (e.g., the IoT device's IP)
- Very specific: line 31
Use the netflows command from the iothackbot bin directory
- Distinctive: line 128
Does not require elevated privileges (unlike live capture tools)
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
NetFlows - Network Flow Extractor with DNS Resolution
You are helping the user extract and analyze network flows from packet capture files using the netflows tool.
Tool Overview
NetFlows analyzes pcap/pcapng files to:
- Extract unique TCP and UDP flows (destination IP:port pairs)
- Build a DNS resolution table from DNS responses in the capture
- Automatically resolve IP addresses to hostnames where possible
- Filter flows by source IP address
- Generate a summary of all network destinations contacted
This is particularly useful for IoT device analysis to understand what external services a device communicates with.
Instructions
When the user asks to analyze network flows, extract destinations, or identify what hosts a device talks to:
- Gather requirements:
- Get the pcap/pcapng file path(s)
- Ask if they want to filter by a specific source IP (e.g., the IoT device's IP)
- Determine preferred output format
- Execute the analysis:
- Use the netflows command from the iothackbot bin directory
- Interpret results:
- Explain resolved hostnames and their significance
- Note any unresolved IPs that may need further investigation
- Highlight interesting patterns (cloud services, P2P connections, etc.)
Usage
Basic Analysis
Analyze a pcap file showing all flows:
netflows capture.pcapFilter by Source IP
Extract flows from a specific device:
netflows capture.pcap --source-ip 192.168.1.100Multiple Files
Analyze multiple capture files:
netflows capture1.pcap capture2.pcapngOutput Formats
# Human-readable colored output (default)
netflows capture.pcap --format text
# Machine-readable JSON
netflows capture.pcap --format json
# Minimal output - just hostname:port list
netflows capture.pcap --format quietParameters
Input:
pcap_files: One or more pcap/pcapng files to analyze (required)
Filtering:
-s, --source-ip: Filter flows originating from this IP address
Output:
--format text|json|quiet: Output format (default: text)-v, --verbose: Enable verbose output
Examples
Analyze IoT device traffic:
netflows iot-capture.pcap --source-ip 192.168.1.50Get just the flow list for scripting:
netflows capture.pcap -s 10.0.0.100 --format quietJSON output for parsing:
netflows capture.pcap --format json | jq '.data[].flow_summary'Output Information
Text format includes:
- DNS mappings discovered (IP -> hostname)
- TCP flows with hostname resolution status
- UDP flows with hostname resolution status
- Consolidated flow summary (hostname:port or ip:port)
JSON format includes:
dns_mappings: Dictionary of IP to hostname mappingstcp_flows: List of TCP flow objects with hostname, ip, portudp_flows: List of UDP flow objects with hostname, ip, portflow_summary: List of "hostname:port" or "ip:port" stringsdns_queries: List of DNS domains queriedtotal_packets: Number of packets analyzed
Use Cases
- IoT Device Profiling: Identify all cloud services and endpoints an IoT device communicates with
- Network Forensics: Enumerate destinations contacted during an incident
- Privacy Analysis: Discover telemetry and tracking endpoints
- Firewall Rule Creation: Generate allowlist/blocklist of endpoints
- Malware Analysis: Identify C2 servers and exfiltration destinations
Important Notes
- The tool resolves hostnames using DNS responses found within the same pcap file
- IPs without corresponding DNS lookups in the capture will show as "unresolved"
- Supports both pcap and pcapng formats
- Does not require elevated privileges (unlike live capture tools)
- Large pcap files may take time to process
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

