天天看點

深入了解 HUAWEI 交換機ACL在流政策中的應用

作者:平靜如水的溫柔
深入了解 HUAWEI 交換機ACL在流政策中的應用

現網中經常用到流政策來對網絡中的裝置互訪進行控制,ACL通路控制清單作為比對路由和流量的工具是最好用的工具,但在使用用也有一些問題需要注意。

如圖拓撲:

交換機作為網關,下聯兩個網段需要禁止互訪。

如果在交換機上配置ACL來比對流量,在VLAN10出方向使用流政策過濾會發現不起作用。

acl number 3000

rule 5 deny ip source 2.2.2.0 0.0.0.255 destination 1.1.1.0 0.0.0.255

rule 6 deny icmp source 2.2.2.0 0.0.0.255 destination 1.1.1.0 0.0.0.255

rule 10 permit ip

traffic-filter vlan 10 outbound acl 3000

深入了解 HUAWEI 交換機ACL在流政策中的應用

問題原因應該是流政策中ACL比對的問題

華為手冊中關于ACL的說明有如下描述:

應用在流政策中的ACL不支援對上送CPU處理的協定封包進行過濾

ACL的基本原理

ACL由一系列規則組成,通過将封包與ACL規則進行比對,裝置可以過濾出特定的封包。裝置支援軟體ACL和硬體ACL兩種實作方式。

ACL的實作方式

目前裝置支援的ACL,有以下兩種實作方式。

  • 軟體ACL:針對與本機互動的封包(必須上送CPU處理的封包),由軟體實作來過濾封包的ACL,比如FTP、TFTP、Telnet、SNMP、HTTP、路由協定、多點傳播協定中引用的ACL。
  • 硬體ACL:針對所有封包,通過下發ACL資源到硬體來過濾封包的ACL,比如流政策、基于ACL的簡化流政策、使用者組以及為接口收到的封包添加外層Tag功能中引用的ACL。

兩者主要差別在于:

  • 過濾的封包類型不同:軟體ACL用來過濾與本機互動的封包,硬體ACL可以用來過濾所有封包。
  • 封包過濾方式不同:軟體ACL是被上層軟體引用來實作封包的過濾,硬體ACL是被下發到硬體來實作封包的過濾。通過軟體ACL過濾封包時,會消耗CPU資源,通過硬體ACL過濾封包時,則會占用硬體資源。通過硬體ACL過濾封包的速度更快。
  • 對不比對ACL的封包的處理動作不同:當使用軟體ACL時,如果封包未比對上ACL中的規則,裝置對該封包采取的動作為deny,即拒絕封包通過;當使用硬體ACL時,如果封包未比對上ACL中的規則,裝置對該封包采取的動作為permit,即允許封包通過。

對于上送CPU處理的協定封包,可以通過在本機防攻擊中的黑名單中應用ACL進行過濾,步驟如下:

cpu-defend policy 1

blacklist 1 acl 3000

cpu-defend-policy 1 global

深入了解 HUAWEI 交換機ACL在流政策中的應用

另外也可以用其他方法,更為清晰表達過濾的需求

方法一:

在VLAN20的入方向進行過濾

traffic-filter vlan 20 in acl 3000

方法二:

明确在接口下過濾:

全局下:

traffic-filter inbound acl 3000

traffic-filter outbound acl 3000

都可以,相當于攔截所有接口的符合ACL的封包

接口下:

inbound方向:在G0/0/2口配置traffic-filter inbound acl 3000

outbound方向:在G0/0/1口配置traffic-filter outbound acl 3000

二者選其一,推薦使用入方向過濾,邏輯清晰。

方法三:使用過濾政策

可以在VLAN下或者接口下 使用過濾政策

traffic classifier 1 operator and

if-match acl 3000

traffic behavior 1

deny

traffic policy 1

classifier 1 behavior 1

vlan 20

traffic-policy 1 inbound

//也可以在接口下 配置

// int g 0/0/2

// traffic-policy 1 inbound

//也可以在G0/0/1的出方向

//interface GigabitEthernet0/0/1

//traffic-policy 1 outbound

但不能在VLAN10的出方向配置

繼續閱讀