CCNA 中文讀書筆記十

Chapter10 Managing Traffic with Access Lists
 
 
Introduction to Access Lists
 
訪問列表(access list,ACL)的主要作用是過濾你不想要的數據包.設置 ACL的一些規則:
1.按順序的比較,先比較第一行,再比較第二行..直到最後 1 行
2.從第一行起,直到找到 1個符合條件的行;符合以後,其餘的行就不再繼續比較下去
3.默認在每個ACL中最後1行爲隱含的拒絕(deny),如果之前沒找到1條許可(permit)語句,意
味着包將被丟棄.所以每個 ACL 必須至少要有 1行 permit 語句,除非你想想所有數據包丟棄
 
2 種主要的訪問列表:
1.標準訪問列表(standard access lists):只使用源 IP地址來做過濾決定
2.擴展訪問列表(extended access lists):它比較源 IP 地址和目標 IP 地址,層 3 的協議字段,層 4
端口號來做過濾決定
 
利用ACL來過濾,必須把ACL應用到需要過濾的那個router的接口上,否則ACL是不會起到
過濾作用的.而且你還要定義過濾的方向,比如是是想過濾從 Internet 到你企業網的數據包呢
還是想過濾從企業網傳出到 Internet的數據包呢?方向分爲下面 2 種:
1.inbound ACL:先處理,再路由
2.outbound ACL:先路由,再處理
 
一些設置 ACL 的要點:
1.每個接口,每個方向,每種協議,你只能設置 1 個ACL
2.組織好你的 ACL 的順序,比如測試性的最好放在 ACL 的最頂部
3.你不可能從ACL從除去1行,除去1行意味你將除去整個ACL,命名訪問列表(named access
lists)例外(稍後介紹命名訪問列表)
4.默認 ACL結尾語句是 deny any,所以你要記住的是在 ACL 裏至少要有 1條 permit 語句
5.記得創建了 ACL 後要把它應用在需要過濾的接口上
6.ACL 是用於過濾經過 router的數據包,它並不會過濾 router本身所產生的數據包
7.儘可能的把IP標準ACL放置在離目標地址近的地方;儘可能的把IP擴展ACL放置在離源
地址近的地方
 
Standard Access Lists
 
介紹 ACL 設置之前先介紹下通配符掩碼(wildcard masking).它是由 0 和255 的4 個8 位位組
組成的.0 代表必須精確匹配,255 代表隨意,比如:172.16.30.0 0.0.0.255,這個告訴 router前 3 位
的 8 位位組必須精確匹配,後 1 位 8 位位組的值可以爲任意值.如果你想指定 172.16.8.0 到
172.16.15.0,則通配符掩碼爲 0.0.7.255(15-8=7)
 
配置 IP標準 ACL,在特權模式下使用 access-lists [ACL號] [permit/deny] [any/host]命令.ACL
號爲1到99和1300到1999;permit/deny分別爲允許和拒絕;any爲任何主機,host爲具體某個
主機(需要跟上 IP地址)或某 1 段 
我們來看 1個設置 IP標準 ACL 的實例:
 
如圖,router有 3 個 LAN的連接 1 個 Internet 的連接.現在,銷售部的用戶不允許訪問金融部的
用戶,但是允許他們訪問市場部和 Internet 連接.配置如下:
Router(config)#access-list 10 deny 172.16.40.0 0.0.0.255
Router(config)#access-list 10 permit any
注意隱含的deny any,所以末尾這裏我們要加上permit any,any等同於0.0.0.0 255.255.255.255.
接下來把ACL應用在接口上,之前說過了儘可能的把IP標準ACL放置在離目標地址近的地
方,所以使用 ip access-group 命令把 ACL 10 放在 E1接口,方向爲出,即 out.如下:
Router(config)#int e1
Router(config-if)#ip access-group 10 out
 
Controlling VTY(Telnet) Access
 
使用 IP標準 ACL 來控制VTY線路的訪問.配置步驟如下:
1.創建個 IP標準 ACL 來允許某些主機可以 telnet
2.使用 access-class 命令來應用 ACL 到VTY線路上
 
實例如下:
Router(config)#access-list 50 permit 172.16.10.3
Router(config)#line vty 0 4
Router(config-line)#access-class 50 in
如上,進入 VTY 線路模式,應用 ACL,方向爲進來,即 in.因爲默認隱含的 deny any,所以上面的
例子,只允許 IP地址爲 172.16.10.3 的主機 telnet 到 router上
 
Extended Access Lists
 
擴展 ACL:命令是 access-list [ACL 號] [permit/deny] [協議] [源地址] [目標地址] [操作符] [端
口] [log].ACL號的範圍是100到199和2000到2699;協議爲TCP,UDP等,操作符號有eq(表
等於),gt(大於),lt(小於)和neq(非等於)等等;log爲可選,表示符合這個ACL,就記錄下這些日誌
 
來看 1個配置擴展 ACL的實例: 
假如要拒 telnet 和 FTP到絕位於金融部的主機 172.16.30.5,配置如下:
Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 21
Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 23
Router(config)#access-list 110 permit ip any any
記住默認隱含的 deny all.應用到 E1接口,注意方向爲 out,如下:
Router(config)#int e1
Router(config-if)#ip access-group 110 out
 
Named Access Lists
 
命名訪問列表是創建標準和擴展訪問列表的另外 1 種方法.它允許你使用命名的方法來創建
和應用標準或者擴展訪問列表.使用 ip access-list命令來創建,如下:
 
Router(config)#ip access-list ?
    extended  Extended Acc
    logging    Control access list logging
    standard    Standard Access List
Router(config)#ip access-list standard ?
    <1-99>      Standard IP access-list number
    WORD      Access-list name
Router(config)#ip access-list standard BlockSales Router(config-std-nacl)#?
Standard Access List configuration commands:
   default   Set a command to its defaults
   deny     Specify packets to reject
   exit       Exit from access-list configuration mode
   no       Negate a command or set its default
   permit    Specify packets to forward
Router(config-std-nacl)#deny 172.16.40.0 0.0.0.255
Router(config-std-nacl)#permit any
Router(config-std-nacl)#exit
Router(config)#^Z
Router#sh run
(略)
!
ip access-list standard BlockSales
 deny  172.16.40.0 0.0.0.255
 permit any
!
(略)
接下來應用到接口上,如下:
Router(config)#int 1
Router(config-if)#ip access-group BlockSales out
Router(config-if)#^Z
Router#
 
Monitoring Access Lists
 
一些驗證 ACL的命令,如下:
1.show access-list:顯示 router 上配置了的所有的 ACL 信息,但是不顯示哪個接口應用了哪
個 ACL的信息
2.show access-list [number]:顯示具體第幾號 ACL信息,也不顯示哪個接口應用了這個 ACL
3.show ip access-list:只顯示 IP 訪問列表信息
4.show ip interface:顯示所有接口的信息和配置的 ACL信息
5.show ip interface [接口號]:顯示具體某個接口的信息和配置的 ACL信息
6.show running-config:顯示 DRAM 信息和 ACL信息,以及接口對 ACL的應用信息
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章