以前咱們分別具體分析了分發列表和偏移列表,這篇文章咱們就來分析一下另一種路由控制工具,filter-list。若是有偏移列表和分發列表學習的小夥伴能夠參考一下以前的文章:《路由策略專題(二)之分發列表(Distribute-List)》 《路由策略專題(三)之偏移列表(Offset List)》。
redis
與以前的工具備所不一樣,filter-list主要適用於OSPF中,主要用途是過濾區域間LSA。而且只能同Prefix-list協同工做。數據庫
技術點總結:ide
只適用於OSPF中工具
只能用於過濾區域間LSA(3類LSA)學習
只能做用於ABR上spa
以區域爲參考做用於out方向或者in方向3d
使用Prefix-list抓取路由router
配置命令:blog
須要在OSPF進程下配置:進程
router(config-router)#area {area number} filter-list prefix {prefix-list name} {in|out}
這裏注意一下,in|out方向不要站在ABR的角度去考慮要站在區域的角度去考慮。例如要若是要過濾一條從area0到area1的域間路由,若是在ABR上使用area 0 開頭就要跟out方向,若是寫area 1就要跟in方向。
咱們來結合實驗來看一下具體的實現和filter-list的特色。實驗拓撲圖以下:
實驗說明:R一、R二、R3爲主幹區域,其中R1宣告環回口1.1.1.1/32,並經過redistribute引入外部路由192.168.1.0/2四、192.168.2.0/2四、192.168.3.0/24三條外部路由。R三、R4所在區域爲Area1,R4宣告環回口4.4.4.4/32進入ospf進程。
先看一下路由表肯定一下配置沒有錯誤,咱們看到R1上收到了區域間路由(IA)1.1.1.1/32和三條經過重分佈引入的外部路由(E2);一樣R4也收到了須要的路由
情景1:
假設,咱們不但願area1中的路由器收到1.1.1.1/32這條路由那麼咱們能夠在R3上作適當配置
配置命令以下:
R3(config)#ip prefix-list DENY-REQUEST seq 5 deny 1.1.1.1/32
R3(config)#ip prefix-list DENY-REQUEST seq 100 permit 0.0.0.0/0 le 32
R3(config)#router ospf 1
R3(config-router)#area 0 filter-list prefix DENY-REQUEST out #注意這裏也可使用 R3(config-router)#area 1filter-list prefix DENY-REQUEST in
這時候咱們查看R4路由,發現1.1.1.1/32這條路由被過濾列表成功過濾。再次強調一下,這裏的in和out方向以區域爲基準。
查看R4的OSPF數據庫咱們,發現關於1.1.1.1/32的數據庫也被消除了,說明filter-list針對的是三類LSA
情景二:
在情景1的基礎上若是咱們不但願Area1中的路由器收到關於192.168.3.0/24這條路由呢,使用filter-list能不能作到。
一樣的,在R3上進行配置,以前已經有了相關的Prefix-List咱們只須要在Prefix-List中加入一條條目便可。
配置以下:
R3(config)#ip prefix-list DENY-REQUEST seq 10 deny 192.168.3.0/24
查驗路由表和數據庫咱們發現,和以前情景一中沒有任何變化。
這說明:filter-list不能夠用於過濾經過重分佈引入的5類LSA,只能夠用於過濾區域間的三類LSA
情景三:
假設咱們不但願R2收到這條4.4.4.4/32這條路由,若是使用filter-list做用在R2上能夠有效嗎
R2(config)#ip prefix-list DENY-REQUEST seq 5 deny 4.4.4.4/32
R2(config)#ip prefix-list DENY-REQUEST seq 100 permit 0.0.0.0/0 le 32
R2(config)#router ospf 1
R2(config-router)#area 0 filter-list prefix DENY-REQUEST in
發現這條區域間路由並無被過濾掉,這裏也證實了只能做用於ABR上。
本篇文檔就介紹到這裏,但願能幫助到你。須要實驗拓撲的小夥伴能夠關注一下我,給我私信或者加個人QQ,我能夠將個人實驗拓撲分享給你。謝謝