1 簡介
本文檔介紹使用EAA監控政策進行網絡監控的典型配置舉例。
2 配置前提
本文檔适用于使用Comware V7軟體版本的MSR系列路由器,如果使用過程中與産品實際情況有差異,請參考相關産品手冊,或以裝置實際情況為準。
本文檔中的配置均是在實驗室環境下進行的配置和驗證,配置前裝置的所有參數均采用出廠時的預設配置。如果您已經對裝置進行了配置,為了保證配置效果,請确認現有配置和以下舉例中的配置不沖突。
本文檔假設您已了解EAA監控政策的特性。
3 路由震蕩抑制配置舉例
3.1 組網需求
如圖1所示,Router A和Router B運作BGP協定,為了防止BGP鄰居反複Up/Down時,造成網絡路由震蕩,現需要在Router B上實作如下要求:
· 當在10分鐘内BGP鄰居Up/Down三次時,自動關閉BGP對等體。
· 配置每隔60分鐘,自動配置啟用一次BGP對等體鄰居。
圖1 路由震蕩抑制配置組網圖
3.2 配置思路
· 為了使當Router A和Router B的BGP鄰居連續Up/Down三次時,自動關閉BGP對等體,可以配置EAA監控政策。
· 為了使Router A和Router B能夠每隔60分鐘,自動啟用一次BGP對等體鄰居,需要配置定時執行任務。
3.3 使用版本
本舉例是在R6728版本上進行配置和驗證的。
3.4 配置注意事項
· 同一個EAA監控政策下,隻能配置一個觸發事件和運作時間。當多次執行event或者running-time指令時,則最近配置并且commit的生效。
· 如果新配置的動作的編号和已有動作的編号相同,則最近配置并且commit的生效。
· 給CLI監控政策配置事件、動作、使用者角色和運作時間後,必須執行commit指令,該政策才會啟用,該政策下的配置才會生效。
3.5 配置步驟
3.5.1 Router A配置
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<RouterA> system-view
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] ip address 2.1.1.1 255.255.255.0
[RouterA-GigabitEthernet1/0/1] quit
(2) 配置BGP路由
# 在BGP視圖下,指定BGP路由器的Router ID為2.1.1.1,建立IBGP對等體2.1.1.2。
[RouterA] bgp 1
[RouterA-bgp] router-id 2.1.1.1
[RouterA-bgp] peer 2.1.1.2 as-number 1
# 建立并進入BGP IPv4單點傳播位址族視圖,将直連接配接口重分布到BGP路由中。
[RouterA-bgp] address-family ipv4 unicast
[RouterA-bgp-ipv4] import-route direct
# 使能與對等體2.1.1.2交換IPv4單點傳播路由資訊的能力。
[RouterA-bgp-ipv4] peer 2.1.1.2 enable
[RouterA-bgp-ipv4] quit
3.5.2 Router B配置
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<RouterB> system-view
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] ip address 2.1.1.2 255.255.255.0
[RouterB-GigabitEthernet1/0/1] quit
(2) 配置BGP路由
# 在BGP視圖下,指定BGP路由器的Router ID為2.1.1.2,建立IBGP對等體2.1.1.1。
[RouterB] bgp 1
[RouterB-bgp] router-id 2.1.1.2
[RouterB-bgp] peer 2.1.1.1 as-number 1
# 建立并進入BGP IPv4單點傳播位址族視圖,将直連接配接口重分布到BGP路由中。
[RouterB-bgp] address-family ipv4 unicast
[RouterB-bgp-ipv4] import-route direct
# 使能與對等體2.1.1.1交換IPv4單點傳播路由資訊的能力。
[RouterB-bgp-ipv4] peer 2.1.1.1 enable
[RouterB-bgp-ipv4] quit
(3) 配置CLI監控政策
# 建立CLI監控政策1。
[RouterB] rtm cli-policy 1
# 為CLI監控政策1配置監控事件:當優先級高于或等于5、内容中含有2.1.1.1 state has changed from ESTABLISHED to IDLE的日志在10分鐘(600秒)内出現過3次時,觸發執行政策。
[RouterB-rtm-1] event syslog priority 5 msg "2.1.1.1 state has changed from ESTABLISHED to IDLE" occurs 3 period 600
# 為CLI監控政策1配置動作:當事件發生時,進入到系統模式。
[RouterB-rtm-1] action 0 cli system-view
# 為CLI監控政策1配置動作:當事件發生時,進入到BGP視圖下。
[RouterB-rtm-1] action 1 cli bgp 1
# 為CLI監控政策1配置動作:當事件發生時,進入BGP IPv4單點傳播位址族視圖。
[RouterB-rtm-1] action 2 cli address-family ipv4 unicast
# 為CLI監控政策1配置動作:當事件發生時,在BGP IPv4單點傳播位址族視圖下,禁止本地路由器與對等體2.1.1.1交換IPv4單點傳播路由資訊的能力。
[RouterB-rtm-1] action 3 cli undo peer 2.1.1.1 enable
# 配置執行CLI監控政策1時使用的使用者角色為network-admin。
[RouterB-rtm-1] user-role network-admin
# 啟用CLI監控政策1。
[RouterB-rtm-1] commit
[RouterB-rtm-1] quit
(4) 配置定時執行任務
# 建立名稱為1的工作任務并進入Job視圖。
[RouterB] scheduler job 1
# 為Job配置設定指令,以進入系統視圖。
[RouterB-job-1] command 0 system-view
# 為Job配置設定指令,以進入BGP視圖。
[RouterB-job-1] command 1 bgp 1
# 為Job配置設定指令,進入BGP IPv4單點傳播位址族視圖。
[RouterB-job-1] command 2 address-family ipv4 unicast
# 為Job配置設定指令,在BGP IPv4單點傳播位址族視圖下,使能本地路由器與對等體2.1.1.1交換IPv4單點傳播路由資訊的能力。
[RouterB-job-1] command 3 peer 2.1.1.1 enable
[RouterB-job-1] quit
(5) 配置Schedule
# 建立名為1的Schedule,并進入Schedule視圖。
[RouterB] scheduler schedule 1
# 為Schedule配置設定名為1的job。
[RouterB-schedule-1] job 1
# 為Schedule配置循環執行的時間,每隔60分鐘執行一次。
[RouterB-schedule-1] time repeating interval 60
[RouterB-schedule-1] quit
3.6 驗證配置
# 通過display rtm policy registered指令檢視,可以看到政策名為1,政策類型為CLI的政策。
<RouterB> display rtm policy registered
Total number: 1
Type Event TimeRegistered PolicyName
CLI SYSLOG Jun 18 09:41:06 2014 1
# 當在10分鐘内,Router A和Router B的BGP鄰居三次Up/Down時,觀察到Router B上會生成如下日志,表示政策運作成功。
%Jun 18 14:19:26:246 2014 Router RTM/6/RTM_POLICY: CLI policy 1 is running successfully.
# 在RouterB上進入BGP視圖下,檢視BGP路由配置,觀察到在BGP IPv4單點傳播位址族視圖下,禁止與對等體2.1.1.1交換IPv4單點傳播路由資訊的能力。
[RouterB-bgp] display this
#
bgp 1
router-id 2.1.1.2
peer 2.1.1.1 as-number 1
#
address-family ipv4 unicast
import-route direct
#
Return
# 在60分鐘後,在Router B上進入BGP視圖下,檢視BGP路由配置,觀察到在BGP IPv4單點傳播位址族視圖下,使能與對等體2.1.1.1交換IPv4單點傳播路由資訊的能力。
[RouterB-bgp] display this
#
bgp 1
router-id 2.1.1.2
peer 2.1.1.1 as-number 1
#
address-family ipv4 unicast
import-route direct
peer 2.1.1.1 enable
#
Return
[RouterB-bgp] quit
# 使用指令display bgp peer ipv4檢視到Router A和Router B形成BGP對等體鄰居。
[RouterB] display bgp peer ipv4
BGP local router ID: 2.1.1.2
Local AS number: 1
Total number of peers: 1 Peers in established state: 1
Peer AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
2.1.1.1 1 23 23 0 1 00:16:04 Established
4 配置檔案復原配置舉例
4.1 組網需求
如圖2所示,管理者遠端配置Router,為避免某些配置導緻路由不可達,可提前備份配置檔案,使用NQA監控網絡連通情況,當網絡不通時,使用EAA政策觸發自定義指令,自動恢複備份的可用配置并重新開機裝置。
圖2 配置檔案復原配置組網圖
4.2 配置思路
通過使用EAA監控政策監控NQA告警項中的門檻值狀态,當監測的對象超出指定類型的門檻值時,自動觸發EAA監控政策。門檻值狀态(MIB值)的具體說明如下:
· 當門檻值狀态為invalid(MIB值為1),表示NQA測試組未啟動;
· 當門檻值狀态為overThreshold(MIB值為2),表示檢查監測的對象超出指定類型的門檻值;
· 當門檻值狀态為belowThreshold(MIB值為3),表示檢查監測的對象沒有超出指定類型的門檻值。
4.3 使用版本
本舉例是在R6728版本上進行配置和驗證的。
4.4 配置注意事項
· 同一個EAA監控政策下,隻能配置一個觸發事件和運作時間。當多次執行event或者running-time指令時,則最近配置并且commit的生效。
· 如果新配置的動作的編号和已有動作的編号相同,則最近配置并且commit的生效。
· 給CLI監控政策配置事件、動作、使用者角色和運作時間後,必須執行commit指令,該政策才會啟用,該政策下的配置才會生效。
4.5 配置步驟
(1) 配置接口位址并儲存配置檔案
# 配置接口GigabitEthernet1/0/0的IP位址。
<Router> system-view
[Router] interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0] port link-mode route
[Router-GigabitEthernet1/0/0] ip address 192.168.1.1 255.255.255.0
[Router-GigabitEthernet1/0/0] quit
# 配置到主機Host的靜态路由。
[Router] ip route 192.168.100.0 255.255.255.0 192.168.1.1
# 先把目前正在使用的正常配置備份,檔案名為eaa_test_backup.cfg。
[Router] save eaa_test_backup.cfg
The current configuration will be saved to cfa0:/eaa_test_backup.cfg. Continue? [Y/N] :y
Now saving current configuration to the device.
Saving configuration cfa0:/eaa_test_backup.cfg.Please wait...
Configuration is saved to device successfully.
(2) 配置NQA測試組
# 建立ICMP-echo類型的NQA測試組,管理者名為admin,測試操作标簽為test,并配置測試操作的目的位址為192.168.100.1。
[Router] nqa entry admin test
[Router-nqa-admin-test] type icmp-echo
[Router-nqa-admin-test-icmp-echo] data-size 20
[Router-nqa-admin-test-icmp-echo] destination ip 192.168.100.1
# 配置測試組連續兩次測試開始時間的時間間隔為1000毫秒,探測的逾時時間為500毫秒。
[Router-nqa-admin-test-icmp-echo] frequency 1000
[Router-nqa-admin-test-icmp-echo] probe timeout 500
# 開啟NQA測試組的曆史記錄儲存功能,配置一個測試組中能夠儲存的最大曆史記錄數為10個。
[Router-nqa-admin-test-icmp-echo] history-record enable
[Router-nqa-admin-test-icmp-echo] history-record number 10
# 建立編号為1的門檻值告警組,監測ICMP-echo探測的失敗次數。NQA測試組啟動前,初始的門檻值狀态為invalid。每次探測結束後,檢查測試組啟動以來連續的探測失敗次數,若達到或超過5次,門檻值狀态置為over-threshold;反之,置為below-threshold。
[Router-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type none
[Router-nqa-admin-test-icmp-echo] quit
# 啟動管理者為admin,标簽為test的測試組進行測試,測試組的啟動時間為立即開始測試,持續時間為一直進行測試。
[Router] nqa schedule admin test start-time now lifetime forever
# 開啟SNMP。
[Router] snmp-agent
(3) 配置CLI監控政策
# 建立CLI監控政策1。
[Router] rtm cli-policy 1
# 為CLI監控政策1配置監控事件:系統每5秒檢查MIB對象1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.1的值,當該值等于2時觸發執行監控政策并關閉監控開關,當等于3時重新啟動監控。
[Router-rtm-1] event snmp oid 1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.1 monitor-obj get start-op eq start-val 2 restart-op eq restart-val 3 interval 5
# 為CLI監控政策1配置動作:當事件發生時,配置下次啟動配置檔案為eaa_test_backup.cfg。
[Router-rtm-1] action 0 cli startup saved-configuration eaa_test_backup.cfg
# 為CLI監控政策1配置動作:當事件發生時,重新開機裝置。
[Router-rtm-1] action 1 reboot
# 啟用CLI監控政策1。
[Router-rtm-1] commit
[Router-rtm-1] quit
4.6 驗證配置
# 通過display rtm policy registered指令檢視,可以看到政策名為1,政策類型為CLI的政策。
[Router] display rtm policy registered
Total number: 1
Type Event TimeRegistered PolicyName
CLI SNMP Jul 10 15:31:37 2014 1
# 修改Router的GigabitEthernet1/0/0接口的IP位址,使得Router到主機的路由不可達。
[Router] interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0] ip address 10.1.1.1 24
[Router-GigabitEthernet1/0/0] quit
觀察到裝置重新啟動。
%Jul 10 15:33:40:112 2013 Router DEV/5/SYSTEM_REBOOT: System is rebooting now.
System is starting...
Press Ctrl+D to access BASIC-BOOTWARE MENU...
Press Ctrl+T to start heavy memory test
Booting Normal Extended BootWare
The Extended BootWare is self-decompressing....Done.
****************************************************************************
* *
* H3C MSR36-40 BootWare, Version 1.42 *
* *
****************************************************************************
Copyright (c) 2004-2014 Hangzhou H3C Technologies Co., Ltd.
Compiled Date : Apr 1 2014
CPU ID : 0x3
Memory Type : DDR3 SDRAM
Memory Size : 2048MB
BootWare Size : 1024KB
Flash Size : 8MB
cfa0 Size : 497MB
CPLD Version : 2.0
PCB Version : 2.0
BootWare Validating...
Press Ctrl+B to access EXTENDED-BOOTWARE MENU...
Loading the main image files...
Loading file cfa0:/msr36-cmw710-system-r0106.bin..................................................................Done.
Loading file cfa0:/msr36-cmw710-security-r0106.bin...Done.
Loading file cfa0:/msr36-cmw710-voice-r0106.bin.......Done.
Loading file cfa0:/msr36-cmw710-data-r0106.bin......Done.
Loading file cfa0:/msr36-cmw710-boot-r0106.bin....................Done.
Image file cfa0:/msr36-cmw710-boot-r0106.bin is self-decompressing................Done.
System image is starting...
Line con1 is available.
Press ENTER to get started.
<Router>%Jul 10 16:15:08:059 2014 Router SHELL/5/SHELL_LOGIN: Console logged in from con1.
<Router>
5 裝置運作狀态自動監控和維護配置舉例
5.1 組網需求
如圖3所示,Router到TFTP伺服器路由可達,為防止Router的CPU使用率過高,現要求使用EAA政策進行自動監控,當裝置CPU使用率高于80%時,進行如下操作:
· 顯示目前時間的記憶體資訊、接口統計資訊和路由表資訊并儲存到指定檔案。
· 将指定檔案上傳到指定的TFTP伺服器上。
· 上傳到TFTP伺服器後,Router删除本地的指定檔案。
圖3 裝置運作狀态自動監控和維護配置組網圖
5.2 使用版本
本舉例是在R6728版本上進行配置和驗證的。
5.3 配置注意事項
· 同一個EAA監控政策下,隻能配置一個觸發事件和運作時間。當多次執行event或者running-time指令時,則最近配置并且commit的生效。
· 如果新配置的動作的編号和已有動作的編号相同,則最近配置并且commit的生效。
· 給CLI監控政策配置事件、動作、使用者角色和運作時間後,必須執行commit指令,該政策才會啟用,該政策下的配置才會生效。
5.4 配置步驟
# 配置接口IP位址。
<Router> system-view
[Router] interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0] port link-mode route
[Router-GigabitEthernet1/0/0] ip address 192.168.1.1 255.255.255.0
[Router-GigabitEthernet1/0/0] quit
# 開啟SNMP。
[Router] snmp-agent
# 建立CLI監控政策1。
[Router] rtm cli-policy 1
# 為CLI監控政策1配置監控事件:系統每5秒檢查CPU使用率(MIB對象1.3.6.1.4.1.25506.2.6.1.1.1.1.6.16),當該值大于80時觸發執行監控政策并關閉監控開關,當小于40時重新啟動監控。
[Router-rtm-1] event snmp oid 1.3.6.1.4.1.25506.2.6.1.1.1.1.6.16 monitor-obj get start-op gt start-val 80 restart-op lt restart-val 40 interval 5
# 為CLI監控政策1配置動作:當事件發生時,顯示裝置目前的日期時間,并将顯示資訊儲存到指定檔案test1.txt。
[Router-rtm-1] action 0 cli display clock >> test1.txt
# 為CLI監控政策1配置動作:當事件發生時,顯示記憶體使用情況,并将顯示資訊以追加方式儲存到指定檔案test1.txt。
[Router-rtm-1] action 1 cli display memory >> test1.txt
# 為CLI監控政策1配置動作:當事件發生時,顯示指定接口目前的運作狀态,并将顯示資訊以追加方式儲存到指定檔案test1.txt。
[Router-rtm-1] action 2 cli display interface >> test1.txt
# 為CLI監控政策1配置動作:當事件發生時,顯示路由表的資訊,并将顯示資訊以追加方式儲存到指定檔案test1.txt。
[Router-rtm-1] action 3 cli display ip routing-table >> test1.txt
# 為CLI監控政策1配置動作:當事件發生時,将本地的指定檔案test1.txt上傳到TFTP伺服器192.168.100.14上。
[Router-rtm-1] action 4 cli tftp 192.168.100.14 put test1.txt
# 為CLI監控政策1配置動作:當事件發生時,永久删除檔案test1.txt,并确認。
[Router-rtm-1] action 5 cli delete /unreserved test1.txt
[Router-rtm-1] action 6 cli y
[Router-rtm-1] user-role network-admin
# 啟用CLI監控政策1。
[Router-rtm-1] commit
[Router-rtm-1] quit
5.5 驗證配置
# 通過display rtm policy registered指令檢視,可以看到政策名為1,政策類型為CLI的政策。
[Router] display rtm policy registered
Total number: 1
Type Event TimeRegistered PolicyName
CLI SNMP Jul 10 15:31:37 2014 1
# 當裝置CPU占用率超過80%,可以觀察到裝置CLI監控政策運作成功。
%Jul 14 10:57:22:127 2014 Router RTM/6/RTM_POLICY: CLI policy 1 is running successfully.
# 檢視日志伺服器,有test1.txt檔案生成,打開檔案檢視到顯示系統目前的時間、日期、本地時區配置,記憶體使用情況,接口目前的運作狀态和路由表的資訊。
11:14:55 UTC Mon 07/14/2014
The statistics about memory is measured in KB:
Slot 0:
Total Used Free Shared Buffers Cached FreeRatio
Mem: 2028984 540492 1488492 0 564 156532 73.4%
-/+ Buffers/Cache: 383396 1645588
Swap: 0 0 0
Slot 1:
Total Used Free Shared Buffers Cached FreeRatio
Mem: 2028984 468996 1559988 0 312 126668 76.9%
-/+ Buffers/Cache: 342016 1686968
Swap: 0 0 0
Slot 2:
Total Used Free Shared Buffers Cached FreeRatio
Mem: 4081140 1162996 2918144 0 0 42416 71.5%
-/+ Buffers/Cache: 1120580 2960560
Swap: 0 0 0
Aux0/0/1
Current state: Administratively DOWN
Description: Aux0/0/1 Interface
Bandwidth: 9kbps
Internet protocol processing: disabled
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Physical layer: asynchronous, Baudrate: 9600 bps
Phy-mru: 1700
……
Destinations : 16 Routes : 16
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/32 Direct 0 0 127.0.0.1 InLoop0
10.1.1.0/24 Direct 0 0 10.1.1.1 GE1/0/2
10.1.1.0/32 Direct 0 0 10.1.1.1 GE1/0/2
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.1.1.255/32 Direct 0 0 10.1.1.1 GE1/0/2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.0/32 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
127.255.255.255/32 Direct 0 0 127.0.0.1 InLoop0
192.168.100.0/24 Direct 0 0 192.168.100.68 GE1/0/1
192.168.100.0/32 Direct 0 0 192.168.100.68 GE1/0/1
192.168.100.68/32 Direct 0 0 127.0.0.1 InLoop0
192.168.100.255/32 Direct 0 0 192.168.100.68 GE1/0/1
224.0.0.0/4 Direct 0 0 0.0.0.0 NULL0
224.0.0.0/24 Direct 0 0 0.0.0.0 NULL0
255.255.255.255/32 Direct 0 0 127.0.0.1 InLoop0
6 視訊會議帶寬自動保障配置舉例
6.1 組網需求
如圖4所示,使用者主機和VoIP視訊系統通過路由器Router通路Internet,當召開視訊會議時,要占用較多帶寬,需要對主機的上網流量進行限制。現要求使用EAA監控政策進行自動監控,具體要求如下:
· 當每秒視訊封包流量大于等于100000個資料包時,則限制主機封包通過,僅允許視訊封包通過。當每秒視訊封包流量小于100000個資料包時,則允許視訊和主機封包通過。
圖4 視訊會議帶寬自動保障配置組網圖
6.2 使用版本
本舉例是在R6728版本上進行配置和驗證的。
6.3 配置注意事項
· 同一個EAA監控政策下,隻能配置一個觸發事件和運作時間。當多次執行event或者running-time指令時,則最近配置并且commit的生效。
· 如果新配置的動作的編号和已有動作的編号相同,則最近配置并且commit的生效。
· 給CLI監控政策配置事件、動作、使用者角色和運作時間後,必須執行commit指令,該政策才會啟用,該政策下的配置才會生效。
6.4 配置步驟
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<Router> system-view
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] ip address 192.168.1.1 255.255.255.0
[Router-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2的IP位址。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] ip address 10.1.1.1 255.255.255.0
[Router-GigabitEthernet1/0/2] quit
(2) 配置ACL政策
# 建立ACL 3001,僅允許源位址為10.1.1.2的封包通過。
[Router] acl number 3001
[Router-acl-adv-3001] rule 0 permit ip source 10.1.1.2 0
[Router-acl-adv-3001] quit
# 建立ACL 3002,不允許源位址為10.1.1.2的封包通過,允許其他封包通過。
[Router] acl number 3002
[Router-acl-adv-3002] rule 0 deny ip source 10.1.1.2 0
[Router-acl-adv-3002] rule 5 permit ip
[Router-acl-adv-3002] quit
# 在接口GigabitEthernet1/0/2的出方向上比對ACL 3001的資料包進行流量監管。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] qos car inbound acl 3001 cir 1000
[Router-GigabitEthernet1/0/2] quit
(3) 開啟SNMP功能并配置環境變量
# 開啟SNMP Agent功能。
[Router] snmp-agent
# 建立監控政策的環境變量,設定環境變量video,其值為0。
[Router] rtm environment video 0
(4) 配置CLI監控政策1
# 建立CLI監控政策1。
[Router] rtm cli-policy 1
# 為CLI監控政策1配置監控事件:系統每10秒檢查封包個數(MIB對象1.3.6.1.4.1.25506.2.8.2.2.3.1.31.1.3001.0),監控值大于等于0時執行action配置的動作(即每
次都會執行)。
[Router-rtm-1] event snmp oid 1.3.6.1.4.1.25506.2.8.2.2.3.1.31.1.3001.0 monitor-obj get start-op ge start-val 0 restart-op ge restart-val 0 interval 10
# 為CLI監控政策1配置動作:當事件發生時,清除ACL 3001的統計資訊。
[Router-rtm-1] action 0 cli reset acl counter 3001
# 為CLI監控政策1配置動作:當事件發生時,從使用者視圖進入Tcl配置視圖。
[Router-rtm-1] action 1 cli tclsh
# 為CLI監控政策1配置動作:當事件發生時,從使用者視圖進入系統視圖。
[Router-rtm-1] action 2 cli system-view
# 為CLI監控政策1配置動作:當事件發生時,檢查收到的視訊裝置封包數量,如果超過100000個資料包,則在接口GigabitEthernet1/0/2配置僅允許視訊流量10.1.1.2的封包通過,限制其他流量流量承諾資訊速率為1024 kbps。
[Router-rtm-1] action 3 cli if { $_oid_value > 100000 && $video == 0 } { rtm environment video 1; interface gigabitethernet 1/0/2; qos car inbound acl 3002 cir 1024}
# 為CLI監控政策1配置動作:當事件發生時,檢查收到的視訊裝置封包數量,如果不到100000個資料包,則接口GigabitEthernet1/0/2配置允許其他流量的封包通過。
[Router-rtm-1] action 4 cli if { $_oid_value < 100000 && $video == 1 } { rtm environment video 0; interface gigabitethernet 1/0/2; undo qos car inbound acl 3002}
# 啟用CLI監控政策1。
[Router-rtm-1] commit
[Router-rtm-1] quit
6.5 驗證配置
# 通過display rtm policy registered指令檢視,可以看到政策名為1,政策類型為CLI的政策。
[Router] display rtm policy registered
Total number: 1
Type Event TimeRegistered PolicyName
CLI SNMP Jul 11 16:07:51 2014 1
# 當Router接口GigabitEthernet1/0/2每秒視訊封包流量大于等于100000個資料包時,檢視到日志資訊顯示EAA政策1執行成功。
%Jul 11 16:13:46:552 2014 Router RTM/6/RTM_POLICY: CLI policy 1 is running successfully.
7 基于鍊路品質的主備切換配置舉例
7.1 組網需求
如圖5所示,Router A和Router B路由可達,正常情況下,Router A到Router B的直連鍊路作為主鍊路,經Router C的鍊路為備份鍊路。在Router A上配置EAA監控政策,具體要求如下:
· 當主鍊路丢包率超過20%,或者延時大于200ms時,流量切換到備份鍊路。
· 當主鍊路沒有丢包,并且延時小于100ms,流量再恢複到主鍊路進行轉發。
圖5 基于鍊路品質的主備切換配置組網圖
7.2 配置思路
通過使用EAA監控政策監控NQA告警項中的門檻值狀态,當監測的對象超出指定類型的門檻值時,自動觸發EAA監控政策。門檻值狀态(MIB值)的具體說明如下:
· 當門檻值狀态為invalid(MIB值為1),表示NQA測試組未啟動;
· 當門檻值狀态為overThreshold(MIB值為2),表示檢查監測的對象超出指定類型的門檻值;
· 當門檻值狀态為belowThreshold(MIB值為3),表示檢查監測的對象沒有超出指定類型的門檻值。
7.3 使用版本
本舉例是在R6728版本上進行配置和驗證的。
7.4 配置注意事項
· 同一個EAA監控政策下,隻能配置一個觸發事件和運作時間。當多次執行event或者running-time指令時,則最近配置并且commit的生效。
· 如果新配置的動作的編号和已有動作的編号相同,則最近配置并且commit的生效。
· 給CLI監控政策配置事件、動作、使用者角色和運作時間後,必須執行commit指令,該政策才會啟用,該政策下的配置才會生效。
7.5 配置步驟
7.5.1 Router A配置
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<RouterA> system-view
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] port link-mode route
[RouterA-GigabitEthernet1/0/1] ip address 12.1.1.1 255.255.255.0
[RouterA-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2的IP位址。
[RouterA] interface gigabitethernet 1/0/2
[RouterA-GigabitEthernet1/0/2] port link-mode route
[RouterA-GigabitEthernet1/0/2] ip address 11.1.1.2 255.255.255.0
[RouterA-GigabitEthernet1/0/2] quit
(2) 配置NQA測試組
# 建立ICMP-echo類型的NQA測試組,管理者名為1,測試操作标簽為1,并配置測試操作的目的位址為12.1.1.2。
[RouterA] nqa entry 1 1
[RouterA-nqa-1-1] type icmp-echo
[RouterA-nqa-1-1-icmp-echo] destination ip 12.1.1.2
# 配置測試組連續兩次測試開始時間的時間間隔為15000毫秒,探測的逾時時間為800毫秒,一次ICMP-echo測試中探測的次數為15次。
[RouterA-nqa-1-1-icmp-echo] frequency 15000
[RouterA-nqa-1-1-icmp-echo] probe timeout 800
[RouterA-nqa-1-1-icmp-echo] probe count 15
# 建立編号為1的門檻值告警組,監測ICMP-echo探測的持續時間,門檻值上限為200毫秒,下限為0毫秒。NQA測試組啟動前,初始的門檻值狀态為invalid。每次測試結束後,檢查本次測試的平均探測持續時間,若超出門檻值,門檻值狀态置為over-threshold;反之,置為below-threshold。
[RouterA-nqa-1-1-icmp-echo] reaction 1 checked-element probe-duration threshold-type average threshold-value 200 0 action-type none
# 建立編号為2的門檻值告警組,監測ICMP-echo探測的失敗次數。NQA測試組啟動前,初始的門檻值狀态為invalid。NQA測試組啟動前,初始的門檻值狀态為invalid。每次測試結束後,檢查本次測試中累計的持續時間超出門檻值的探測次數,若達到或超過3次,門檻值狀态置為over-threshold;反之,置為below-threshold。
[RouterA-nqa-1-1-icmp-echo] reaction 2 checked-element probe-fail threshold-type accumulate 3 action-type none
# 建立編号為3的門檻值告警組,監測ICMP-echo探測的持續時間,門檻值上限為100毫秒,下限為0毫秒。NQA測試組啟動前,初始的門檻值狀态為invalid。每次測試結束後,檢查本次測試的平均探測持續時間,若超出門檻值,門檻值狀态置為over-threshold;反之,置為below-threshold。
[RouterA-nqa-1-1-icmp-echo] reaction 3 checked-element probe-duration threshold-type average threshold-value 100 0 action-type none
# 建立編号為4的門檻值告警組,監測ICMP-echo探測的失敗次數。NQA測試組啟動前,初始的門檻值狀态為invalid。NQA測試組啟動前,初始的門檻值狀态為invalid。每次測試結束後,檢查本次測試中累計的持續時間超出門檻值的探測次數,若達到或超過1次,門檻值狀态置為over-threshold;反之,置為below-threshold。
[RouterA-nqa-1-1-icmp-echo] reaction 4 checked-element probe-fail threshold-type accumulate 1 action-type none
[RouterA-nqa-1-1-icmp-echo] quit
# 開啟NQA用戶端功能。
[RouterA] nqa agent enable
# 啟動管理者為1,标簽為1的測試組進行測試,測試組的啟動時間為立即開始測試,持續時間為一直進行測試。
[RouterA] nqa schedule 1 1 start-time now lifetime forever
# 開啟SNMP Agent功能。
[RouterA] snmp-agent
(3) 配置監控政策的環境變量
# 建立監控政策的環境變量,設定環境變量delay,其值為0。
[RouterA] rtm environment delay 0
# 建立監控政策的環境變量,設定環境變量loss,其值為0。
[RouterA] rtm environment loss 0
# 建立監控政策的環境變量,設定環境變量backup,其值為0。
[RouterA] rtm environment backup 0
(4) 配置CLI監控政策1
# 建立CLI監控政策1。
[RouterA] rtm cli-policy 1
# 為CLI監控政策1配置監控事件:系統每10秒檢查MIB對象1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.1的值,當該值等于2時觸發執行監控政策并關閉監控開關,當等于3時重新啟動監控。
[RouterA-rtm-1] event snmp oid 1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.1 monitor-obj get start-op eq start-val 2 restart-op eq restart-val 3 interval 10
# 為CLI監控政策1配置動作:當事件發生時,配置從使用者視圖進入Tcl配置視圖。
[RouterA-rtm-1] action 0 cli tclsh
# 為CLI監控政策1配置動作:當事件發生時,進入系統視圖。
[RouterA-rtm-1] action 1 cli system-view
# 為CLI監控政策1配置動作:當事件發生時,将環境變量delay的值由0變為1。
[RouterA-rtm-1] action 2 cli if { $delay==0 } { rtm environment delay 1 }
# 為CLI監控政策1配置動作:當事件發生時,将環境變量backup的值由0變為1,并配置到100.1.1.0/24、指定下一跳為11.1.1.1、優先級為10的靜态路由。
[RouterA-rtm-1] action 3 cli if { $backup==0 } { rtm environment backup 1; ip route-static 100.1.1.0 24 11.1.1.1 preference 10 }
# 啟用CLI監控政策1。
[RouterA-rtm-1] commit
[RouterA-rtm-1] quit
(5) 配置CLI監控政策2
# 建立CLI監控政策2。
[RouterA] rtm cli-policy 2
# 為CLI監控政策2配置監控事件:系統每10秒檢查MIB對象1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.2的值,當該值等于2時觸發執行監控政策并關閉監控開關,當等于3時重新啟動監控。
[RouterA-rtm-2] event snmp oid 1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.2 monitor-obj get start-op eq start-val 2 restart-op eq restart-val 3 interval 10
# 為CLI監控政策2配置動作:當事件發生時,配置從使用者視圖進入Tcl配置視圖。
[RouterA-rtm-2] action 0 cli tclsh
# 為CLI監控政策2配置動作:當事件發生時,進入系統視圖。
[RouterA-rtm-2] action 1 cli system-view
# 為CLI監控政策2配置動作:當事件發生時,将環境變量loss的值由0變為1。
[RouterA-rtm-2] action 2 cli if { $loss==0 } { rtm environment loss 1 }
# 為CLI監控政策2配置動作:當事件發生時,将環境變量backup的值由0變為1,并配置到100.1.1.0/24、指定下一跳為11.1.1.1、優先級為10的靜态路由。
[RouterA-rtm-2] action 3 cli if { $backup==0 } { rtm environment backup 1; ip route-static 100.1.1.0 24 11.1.1.1 preference 10 }
# 啟用CLI監控政策2。
[RouterA-rtm-2] user-role network-admin
[RouterA-rtm-2] commit
(6) 配置CLI監控政策3
# 建立CLI監控政策3。
[RouterA] rtm cli-policy 3
# 為CLI監控政策3配置監控事件:系統每10秒檢查MIB對象1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.3的值,當該值等于2時觸發執行監控政策并關閉監控開關,當等于3時重新啟動監控。
[RouterA-rtm-3] event snmp oid 1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.3 monitor-obj get start-op eq start-val 3 restart-op eq restart-val 2 interval 10
# 為CLI監控政策3配置動作:當事件發生時,配置從使用者視圖進入Tcl配置視圖。
[RouterA-rtm-3] action 0 cli tclsh
# 為CLI監控政策3配置動作:當事件發生時,進入系統視圖。
[RouterA-rtm-3] action 1 cli system-view
# 為CLI監控政策3配置動作:當事件發生時,将環境變量delay的值由1變為0。
[RouterA-rtm-3] action 2 cli if { $delay==1 } { rtm environment delay 0 }
# 為CLI監控政策3配置動作:當事件發生時,在5000毫秒後發生變化。
[RouterA-rtm-3] action 3 cli after 5000
# 為CLI監控政策3配置動作:當事件發生時,将環境變量backup和loss的值變為0,并删除配置到100.1.1.0/24、指定下一跳為11.1.1.1、優先級為10的靜态路由。
[RouterA-rtm-3] action 4 cli if { $backup==1 && $loss==0 } { undo ip route-static 100.1.1.0 24 11.1.1.1 preference 10; rtm environment backup 0 }
# 啟用CLI監控政策3。
[RouterA-rtm-3] user-role network-admin
[RouterA-rtm-3] commit
(7) 配置CLI監控政策4
# 建立CLI監控政策4。
[RouterA] rtm cli-policy 4
# 為CLI監控政策4配置監控事件:系統每10秒檢查MIB對象1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.4的值,當該值等于2時觸發執行監控政策并關閉監控開關,當等于3時重新啟動監控。
[RouterA-rtm-4] event snmp oid 1.3.6.1.4.1.25506.8.3.1.13.1.11.1.49.1.49.4 monitor-obj get start-op eq start-val 3 restart-op eq restart-val 2 interval 10
# 為CLI監控政策4配置動作:當事件發生時,配置從使用者視圖進入Tcl配置視圖。
[RouterA-rtm-4] action 0 cli tclsh
# 為CLI監控政策4配置動作:當事件發生時,進入系統視圖。
[RouterA-rtm-4] action 1 cli system-view
# 為CLI監控政策4配置動作:當事件發生時,将環境變量loss的值由1變為0。
[RouterA-rtm-4] action 2 cli if { $loss==1 } { rtm environment loss 0 }
# 為CLI監控政策4配置動作:當事件發生時,在5000毫秒後發生變化。
[RouterA-rtm-4] action 3 cli after 5000
# 為CLI監控政策4配置動作:當事件發生時,将環境變量backup和delay的值保持為0,并删除配置到100.1.1.0/24、指定下一跳為11.1.1.1、優先級為10的靜态路由。
[RouterA-rtm-4] action 4 cli if { $backup==1 && $delay==0 } { undo ip route-static 100.1.1.0 24 11.1.1.1 preference 10; rtm environment backup 0 }
# 啟用CLI監控政策4。
[RouterA-rtm-4] user-role network-admin
[RouterA-rtm-4] commit
[RouterA-rtm-4] quit
7.5.2 Router B配置
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<RouterB> system-view
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] port link-mode route
[RouterB-GigabitEthernet1/0/1] ip address 12.1.1.2 255.255.255.0
[RouterB-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2的IP位址。
[RouterB] interface gigabitethernet 1/0/2
[RouterB-GigabitEthernet1/0/2] port link-mode route
[RouterB-GigabitEthernet1/0/2] ip address 100.1.1.2 255.255.255.0
[RouterB-GigabitEthernet1/0/2] quit
(2) 配置OSPF路由,使得Router C到Router B網絡互通
[RouterB] ospf 1
[RouterB-ospf-1] area 0.0.0.0
[RouterB-ospf-1-area-0.0.0.0] network 12.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] network 100.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] quit
[RouterB-ospf-1] quit
7.5.3 Router C配置
(1) 配置接口位址
# 配置接口GigabitEthernet1/0/1的IP位址。
<RouterC> system-view
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] port link-mode route
[RouterC-GigabitEthernet1/0/1] ip address 11.1.1.1 255.255.255.0
[RouterC-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2的IP位址。
[RouterC] interface gigabitethernet 1/0/2
[RouterC-GigabitEthernet1/0/2] port link-mode route
[RouterC-GigabitEthernet1/0/2] ip address 100.1.1.1 255.255.255.0
[RouterC-GigabitEthernet1/0/2] quit
(2) 配置OSPF路由,使得Router B到Router C網絡互通
[RouterC] ospf 1
[RouterC-ospf-1] area 0.0.0.0
[RouterC-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[RouterC-ospf-1-area-0.0.0.0] network 100.1.1.0 0.0.0.255
[RouterC-ospf-1-area-0.0.0.0] quit
[RouterC-ospf-1] quit
7.6 驗證配置
# 顯示所有監控政策的詳細資訊。
<RouterA> display rtm policy registered verbose
Total number: 4
Policy Name: 1
Policy Type: CLI
Event Type: SNMP
TimeRegistered: Jul 14 15:04:24 2014
User-role: network-admin
Policy Name: 2
Policy Type: CLI
Event Type: SNMP
TimeRegistered: Jul 14 15:14:50 2014
User-role: network-admin
Policy Name: 3
Policy Type: CLI
Event Type: SNMP
TimeRegistered: Jul 14 15:17:32 2014
User-role: network-admin
Policy Name: 4
Policy Type: CLI
Event Type: SNMP
TimeRegistered: Jul 14 15:18:33 2014
User-role: network-admin
(1) 當Router A到Router B的封包延時為300毫秒時,超過門檻值200毫秒,觀察Router A顯示資訊。
# 檢視到日志資訊顯示EAA政策1執行成功。
%Jul 14 14:50:16:677 2014 RouterA RTM/6/RTM_POLICY: CLI policy 1 is running successfully.
# 使用display rtm environment指令用來顯示使用者自定義的EAA環境變量配置,觀察到環境變量backup的值變為1,delay的值變為1。
[RouterA] display rtm environment
Name Value
backup 1
delay 1
loss 0
# 使用display this指令顯示目前視圖下生效的配置,觀察到有到100.1.1.0/24的靜态路由,Router A到Router B的封包切換路由到備份鍊路。
[RouterA] display this
#
sysname RouterA
#
nqa schedule 1 1 start-time now lifetime forever
#
ip route-static 100.1.1.0 24 11.1.1.1 preference 10
#
snmp-agent
snmp-agent local-engineid 800063A280000605B36B9E00000001
snmp-agent sys-info version v3
#
rtm environment backup 1
rtm environment delay 1
rtm environment loss 0
#
Return
(2) 當Router A到Router B的封包丢包率為25%時,超過門檻值,觀察Router A顯示資訊。
# 檢視到日志資訊顯示EAA政策2執行成功。
%Jul 14 15:15:23:802 2014 RouterA RTM/6/RTM_POLICY: CLI policy 2 is running successfully.
# 使用display rtm environment指令用來顯示使用者自定義的EAA環境變量配置,觀察到環境變量loss的值變為1。
[RouterA] display rtm environment
Name Value
backup 1
delay 1
loss 1
# 使用display this指令顯示目前視圖下生效的配置,觀察到Router A的封包切仍然經備份鍊路到Router B。
[RouterA] display this
#
sysname RouterA
#
nqa schedule 1 1 start-time now lifetime forever
#
ip route-static 100.1.1.0 24 11.1.1.1 preference 10
#
snmp-agent
snmp-agent local-engineid 800063A280000605B36B9E00000001
snmp-agent sys-info version v3
#
rtm environment backup 1
rtm environment delay 1
rtm environment loss 1
#
Return
(3) 當Router A到Router B的封包延時恢複正常,丢包率仍為25%時,觀察Router A顯示資訊。
# 檢視到日志資訊顯示EAA政策3執行成功。
%Jul 14 15:19:13:771 2014 RouterA RTM/6/RTM_POLICY: CLI policy 3 is running successfully.
# 使用display rtm environment指令用來顯示使用者自定義的EAA環境變量配置,觀察到環境變量delay的值變為0。
[RouterA] display rtm environment
Name Value
backup 1
delay 0
loss 1
# 使用display this指令顯示目前視圖下生效的配置,觀察到Router A的封包切仍然經備份鍊路到Router B。
[RouterA] display this
#
sysname RouterA
#
nqa schedule 1 1 start-time now lifetime forever
#
ip route-static 100.1.1.0 24 11.1.1.1 preference 10
#
snmp-agent
snmp-agent local-engineid 800063A280000605B36B9E00000001
snmp-agent sys-info version v3
#
rtm environment backup 1
rtm environment delay 0
rtm environment loss 1
#
Return
(4) 當Router A到Router B的封包延時和丢包率恢複正常時,觀察Router A顯示資訊。
# 檢視到日志資訊顯示EAA政策4執行成功。
%Jul 14 15:19:13:771 2014 RouterA RTM/6/RTM_POLICY: CLI policy 4 is running successfully.
# 使用display rtm environment指令用來顯示使用者自定義的EAA環境變量配置,觀察到環境變量backup、delay和loss的值變為0。
[RouterA] display rtm environment
Name Value
backup 0
delay 0
loss 0
# 使用display this指令顯示目前視圖下生效的配置。
[RouterA] display this
#
sysname RouterA
#
nqa schedule 1 1 start-time now lifetime forever
#
snmp-agent
snmp-agent local-engineid 800063A280000605B36B9E00000001
snmp-agent sys-info version v3
#
rtm environment backup 0
rtm environment delay 0
rtm environment loss 0
#
Return