netflow v9中的字段ID不正确

时间:2012-10-01 07:08:49

标签: python cisco netflow

在分析Netflow V9时,我能够正确地获取大多数字段ID及其值,如

中所定义

http://www.iana.org/assignments/ipfix/ipfix.xml

但我得到40000,40001,40002,...而不是224,225,226,...用于NAT文件, 但是我检索到的每个字段的值都是正确的。

我确信所有字段的id和值都是正确获取的。 我不知道真正的问题是什么。我尝试使用

将主机转换为网络字节,反之亦然
field_type = socket.ntohs(struct.unpack('H', template_data[a:b])[0])

P.S。我使用cisco路由器进行netflow v9。

1 个答案:

答案 0 :(得分:2)

思科不使用IPFIX,而是使用NetFlow v9。虽然IPFIX源自思科的NetFlow v9规范,但存在一些差异。其中之一是IPFIX使用PrivateEnterpriseNumber允许字段类型编号中的每个供应商名称空间。 NetFlow v9没有这样的功能,因此供应商必须随意选择一系列数字来报告他们的自定义字段,并希望没有其他人选择相同的范围。在这种情况下,我猜你从思科ASA获得你的NetFlow票,它确实使用了40000-40005范围内的一些字段。

有一个名为“Cisco ASA 5500 Series Implementation Note for NetFlow Collectors, 8.3”的文档描述了这些字段。