標準型IP訪問列表的格式
---- 標準型IP訪問列表的格式如下:
---- access-list[list number][permit|deny][source address][address][wildcard mask][log]
---- 下面解釋一下標準型IP訪問列表的關(guān)鍵字和參數(shù)。首先,在access和list這2個關(guān)鍵字之間必須有一個連字符"-";
一、list nubmer參數(shù)
list number的范圍在0~99之間,這表明該access-list語句是一個普通的標準型IP訪問列表語句。因為對于Cisco IOS,在0~99之間的數(shù)字指示出該訪問列表和IP協(xié)議有關(guān),所以list number參數(shù)具有雙重功能:
(1)定義訪問列表的操作協(xié)議;
(2)通知IOS在處理access-list語句時,把相同的list number參數(shù)作為同一實體對待。正如本文在后面所討論的,擴展型IP訪問列表也是通過list number(范圍是100~199之間的數(shù)字)而表現(xiàn)其特點的。因此,當運用訪問列表時,還需要補充如下重要的規(guī)則: 在需要創(chuàng)建訪問列表的時候,需要選擇適當?shù)膌ist number參數(shù)。
二、permit|deny
允許/拒絕數(shù)據(jù)包通過
---- 在標準型IP訪問列表中,使用permit語句可以使得和訪問列表項目匹配的數(shù)據(jù)包通過接口,而deny語句可以在接口過濾掉和訪問列表項目匹配的數(shù)據(jù)包。
三、[source address][address][wildcard mask]
代表主機的IP地址,利用不同掩碼的組合可以指定主機。
?指定網(wǎng)絡地址
為了更好地了解IP地址和通配符掩碼的作用,這里舉一個例子。假設您的公司有一個分支機構(gòu),其IP地址為C類的192.46.28.0。在您的公司,每個分支機構(gòu)都需要通過總部的路由器訪問Internet。要實現(xiàn)這點,您就可以使用一個通配符掩碼 0.0.0.255。因為C類IP地址的最后一組數(shù)字代表主機,把它們都置1即允許總部訪問網(wǎng)絡上的每一臺主機。因此,您的標準型IP訪問列表中的access-list語句如下:
---- access-list 1 permit 192.46.28.0 0.0.0.255
---- 注意,通配符掩碼是子網(wǎng)掩碼的補充。因此,如果您是網(wǎng)絡高手,您可以先確定子網(wǎng)掩碼,然后把它轉(zhuǎn)換成可應用的通配符掩碼。這里,又可以補充一條訪問列表的規(guī)則。
?指定主機地址
如果您想要指定一個特定的主機,可以增加一個通配符掩碼0.0.0.0。例如,為了讓來自IP地址為192.46.27.7的數(shù)據(jù)包通過,可以使用下列語句:
---- Access-list 1 permit 192.46.27.7 0.0.0.0
---- 在Cisco的訪問列表中,用戶除了使用上述的通配符掩碼0.0.0.0來指定特定的主機外,還可以使用"host"這一關(guān)鍵字。例如,為了讓來自IP地址為192.46.27.7的數(shù)據(jù)包通過,您可以使用下列語句:
---- Access-list 1 permit host 192.46.27.7
---- 除了可以利用關(guān)鍵字"host"來代表通配符掩碼0.0.0.0外,關(guān)鍵字"any"可以作為源地址的縮寫,并代表通配符掩碼0.0.0.0 255.255.255.255。例如,如果希望拒絕來自IP地址為192.46.27.8的站點的數(shù)據(jù)包,可以在訪問列表中增加以下語句:
---- Access-list 1 deny host 192.46.27.8
---- Access-list 1 permit any
---- 注意上述2條訪問列表語句的次序。第1條語句把來自源地址為192.46.27.8的數(shù)據(jù)包過濾掉,第2條語句則允許來自任何源地址的數(shù)據(jù)包通過訪問列表作用的接口。如果改變上述語句的次序,那么訪問列表將不能夠阻止來自源地址為192.46.27.8的數(shù)據(jù)包通過接口。因為訪問列表是按從上到下的次序執(zhí)行語句的。這樣,如果第1條語句是:
---- Access-list 1 permit any
---- 那么來自任何源地址的數(shù)據(jù)包都會通過接口。
?拒絕的奧秘
---- 在默認情況下,除非明確規(guī)定允許通過,訪問列表總是阻止或拒絕一切數(shù)據(jù)包的通過,即實際上在每個訪問列表的最后,都隱含有一條"deny any"的語句。假設我們使用了前面創(chuàng)建的標準IP訪問列表,從路由器的角度來看,這條語句的實際內(nèi)容如下:
---- access-list 1 deny host 192.46.27.8
---- access-list 1 permit any
---- access-list 1 deny any
---- 在上述例子里面,由于訪問列表中第2條語句明確允許任何數(shù)據(jù)包都通過,所以隱含的拒絕語句不起作用,但實際情況并不總是如此。例如,如果希望來自源地址為192.46.27.8和192.46.27.12的數(shù)據(jù)包通過路由器的接口,同時阻止其他一切數(shù)據(jù)包通過,則訪問列表的代碼如下:
---- access-list 1 permit host 192.46.27.8
---- access-list 1 permit host 192.46.27.12
---- 注意,因為所有的訪問列表會自動在最后包括該語句.
四、log
討論一下標準型IP訪問列表的參數(shù)"log",它起日志的作用。一旦訪問列表作用于某個接口,那么包括關(guān)鍵字"log"的語句將記錄那些滿足訪問列表
中"permit"和"deny"條件的數(shù)據(jù)包。第一個通過接口并且和訪問列表語句匹配的數(shù)據(jù)包將立即產(chǎn)生一個日志信息。后續(xù)的數(shù)據(jù)包根據(jù)記錄日志的方式,或者在控制臺上顯示日志,或者在內(nèi)存中記錄日志。通過Cisco IOS的控制臺命令可以選擇記錄日志方式。
擴展型IP訪問列表
---- 擴展型IP訪問列表在數(shù)據(jù)包的過濾方面增加了不少功能和靈活性。除了可以基于源地址和目標地址過濾外,還可以根據(jù)協(xié)議、源端口和目的端口過濾,甚至可以利用各種選項過濾。這些選項能夠?qū)?shù)據(jù)包中某些域的信息進行讀取和比較。擴展型IP訪問列表的通用格式如下:
---- access-list[list number][permit|deny]
---- [protocol|protocol key word]
---- [source address source-wildcard mask][source port]
---- [destination address destination-wildcard mask]
---- [destination port][log options]
---- 和標準型IP訪問列表類似,"list number"標志了訪問列表的類型。數(shù)字100~199用于確定100個惟一的擴展型IP訪問列表。"protocol"確定需要過濾的協(xié)議,其中包括IP、TCP、UDP和ICMP等等。
---- 如果我們回顧一下數(shù)據(jù)包是如何形成的,我們就會了解為什么協(xié)議會影響數(shù)據(jù)包的過濾,盡管有時這樣會產(chǎn)生副作用。圖2表示了數(shù)據(jù)包的形成。請注意,應用數(shù)據(jù)通常有一個在傳輸層增加的前綴,它可以是TCP協(xié)議或UDP協(xié)議的頭部,這樣就增加了一個指示應用的端口標志。當數(shù)據(jù)流入?yún)f(xié)議棧之后,網(wǎng)絡層再加上一個包含地址信息的IP協(xié)議的頭部。由于IP頭部傳送TCP、UDP、路由協(xié)議和ICMP協(xié)議,所以在訪問列表的語句中,IP協(xié)議的級別比其他協(xié)議更為重要。但是,在有些應用中,您可能需要改變這種情況,您需要基于某個非IP協(xié)議進行過濾
---- 為了更好地說明,下面列舉2個擴展型IP訪問列表的語句來說明。假設我們希望阻止TCP協(xié)議的流量訪問IP地址為192.78.46.8的服務器,同時允許其他協(xié)議的流量訪問該服務器。那么以下訪問列表語句能滿足這一要求嗎?
---- access-list 101 permit host 192.78.46.8
---- access-list 101 deny host 192.78.46.12
---- 回答是否定的。第一條語句允許所有的IP流量、同時包括TCP流量通過指定的主機地址。這樣,第二條語句將不起任何作用??墒?,如果改變上面2條語句的次序
反向訪問列表
有5個VLAN,分別為 管理(63)、辦公(48)、業(yè)務(49)、財務(50)、家庭(51)。 要求: 管理可以訪問其它,而其它不能訪問管理,并且其它VLAN之間不能互相訪問! 它的應用不受影響,例如通過上連進行INTERNET的訪問 。
?方法一: 只在管理VLAN的接口上配置,其它VLAN接口不用配置。
在入方向放置reflect
ip access-list extended infilter
permit ip any any reflect cciepass
!
在出方向放置evaluate
ip access-list extended outfilter
evaluate cciepass
deny ip 10.54.48.0 0.0.0.255 any
deny ip 10.54.49.0.0.0.0.255 any
deny ip 10.54.50.0 0.0.0.255 any
deny ip 10.54.51.0 0.0.0.255 any
permit ip any any
!應用到管理接口
int vlan 63
ip access-group infilter in
ip access-group outfilter out
?方法二:在管理VLAN接口上不放置任何訪問列表,而是在其它VLAN接口都放。
以辦公VLAN為例:
在出方向放置reflect
ip access-list extended outfilter
permit ip any any reflect cciepass
!
在入方向放置evaluate
ip access-list extended infilter
deny ip 10.54.48.0 0.0.0.255 10.54.49.0 0.0.0.255
deny ip 10.54.48.0 0.0.0.255 10.54.50.0 0.0.0.255
deny ip 10.54.48.0 0.0.0.255 10.54.51.0 0.0.0.255
deny ip 10.54.48.0 0.0.0.255 10.54.63.0 0.0.0.255
evaluate cciepass
permit ip any any
!
應用到辦公VLAN接口:
int vlan 48
ip access-group infilter in
ip access-group outfilter out
總結(jié):
1) Reflect放置在允許的方向上(可進可出)
2) 放在管理VLAN上配置簡單,但是不如放在所有其它VLAN上直接。
3) 如果在內(nèi)網(wǎng)口上放置: 在入上設置Reflect
如果在外網(wǎng)口上放置: 在出口上放置Reflect
LAN WAN
-
inbound outbound
4)reflect不對本地路由器上的數(shù)據(jù)包跟蹤,所以對待進入的數(shù)據(jù)包時注意,要允許一些數(shù)據(jù)流進入 從IOS12.0開始,CISCO路由器新增加了一種基于時間的訪問列表。通過它,可以根據(jù)一天中的不同時間,或者根據(jù)一星期中的不同日期,當然也可以二者結(jié)合起來,控制對網(wǎng)絡數(shù)據(jù)包的轉(zhuǎn)發(fā)。
一、使用方法
這種基于時間的訪問列表就是在原來的標準訪問列表和擴展訪問列表中加入有效的時間范圍來更合理有效的控制網(wǎng)絡。它需要先定義一個時間范圍,然后在原來的各種訪問列表的基礎(chǔ)上應用它。并且,對于編號訪問表和名稱訪問表都適用。
二、使用規(guī)則
用time-range 命令來指定時間范圍的名稱,然后用absolute命令或者一個或多個periodic命令來具體定義時間范圍。 IOS命令格式為:
time-range time-range-name absolute [start time date] [end time date]
periodic days-of-the week hh:mm to [days-of-the week] hh:mm
我們分別來介紹下每個命令和參數(shù)的詳細情況
time-range : 用來定義時間范圍的命令
time-range-name:時間范圍名稱,用來標識時間范圍,以便于在后面的訪問列表中引用
absolute: 該命令用來指定絕對時間范圍。它后面緊跟這start和 end兩個關(guān)鍵字。
在這兩個關(guān)鍵字后面的時間要以24小時制、hh:mm(小時:分鐘)表示,日期要按照日/月/年來表示。可以看到,他們兩個可以都省略。如果省略start及其后面的時間,那表示與之相聯(lián)系的permit 或deny語句立即生效,并一直作用到end處的時間為止;若省略如果省略end及其后面的時間,那表示與之相聯(lián)系的permit 或deny語句在start處表示的時間開始生效,并且永遠發(fā)生作用,當然把訪問列表刪除了的話就不會起作用了。
怎么樣,看明白了嗎?上面講的就是命令和基本參數(shù)為了便于理解,我們看兩個例子。
1、如果要表示每天的早8點到晚8點就可以用這樣的語句:
absolute start 8:00 end 20:00
2、再如,我們要使一個訪問列表從2006年10月1日早5點開始起作用,直到2006年10月31日晚24點停止作用,語句如下:
absolute start 5:00 1 December 2000 end 24:00 31 December 2000
這樣一來,我們就可以用這種基于時間的訪問列表來實現(xiàn),而不用半夜跑到辦公室去刪除那個訪問列表了。這對于網(wǎng)絡管理員來說,是個很好的事情。如果你恰好是網(wǎng)管。。哇。。。什么也不要講了,快回去好好配置吧:)。好了接下來,讓我們接著看下一個periodic命令及其參數(shù)。一個時間范圍只能有一個absolute語句,但是可以有幾個periodic語句。
periodic:主要是以星期為參數(shù)來定義時間范圍的一個命令。它的參數(shù)主要有賓Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday中的一個或者幾個的組合,也可以是daily(每天)、 weekday(周一到周五)或者 weekend(周末)。
示例一: 帶Established選項的擴展訪問列表
拓撲:
R2-(S2/0)-----------------(S2/0)-R1(S2/1)---------------(S2/1)-R3
帶有Established的擴展訪問列表允許內(nèi)部用戶訪問外部網(wǎng)絡,而拒絕外部網(wǎng)絡訪問內(nèi)部網(wǎng)絡,而沒帶Established的標準訪問列表和擴展訪問列表沒有這個特性.
這個示例首先用OSPF來使全網(wǎng)互聯(lián).
R1:
r1#sh run
*Mar 1 00:25:17.275: %SYS-5-CONFIG_I: Configured from console by console
Building configuration...
Current configuration : 1410 bytes
!
version 12.2
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname r1
!
logging queue-limit 100
!
ip subnet-zero
!
!
!
ip audit notify log
ip audit po max-events 100
mpls ldp logging neighbor-changes
!
!
!
!
!
!
!
!
!
!
!
!
no voice hpi capture buffer
no voice hpi capture destination
!
!
mta receive maximum-recipients 0
!
!
!
!
interface Loopback0
ip address 1.1.1.1 255.255.255.0
!
interface FastEthernet0/0
no ip address
shutdown
duplex auto
speed auto
!
interface FastEthernet1/0
no ip address
shutdown
duplex auto
speed auto
!
interface Serial2/0
ip address 12.1.1.1 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-point
serial restart_delay 0
frame-relay map ip 12.1.1.2 102 broadcast
no frame-relay inverse-arp
!
interface Serial2/1
ip address 13.1.1.1 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-point
serial restart_delay 0
frame-relay map ip 13.1.1.3 113 broadcast
!
interface Serial2/2
no ip address
shutdown
serial restart_delay 0
!
interface Serial2/3
no ip address
shutdown
serial restart_delay 0
!
router ospf 10
log-adjacency-changes
network 0.0.0.0 255.255.255.255 area 0
!
ip http server
no ip http secure-server
ip classless
!
!
!
!
!
call rsvp-sync
!
!
mgcp profile default
!
!
!
dial-peer cor custom
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
no login
!
!
end
R2:
r2#sh run
Building configuration...
*Mar 1 00:27:29.871: %SYS-5-CONFIG_I: Configured from console by console
Current configuration : 1298 bytes
!
version 12.2
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname r2
!
logging queue-limit 100
!
ip subnet-zero
!
!
!
ip audit notify log
ip audit po max-events 100
mpls ldp logging neighbor-changes
!
!
!
!
!
!
!
!
!
!
!
!
no voice hpi capture buffer
no voice hpi capture destination
!
!
mta receive maximum-recipients 0
!
!
!
!
interface Loopback0
ip address 2.2.2.2 255.255.255.0
!
interface FastEthernet0/0
no ip address
shutdown
duplex auto
speed auto
!
interface FastEthernet1/0
no ip address
shutdown
duplex auto
speed auto
!
interface Serial2/0
ip address 12.1.1.2 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-point
serial restart_delay 0
frame-relay map ip 12.1.1.1 201 broadcast
no frame-relay inverse-arp
!
interface Serial2/1
no ip address
shutdown
serial restart_delay 0
!
interface Serial2/2
no ip address
shutdown
serial restart_delay 0
!
interface Serial2/3
no ip address
shutdown
serial restart_delay 0
!
router ospf 10
log-adjacency-changes
network 0.0.0.0 255.255.255.255 area 0
!
ip http server
no ip http secure-server
ip classless
!
!
!
!
!
call rsvp-sync
!
!
mgcp profile default
!
!
!
dial-peer cor custom
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
no login
!
!
end
r3
r3#sh run
Building configuration...
Current configuration : 1298 bytes
!
version 12.2
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname r3
!
logging queue-limit 100
!
ip subnet-zero
!
!
!
ip audit notify log
ip audit po max-events 100
mpls ldp logging neighbor-changes
!
!
!
!
!
!
!
!
!
!
!
!
no voice hpi capture buffer
no voice hpi capture destination
!
!
mta receive maximum-recipients 0
!
!
!
!
interface Loopback0
ip address 3.3.3.3 255.255.255.0
!
interface FastEthernet0/0
no ip address
shutdown
duplex auto
speed auto
!
interface FastEthernet1/0
no ip address
shutdown
duplex auto
speed auto
!
interface Serial2/0
no ip address
shutdown
serial restart_delay 0
!
interface Serial2/1
ip address 13.1.1.3 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-point
serial restart_delay 0
frame-relay map ip 13.1.1.1 311 broadcast
no frame-relay inverse-arp
!
interface Serial2/2
no ip address
shutdown
serial restart_delay 0
!
interface Serial2/3
no ip address
shutdown
serial restart_delay 0
!
router ospf 10
log-adjacency-changes
network 0.0.0.0 255.255.255.255 area 0
!
ip http server
no ip http secure-server
ip classless
!
!
!
!
!
call rsvp-sync
!
!
mgcp profile default
!
!
!
dial-peer cor custom
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
no login
!
!
end
監(jiān)視和測試配置:
我們讓R2作為內(nèi)部網(wǎng)絡,R3作為內(nèi)部網(wǎng)絡,以下配置使R2發(fā)起訪問R3沒問題,從R3訪問R2則被
拒絕.注意這個配置方案是針對基于TCP的應用,任何TCP通訊都是雙向的,從R2發(fā)起的訪問外
部網(wǎng)絡之后,外部網(wǎng)絡的流量得以通過,這個時候TCP報文,ACK或RST位被設置為1
R1(configure)access-list 101 permit tcp any any established log-input
R1(configure)access-list 101 permit ospf any any
R1(configure)access-list 101 deny ip any any log-input
R1(configure)int s2/1
R1(configure-if)ip access-group 101 in
以上log-input是為了顯示監(jiān)視數(shù)據(jù)報文被過濾的情況,接下來用debug ip packet
detailed來監(jiān)視報文經(jīng)過R1的情況,應該路由器還有OSPF報文產(chǎn)生,因此我們對DEBUG信息做
了限制.
r1(config)#access-list 102 permit tcp any any
我們這樣做 讓R2發(fā)起telnet訪問R3
r1#telnet 3.3.3.3
Trying 3.3.3.3 ... Open
r3>
*Mar 1 00:55:53.003: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.003: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 44,
sending
*Mar 1 00:55:53.007: TCP src=11001, dst=23, seq=2398697781, ack=0, win=4128 SYN
*Mar 1 00:55:53.179: %SEC-6-IPACCESSLOGP: list 101 permitted tcp 3.3.3.3(23)
(Serial2/1 ) -> 13.1.1.1(11001), 1 packet
*Mar 1 00:55:53.183: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.183: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 44,
rcvd 3
*Mar 1 00:55:53.187: TCP src=23, dst=11001, seq=949632690, ack=2398697782,
win=4128 ACK SYN
*Mar 1 00:55:53.187: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.191: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 40,
sending
*Mar 1 00:55:53.191: TCP src=11001, dst=23, seq=2398697782, ack=949632691,
win=4128 ACK
*Mar 1 00:55:53.199: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.203: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 49,
sending
*Mar 1 00:55:53.203: TCP src=11001, dst=23, seq=2398697782, ack=949632691,
win=4128 ACK PSH
*Mar 1 00:55:53.207: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.211: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 40,
sending
*Mar 1 00:55:53.215: TCP src=11001, dst=23, seq=2398697791, ack=949632691,
win=4128 ACK
*Mar 1 00:55:53.455: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.455: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 52,
rcvd 3
*Mar 1 00:55:53.459: TCP src=23, dst=11001, seq=949632691, ack=2398697791,
win=4119 ACK PSH
*Mar 1 00:55:53.459: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.463: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 45,
rcvd 3
*Mar 1 00:55:53.467: TCP src=23, dst=11001, seq=949632703, ack=2398697791,
win=4119 ACK PSH
*Mar 1 00:55:53.467: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.471: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 43,
rcvd 3
*Mar 1 00:55:53.471: TCP src=23, dst=11001, seq=949632708, ack=2398697791,
win=4119 ACK PSH
*Mar 1 00:55:53.475: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.479: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 46,
rcvd 3
*Mar 1 00:55:53.479: TCP src=23, dst=11001, seq=949632711, ack=2398697791,
win=4119 ACK PSH
*Mar 1 00:55:53.483: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.487: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 43,
sending
*Mar 1 00:55:53.487: TCP src=11001, dst=23, seq=2398697791, ack=949632717,
win=4102 ACK PSH
*Mar 1 00:55:53.491: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.495: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 43,
sending
*Mar 1 00:55:53.495: TCP src=11001, dst=23, seq=2398697794, ack=949632717,
win=4102 ACK PSH
*Mar 1 00:55:53.499: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.503: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 49,
sending
*Mar 1 00:55:53.503: TCP src=11001, dst=23, seq=2398697797, ack=949632717,
win=4102 ACK PSH
*Mar 1 00:55:53.659: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.663: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 43,
rcvd 3
*Mar 1 00:55:53.663: TCP src=23, dst=11001, seq=949632717, ack=2398697797,
win=4113 ACK PSH
*Mar 1 00:55:53.867: IP: tableid=0, s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1),
routed via RIB
*Mar 1 00:55:53.867: IP: s=13.1.1.1 (local), d=3.3.3.3 (Serial2/1), len 40,
sending
*Mar 1 00:55:53.871: TCP src=11001, dst=23, seq=2398697806, ack=949632720,
win=4099 ACK
*Mar 1 00:55:53.963: IP: tableid=0, s=3.3.3.3 (Serial2/1), d=13.1.1.1
(Serial2/1), routed via RIB
*Mar 1 00:55:53.967: IP: s=3.3.3.3 (Serial2/1), d=13.1.1.1 (Serial2/1), len 40,
rcvd 3
*Mar 1 00:55:53.967: TCP src=23, dst=11001, seq=949632720, ack=2398697806,
win=4104 ACK
注意R3返回R2的數(shù)據(jù)報文得以通過,接下來我們測試從R3發(fā)起訪問R2的情況
r3#telnet 2.2.2.2
Trying 2.2.2.2 ...
% Destination unreachable; gateway or host down
r1#
*Mar 1 01:02:22.779: %SEC-6-IPACCESSLOGP: list 101 denied tcp 13.1.1.3(11002)
(Serial2/1 ) -> 2.2.2.2(23), 1 packet
*Mar 1 01:02:22.783: IP: s=13.1.1.3 (Serial2/1), d=2.2.2.2, len 44, access
denied
*Mar 1 01:02:22.783: IP: tableid=0, s=13.1.1.1 (local), d=13.1.1.3 (Serial2/1),
routed via RIB
*Mar 1 01:02:22.787: IP: s=13.1.1.1 (local), d=13.1.1.3 (Serial2/1), len 56,
sending
*Mar 1 01:02:24.139: IP: s=12.1.1.2 (Serial2/0), d=224.0.0.5, len 80, rcvd 0
*Mar 1 01:02:24.315: IP: s=13.1.1.1 (local), d=224.0.0.5 (Serial2/1), len 80,
sending broad/multicast
*Mar 1 01:02:25.139: IP: s=12.1.1.1 (local), d=224.0.0.5 (Serial2/0), len 80,
sending broad/multicast
?
注意,TCP協(xié)議的第一次發(fā)送是SYN字段,這是用來同步準備建立一個新連接的兩端主機,而
ACK位由接收者置位從而向發(fā)送者表明數(shù)據(jù)已經(jīng)成功接收.RST(reset)位說明什么時候重新
啟動連接.帶Eetablished的擴展訪問列表只允許ACK或RST位置1的TCP報文通過.
reflect+evalute實現(xiàn)單向訪問控制列表的最新實驗結(jié)果
interface Vlan12
ip address 10.147.18.92 255.255.255.240
ip access-group in-filter in
ip access-group out-filter out
ip helper-address 10.147.17.193
no ip redirects
standby 12 ip 10.147.18.94
standby 12 priority 150
standby 12 preempt
第一步:
ip access-list extended in-filter
evaluate abcd
deny ip any any
ip access-list extended out-filter
permit ip any any reflect abcd
結(jié)果從VLAN12上的客戶機ping其它VLAN的機器,提示:
Reply from 10.147.18.92: Destination net unreachable.
第二步:
將上面的訪問控制列表改為:
ip access-list extended in-filter
permit ip any any reflect abcd
ip access-list extended out-filter
evaluate abcd
deny ip any any
結(jié)果從VLAN12的客戶機可以ping通其它vlan的機器,但其它vlan的機器ping不通vlan12的機
器.
觀察發(fā)現(xiàn),我從vlan12的客戶機上ping 其它vlan里面的任何一臺機器的話,就會自動生成一
條動態(tài)度的
access-list,(假如 我從vlan12的機器10.147.18.90 ping vlan1里面的10.147.17.251)
記錄如下:
Reflexive IP access list abcd
permit icmp host 10.147.17.251 host 10.147.18.90 (8 matches) (time left 297)
permit udp host 202.96.170.163 eq 8000 host 10.147.18.90 eq 4000 (6 matches)
(time left 247)
permit udp host 224.0.0.2 eq 1985 host 10.147.18.93 eq 1985 (155 matches) (time
left 299)
Extended IP access list in-filter
permit ip any any reflect abcd
Extended IP access list out-filter
evaluate abcd
deny ip any any (289 matches)
第三步:我想實現(xiàn)功能:vlan12里的機器能訪問所有其他vlan,除了vlan 2
(10.147.16.0/255.255.255.128)外均
不能訪問vlan12:
將訪問控制列表改為:
ip access-list extended in-filter
permit ip any any reflect abcd
ip access-list extended out-filter
evaluate abcd
permit ip 10.147.16.0 0.0.0.128 any
deny ip any any
結(jié)果一開始幾分鐘內(nèi),除了定義的VLAN2(10.147.16.0/255.255.255.128)外,其它vlan的機
器均ping不通vlan 12 的機器
后來就全部PING
不通,和第二次開發(fā)步的結(jié)果相同
我用你的方法在cisco3560交換機上測試,應用acl后,雙方向都不通了。分析一下怎么回
事,配置如下:
4號口劃分到vlan3,48號口劃分到vlan2
Switch#sh run
Building configuration...
22:07:10: %SYS-5-CONFIG_I: Configured from console by console
Current configuration : 2724 bytes
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname Switch
!
!
no aaa new-model
ip subnet-zero
ip routing
!
!
!
!
no file verify auto
spanning-tree mode pvst
spanning-tree portfast default
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface GigabitEthernet0/4
switchport access vlan 3
!
...........
!
interface GigabitEthernet0/48
switchport access vlan 2
!
...........
!
interface Vlan1
no ip address
!
interface Vlan2
ip address 10.10.10.1 255.255.255.0
!
interface Vlan3
ip address 192.9.200.253 255.255.255.0
ip access-group in-control in
ip access-group out-control out
!
ip classless
ip http server
!
ip access-list extended in-control
permit ip any any reflect test
ip access-list extended out-control
evaluate test
deny ip 10.10.10.0 0.0.0.255 any
permit ip any any
!
!
control-plane
!
!
line con 0
line vty 0 4
no login
line vty 5 15
no login
!
end文章來源:http://www.zghlxwxcb.cn/news/detail-453600.html
Switch#
文章來源地址http://www.zghlxwxcb.cn/news/detail-453600.html
到了這里,關(guān)于思科Cisco路由器access-list訪問控制列表命令詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!