NBAR (Network-Based Application Recognition) 的意思是網絡應用識別。 NBAR 是一種動態能在四到七層尋找協議的技術,它不但能做到普通 ACL能做到那樣控制靜態的、簡單的網絡應用協議TCP/UDP 的端口號。例如我們熟知的 WEB 應用使用的 TCP 80 ,也能做到控制一般 ACLs 不能做到動態的端口的那些協議,例如 VoIP 使用的 H.323, SIP 等。 在使用NBAR的時候要先啓用CEF特性。而且可以使用數據包描述語言模塊(PDLM)從路由器的閃存里加載,用於在不使用新的Cisco IOS軟件,或重啓路由器的情況下對新的協議或應用程序進行識別。
NBAR不能在以下幾種邏輯接口上使用:
1、快速以太網信道
2、使用了隧道或加密技術的接口
3、SVI
4、撥號接口
5、多鏈路PPP(MLP)
1、快速以太網信道
2、使用了隧道或加密技術的接口
3、SVI
4、撥號接口
5、多鏈路PPP(MLP)
NBAR配置
1、啓用CEF 特性:
nimokaka(config)#ip cef
2、把流量分類,定義class map:
nimokaka(config)#class-map [match-all|match-any] {map-name}
3、定義NBAR 要匹配的協議:
nimokaka(config-cmap)#match protocol {protocol}
4、設置policy map:
nimokaka(config)#policy-map {policy-name}
5、調用class map:
nimokaka(config-pmap)#class {class-map}
6、設置策略:
nimokaka(config-pmap-c)#
7、把策略應用在接口上:
nimokaka(config-if)#service-policy {input|output} {policy-map}
1、啓用CEF 特性:
nimokaka(config)#ip cef
2、把流量分類,定義class map:
nimokaka(config)#class-map [match-all|match-any] {map-name}
3、定義NBAR 要匹配的協議:
nimokaka(config-cmap)#match protocol {protocol}
4、設置policy map:
nimokaka(config)#policy-map {policy-name}
5、調用class map:
nimokaka(config-pmap)#class {class-map}
6、設置策略:
nimokaka(config-pmap-c)#
7、把策略應用在接口上:
nimokaka(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
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
使用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