我是 netflow 的新手,所以也许我的问题在于理解,但我还没有找到关于正在发生的事情的参考资料。
我有一个 Palo Alto PA500 防火墙,我正在尝试使用 nfdump 将 netflow 统计信息提取到 Ubuntu 框中。
我已经安装了 nfdump 并运行 nfcap 没有问题:
sudo apt-get install nfdump
nfcapd -E -T all -p 9001 -l /tmp/nfcaptest
我已经按照文档中的描述配置了帕洛阿尔托:
Device / Server Profiles / Netflow
Add
Name: nfserver
Refresh:
Minutes: 30
Packets: 20
Active Timeout (min): 5
Name: nfserver
IP: x.x.x.x
Port: 9001
我已将 netflow 服务器添加到所有接口并提交更改。
我正在使用 tcpdump 看到服务器中的流量。
12:51:33.848206 IP x.x.x.x.50705 > nfserver.9001: UDP, length 1369
nfcap 不断地给出这个输出:
Ident: 'none' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Total ignored packets: 0
File Block Header:
NumBlocks = 0
Size = 0
id = 2
我看到每 5 分钟有一个 nfcapd.xxx 文件,但是当我尝试阅读它们时,我看不到任何结果。
# nfdump -r nfcapd.current.7757
Date first seen Event XEvent Proto Src IP Addr:Port Dst IP Addr:Port X-Src IP Addr:Port X-Dst IP Addr:Port In Byte Out Byte
No matched flows
我错过了什么?问题出在 Fw(不发送数据)还是在服务器(不使用它)?
更新:看起来问题出在 nfcapd 上。我已经用 Whireshark 打开了 tcpdump 捕获,我可以看到所有的 netflow 数据都被正确接收。由于某种原因,nfcapd 忽略/不接收它。
虽然我还没有找到最终的解决方案,但存在通信问题。我已经在不同的环境中复制了安装,并且效果很好。
主要问题是 nfcapd 没有接收流量。看起来系统中的某个进程正在拦截它。