1. 程式人生 > >ACL(訪問控制列表)的類型及配置

ACL(訪問控制列表)的類型及配置

命名acl con 例如 指定 osi七層模型 七層 包過濾 router 1.5

ACL是應用在路由器接口的指令列表,通過這些指令,來告訴路由器哪些數據包可以接收,哪些數據包需要拒絕,基本原理就是:ACL使用包過濾技術,在路由器上讀取OSI七層模型的第三層及第四層包頭中的信息,如源地址、目的地址、源端口、目的端口等,根據預先定義好的規則,對包進行過濾,從而達到訪問控制的目的。
ACL有三種類型:

  1. 標準ACL:根據數據包的源IP地址來允許或拒絕數據包,標準ACL的訪問列表控制號是1~99。
  2. 擴展ACL:根據數據包的源IP地址、目的IP地址、指定協議、端口和標誌來允許或拒絕數據包,擴展ACL的訪問控制列表號是100~199。
  3. 命名ACL允許在標準ACL和擴展ACL中使用名稱代替表號。

技術分享圖片
創建標準ACL語法如下:
Router(config)#access-list 1~99 { permit | deny } 源網段地址或網段(若源地址為主機,則在地址前面需要加“host”;若源地址為網段,則要在網段地址後面加反掩碼,如/24的反掩碼就是0.0.0.255。

例如:Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255 #表示為允許192.168.1.0/24網段地址的流量通過

Router(config)#access-list 1 permit host 192.168.2.1 #表示為允許主機192.168.2.1的流量通過。

每一個ACL都有一條隱含的拒絕語句,可以拒絕所有流量,所以在做ACL規則時建議以拒絕某個網段或主機的流量通過,然後再允許所有流量通過,如下:

Router(config)#access-list 1 deny host 192.168.1.2 #拒絕192.168.1.2網段的流量通過

Router(config)#access-list 1 permit any #允許所有主機的流量通過

當以上ACL規則應用到接口上時,效果為除了192.168.1.2的流量外都可以通過。

源地址可以用 “any”

來表示為所有主機。

刪除ACL的規則時,在規則前加“no”即可,如:Router(config)# no access-list 1 #刪除表號為1的規則

技術分享圖片

一個ACL可以配置多條規則,但是一個接口,一個方向只能應用一個ACL。

配置好的ACL規則應用到接口上的語法如下:

Router(config)#int f0/1
Router(config-if)# ip access-list 1 in/out #把表號1的規則應用到進站(in)或出站(out)方向

ACL(訪問控制列表)的類型及配置