NetFlow
(一)NetFlow简介
NetFlow为Cisco之专属协议,提供路由器中第三层之信息,可用来了解该路由器所传输之封包表头内容,依据此内容,我们可以撰写程序将 所获得之资料加以统计。一旦收集到路由器上的详细流量数据后,便可为网络流量统计、网络使用量计价、网络规划、网络监测等应用提供计 数根据。同时,NetFlow也提供针对QoS(Quality of Service)的测量基准,能够捕捉到每笔数据流的流量分类或优先性特性,而能够进一步 根据QoS进行分级收费。
目前Cisco网站上所提供可执行netflow之硬件数据:
NetFlow versions Supported Platforms
Cisco IOS Software Release Version | Supported NetFlow Export Version(s) | Supported Cisco Hardware Platforms |
11.1CA, 11.1CC | v1, v5 | Cisco 7200, 7500, RSP7000 |
11.2, 11.2P | v1 | Cisco 7200, 7500, RSP7000 |
11.2P | v1 | Route Switch Module (RSM), 11.2(10)P and later |
11.3, 11.3T | v1 | Cisco 7200, 7500, RSP7000 |
12.0 | v1, v5 | Cisco 2600, 3600, 4500, 4700, AS5800, 7200, uBR7200, 7500, RSP7000, RSM |
12.0T | V1, v5 | Cisco 1000*,1600*,1720**, 2500*,2600, 3600, 4500, 4700, AS5800, 7200, uBR7200, 7500, RSP7000, RSM, MGX8800 RPM |
12.0(3)T and later | v8 | Cisco 1000*,1600*,1720**, 2500*,2600, 3600, 4500, 4700, AS5800, 7200, uBR7200, 7500, RSP7000, RSM, MGX8800 RPM |
N/A | v7 | Catalyst 5000 NetFlow Feature Card (NFFC) |
(参考http://www.cisco.com/warp/public/cc/pd/iosw/ioft/neflct/tech/napps_wp.htm)
(二)执行NetFlow
1. 路由器的设定
在收集netflow数据之前,必须先在路由器上设定flow数据的传送方式。首先,login到router并在global执行以下指令:
ip flow-export destination
例如:ip flow-export destination 10.112.0.1 9991。除此之外,还要在欲捕捉数据的接口上设定:ip route-cache flow。如此一来, router便会开始将flow信息向IP 10.112.0.1端口号为9991送出封包(协议为UDP),而10.112.0.1即开始接收netflow的数据,此时只需要在该 台机器上执行程序即可进行统计。
2. 统计分析流程
进行统计分析的流程可分为两个阶段:
(1) 在机器上固定执行一个常驻程序(daemon),负责收集路由器送出的UDP封包,并且写入硬盘。
(2) 分析log file,并且产生所需之报表。
3. 记录及储存flow信息
首先,从网络下载flow-tool程序包(http://ftp.eng.oar.net/pub/flow-tools-0.58.tar.gz),其中包含数种用来收集及统计数据的程序 ,分列如下:
¨ flow-capture – collect flows from an exporter and store them to disk. Disk space is managed by expiring (removing) old flow files based on a configurable archive size or number of files.
¨ flow-cat – concatenate flow files.
¨ flow-dscan – detect network scanning and other suspicious activity
¨ flow-expire – expire (remove) old flow files.
¨ flow-fanout – fanout flows from a exporter to multiple collectors. Also supports multicast.
¨ flow-gen – Generate flows for testing.
¨ flow-header – Display flow file meta information.
¨ flow-merge – Merge flows files so that records are preserved in relative chronological order.
¨ flow-print – Formatted ASCII output.
¨ flow-receive – Receive flows in NetFlow format from a network.
¨ flow-send – Send flows over a network in NetFlow format.
¨ flow-split – Split flow files into smaller files.
¨ flow-stat – Generate usage reports based on IP address, IP address pairs, ports, packets, bytes, interfaces, next hops, autonomous systems, ToS bits, exporters, and tags.
¨ flow-xlate – Translate various fields of flow recrods.
flow-tool程序包安装步骤如下(以Linux系统为例):
(1) 先确定机器上已安装下列程序:
¨ zlib:ftp://ftp.freesoftware.com/pub/infozlib/zlib/
¨ gnu make:ftp://ftp.gnu.org/pub/gnu/make/make-3.79.1.tar.gz
(2) 将档案解压缩到一个目录下,例如
zcat flow-tools-0.58.tar.gz | tar xvf –
解开后执行下列指令:
./configure
gmake
gmake install
(3) 若已将路由器设定为打开netflow,可利用flow-receive确认主机是否已开始接收flow数据,例如:
flow-receive 0/0/9991 | flow-print
(4) 执行flow-capture将flow数据储存下来,其指令格式为flow-capture –z Z –n N –e E –p P –w W,其中参数意义如下:
Z – 压缩比例
N – 每日留存份数
E – 共留存几份在硬盘中
P – 埠号
W – 存放路径
例如:flow-capture –z 6 –n 143 –e 1500 –p 9991 –w /netflow,其中,压缩率约6就差不多了,设定更高的参数不见得可以多压多少 ,一天留144份,也就是10分钟rotate一次log file,方便我们做细部统计,一共留存1500份,也就是10天左右,最后一项参数表示把所有log file都放在/netflow目录下。
之后,便可将此指令加入 /usr/local/etc/rc.d 目录下,让机器一开机便执行此常驻程序。
(5) 收集一段时间的数据之后,可透过flow-print指令列出log file的内容,例如:flow-print –f0 ,所显示字段由左至右分别为:Source Interface, Source IP, Destination Interface, Destination IP, Protocol,Source Port, Destination Port, Packets 。Octects 。
4. 统计分析程序
在netflow流量数据捕捉并储存下来之后,便可根据其格式及所欲统计的项目撰写程序进行统计分析。目前从网络上可下载国立交通大学 发展的netflow统计程序(http://netflow.nctu.edu.tw/netflow.html),该程 序以perl撰写,通常必须根据各自的架构及需求予以修改后方能适用。以交大发展的netflow.pl程序为例,以一日为单位统计当天的流量,可 针对网段、协议、流入/流出之IP网段进行合计或Top统计。台大为了取得更实时的数据,将该程序修改为每10分钟统计一次,便能够了解过去 十分钟的流量。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
思科通过收购Duo来增强云安全性
思科宣布以23.5亿美元收购Duo Security公司,此次收购将为该网络公司的云安全产品组合增添了两步身份 […]
-
Accenture公司的Tammy Moskites探讨CISO职位变化
首席信息安全官(CISO)职位仍在不断发展和成熟,对于这些变化,或许没有人比Tammy Moskites更有话 […]
-
企业没有从过往网络安全事件中吸取教训
根据Pluralsight作家同时也是安全专家Troy Hunt表示,反复发生的网络安全事件表明企业仍然在基础 […]
-
微软公司提供IE浏览器零日“双杀”漏洞补丁
微软公司2018年五月份的周二补丁日提供了IE浏览器零日漏洞补丁修复,该漏洞上个月已经被外部攻击者利用。(译注 […]