Netflow V9
最近研究了一下Netflow,发现这东西还是很不错的。建议如果流量异常有问题或负载分担问题,直接让客户配上monitor,不用配置exporter,直接看cache里的内容就可以了。Netflow里面有些迷惑的地方,这回整个测试了下,发现这东西还是比较有意思的。
1. Template:
在v9的版本中,引进了template这个概念,这个东西感觉像个索引,告诉网管netflow的架构,默认export时间为1800s,也就是30mi,在抓netflow报文时,如果没有抓下template,那么你会发现通过wireshark无法解开cflow的报文,你也就没发分析了。另外template分两种,一种是正常的数据flow,另一种是option的flow,这就带来了强大的扩展。在下面的信息里,我把template的timeout改成了10s,cache timeout没改,所以你发现短时间内没有抓到任何flow流量:
RP/0/RSP0/CPU0:ios#show flow exporter test location 0/2/cpu0 Wed Jul 24 08:02:27.314 UTC Flow Exporter: test Flow Exporter memory usage: 3280868 Used by flow monitors: test-monitor Status: Normal Transport UDP Destination 12.1.1.1 (9995) VRF default Source 123.123.123.123 (29117) Flows exported: 0 (0 bytes) >>> 刚开始为空 Flows dropped: 0 (0 bytes) Templates exported: 7 (644 bytes) >>> 数据template已经exported 7个,对应Flows exported Templates dropped: 0 (0 bytes) Option data exported: 0 (0 bytes) >>> 刚开始为空 Option data dropped: 0 (0 bytes) Option templates exported: 14 (392 bytes) >>> Option template已经exported 14个,对应Option data exported Option templates dropped: 0 (0 bytes) Packets exported: 21 (1036 bytes) Packets dropped: 0 (0 bytes) Total export over last interval of: 1 hour: 18 pkts 888 bytes 0 flows 1 minute: 18 pkts 888 bytes 0 flows 1 second: 0 pkts 0 bytes 0 flows RP/0/RSP0/CPU0:ios#sh flow exporter-map test Wed Jul 24 11:28:59.354 UTC Flow Exporter Map : test ------------------------------------------------- Id : 1 DestinationIpAddr : 12.1.1.1 SourceIfName : Loopback0 SourceIpAddr : 123.123.123.123 DSCP : 0 TransportProtocol : UDP TransportDestPort : 9995 Export Version: 9 Common Template Timeout : 10 seconds Options Template Timeout : 10 seconds Data Template Timeout : 10 seconds Interface-Table Export Timeout : 0 seconds Sampler-Table Export Timeout : 0 seconds RP/0/RSP0/CPU0:ios#show flow monitor-map test-monitor Wed Jul 24 11:31:12.103 UTC Flow Monitor Map : test-monitor ------------------------------------------------- Id: 1 RecordMapName: ipv4-raw ExportMapName: test CacheAgingMode: Normal CacheMaxEntries: 1000000 CacheActiveTout: 1800 seconds CacheInactiveTout: 15 seconds CacheUpdateTout: N/A
2. Export timeout:
在Netflow中,有多个export的时间点。
当流是active的时候,到达ActiveTimeout,就会把现有cache中这些active的数据组成UDP并发送出去,默认30mi;
当流是inactive的时候(就是在设备上没有这个流的任何数据包了),到达InactiveTimeout,就会把这些inactive的数据包组成UDP发送出去,默认15s,这个很快,所以如果遇到间接性的攻击流时,很难去cache中发现问题flow。
>>>>>>>>> 测试Inactive Timeout <<<<<<<<<