一.什么是NBAR?
基于网络的应用程序识别(NBAR)可以对使用动态分配TCP/UDP端口号的应用程序和HTTP流量等进行分类.
基于网络的应用程序识别(NBAR)可以对使用动态分配TCP/UDP端口号的应用程序和HTTP流量等进行分类.
NBAR 是一种动态能在四到七层寻找协议的技术,它不但能做到普通ACL能做到那样控制静态的、简单的网络应用协议TCP/UDP 的端口号。例如我们熟知的 WEB 应用使用的 TCP 80,也能做到控制一般 ACLs 不能做到动态的端口的那些协议,例如 VoIP 使用的 H.323, SIP 等。在使用NBAR的时候要先启用CEF特性。而且可以使用数据包描述语言模块(PDLM)从路由器的闪存里加载,用于在不使用新的Cisco IOS软件,或重启路由器的情况下对新的协议或应用程序进行识别.
二.NBAR的限制
NBAR不能在以下几种逻辑接口上使用:
1.快速以太网信道.
2.使用了隧道或加密技术的接口.
3.SVI.
4.拨号接口.
5.多链路PPP(MLP).
NBAR的一些限制:
1.不支持多于24个的并发URL,HOST或MINE的匹配类型.
2.不支持超过400字节的URL匹配.
3.不支持非IP流量.
4.不支持组播或其他非CEF的交换模式.
5.不支持被分片的数据包.
6.不支持源自或去往运行NBAR的路由器的IP流量.
三.如何配置NBAR?
配置NBAR的基本步骤:
1.启用CEF特性:
Aiko(config)#ip cef
2.把流量分类,定义class map:
Aiko(config)#class-map [match-all|match-any] {map-name}
Aiko(config-cmap)#match protocol {protocol}
3.设置policy map,选择调用的class-map,以及规则动作:
Aiko(config)#policy-map {policy-name}
Aiko(config-pmap)#class {class-map}
Aiko(config-pmap-c)#{action}
4.把策略应用在接口上:
Aiko(config-if)#service-policy {input|output} {policy-map}
四、检验NBAR配置
二.NBAR的限制
NBAR不能在以下几种逻辑接口上使用:
1.快速以太网信道.
2.使用了隧道或加密技术的接口.
3.SVI.
4.拨号接口.
5.多链路PPP(MLP).
NBAR的一些限制:
1.不支持多于24个的并发URL,HOST或MINE的匹配类型.
2.不支持超过400字节的URL匹配.
3.不支持非IP流量.
4.不支持组播或其他非CEF的交换模式.
5.不支持被分片的数据包.
6.不支持源自或去往运行NBAR的路由器的IP流量.
三.如何配置NBAR?
配置NBAR的基本步骤:
1.启用CEF特性:
Aiko(config)#ip cef
2.把流量分类,定义class map:
Aiko(config)#class-map [match-all|match-any] {map-name}
Aiko(config-cmap)#match protocol {protocol}
3.设置policy map,选择调用的class-map,以及规则动作:
Aiko(config)#policy-map {policy-name}
Aiko(config-pmap)#class {class-map}
Aiko(config-pmap-c)#{action}
4.把策略应用在接口上:
Aiko(config-if)#service-policy {input|output} {policy-map}
四、检验NBAR配置
1、查看流量分类信息: nimokaka#show class-map [map-name]
2、查看policy map: nimokaka#show policy-map [policy-name]
3、查看接口的policy map 信息: nimokaka#show policy-map interface [interface]
4、显示NBAR所使用的PDLM: nimokaka#show ip nbar pdlm
5、显示NBAR使用的协议到端口号的映射信息:nimokaka#show ip nbar port-map
五、NBAR控制BT和eDonkey
1、 加载bittorrent.pdlm 到路由器闪存里
nimokaka(config)#ip nbar pdlm flash://bittorrent.pdlm
2、定义class map,识别BitTorrent程序流量,并将进站的BitTorrent程序流量丢弃
ip cef
!
class-map kaka
match protocol bittorrent
!
policy-map drop-bittorrent
class kaka
drop
!
interface Serial0
ip address 192.168.0.1 255.255.255.0
service-policy input drop-bittorrent
六、NBAR病毒防治
使用NBAR来防止红色代码(Code-Red)和尼姆达(Nimda)蠕虫病毒,配置如下
ip cef
!
class-map match-all DENY-ATTACK
match protocol http url "*.ida*"
match protocol http url "*cmd.exe*"
match protocol http url "*root.exe*"
match protocol http url "*readme.eml*"
!
policy-map nimokaka class DENY-ATTACK drop
interface Serial0
ip address 10.0.0.1 255.255.255.252
service-policy input nimokaka
本文转自zcm8483 51CTO博客,原文链接:http://blog.51cto.com/haolun/991824