一、题目
在Telnet中应用如下ACL:下列说法正确的是?
acl number 2000
rule 5 deny source 172.16.105.30
rule 10 deny source 172.16.105.40
rule 15 deny source 172.16.105.50
rule 20 permit
#
A. IP地址为172.16.105.6的设备可以使用Telnet服务
B. IP地址为172.16.105.30的设备可以使用Telnet服务
C. IP地址为172.16.105.50的设备可以使用Telnet服务
D. IP地址为172.16.105.40的设备可以使用Telnet服务
二、答案
A
三、解析
通过上述的ACL,我们可以知道,ACL阻止了172.16.105.30、172.16.105.40、172.16.105.50这三台设备的进行Telnet访问,且最后写了一条允许其它所有数据流通过,所以172.16.105.6的设备的数据流会被最后一条20所匹配,允许使用Telnet服务。
四、扩展 — ACL匹配顺序
ACL的匹配机制
ACL匹配流程
从整个ACL匹配流程可以看出,报文与ACL规则匹配后,会产生 “匹配”或者“不匹配”两个结果。匹配(命中规则)规则后,则执行该规则后的动作,包括“permit”或者“deny”。 不匹配(未命中规则),则继续往下遍历其他规则,直至匹配或完全不匹配则执行默认动作。
对于规则之间存在重复或矛盾的情形,报文的匹配结果与ACL规则匹配顺序是息息相关的,包含以下两种匹配顺序:
- 配置顺序
按照ACL规则编号从小到大的顺序进行报文匹配,编号越小越容易被匹配。后插入的规则,如果你指定的规则编号更小,那么这条规则可能会被先匹配上。
- 自动排序
是指系统使用“深度优先”的原则,将规则按照精确度从高到底进行排序,系统按照精确度从高到低的顺序进行报文匹配。
注:在自动排序的ACL中配置规则,不允许自行指定规则编号。系统能自动识别出该规则在这条ACL中对应的优先级,并为其分配一个适当的规则编号。
例如,在自动排序模式下的ACL 3010中,存在以下两条规则。
acl number 3010 match-order auto rule 5 permit ip destination 10.1.1.0 0.0.0.255 rule 10 deny ip destination 10.1.1.0 0.0.255.255 |
如果在ACL 3010中插入rule deny ip destination 10.1.1.1 0.0.0.0(目的IP地址是主机地址,优先级高于上图中的两条规则),系统将按照规则的优先级关系,重新为各规则分配编号。插入新规则后,新的排序如下。
acl number 3010 match-order auto rule 5 deny ip destination 10.1.1.1 0.0.0.0 rule 10 permit ip destination 10.1.1.0 0.0.0.255 rule 15 deny ip destination 10.1.0.0 0.0.255.255 |
可以看到,rule deny ip destination 10.1.1.1 0的优先级最高,排列最靠前。