

在分享高级ACL配合流策略应用之前,补充一下上次在分享基本ACL配合流策略应用的一些知识点:
上回只单单对接口下应用分享,没有对vlan、视图模式下应用进行说明。
拓扑图如下:

为了试验环境的纯净,我将之前的g0/0/4号端口下的配置去掉:
[sw1-GigabitEthernet0/0/4]undo traffic-policy b-out-deny outbound

VLAN下的应用:
[sw1]vlan 2
[sw1-vlan2]traffic-policy b-out-per outbound

我站在pc3上进行测试:去测试vla3下的主机,明显的看到是没有生效的。(试验完之后可以去掉这个配置。)

视图模式下:(测试结果还是依旧通的,这里我就不演示了。)
[sw1]traffic-policy b-out-per global outbound

结合以上试验结果:
在基本ACL配合流策略应用时,应用在在vlan和视图模式下时双向都无效!

讨论:高级ACL配合流策略应用试验组合
sw1配置如下:
acl number 3001
rule 5 permit ip source 10.0.2.0 0.0.0.255 destination 10.0.1.0 0.0.0.255
rule 6 permit ip source 10.0.2.0 0.0.0.255 destination 10.0.2.0 0.0.0.255
rule 10 deny ip
acl number 3002
rule 5 permit ip source 10.0.1.0 0.0.0.255 destination 10.0.2.0 0.0.0.255
rule 6 permit ip source 10.0.2.0 0.0.0.255 destination 10.0.2.0 0.0.0.255
rule 10 deny ip
我们要利用以下4种配置组合来验证。

配置在接口下应用:
[sw1-GigabitEthernet0/0/4]traffic-policy a-in-per inbound
这里面,要注意的是流策略的名字和数据的接口方向一定是要一致的!

配置完成后在pc3上进行ping测试,看看vlan2和vlan3之间是否能通讯?
答案是:均符合此次试验的需求,不能够和vlan3通讯,能够和vlan1-2的主机互相通讯!

能够通讯的原因之一:是这个流策略和ACL 3001互相关联在一起!
观察acl3001:

因此,我可以在高级ACL配合流策略的表中填写:

in 方向的deny流行为实验结果:(在去掉端口配置后,建议测试vlan2和vlan3之间是否通讯正常。)
[sw1-GigabitEthernet0/0/4]traffic-policy a-in-deny inbound

配置好后,我们进行全网测试:发现PC3都不能与全网主机进行互相通讯了!

造成不能通讯的原因:
当流策略中的流行为定义为deny ,不管你ACL中的rule里面是否per deny ,都视为deny!

讨论未匹配时高级ACL配合流策略的实验结果:
先将g0/0/4号口的接口下应用配置去掉:
sw1-GigabitEthernet0/0/4]undo traffic-policy a-in-deny inbound

为了模拟未匹配ACL中的规则,我将ACL3001中的 deny规则去掉,使vlan2下的主机去Ping vlan3下的主机,达到未匹配规则的效果:
[sw1-acl-adv-3001]undo rule 10

在接口上应用流策略:
[sw1-GigabitEthernet0/0/4]traffic-policy a-in-per inbound

在接口下配置完后,我们来看看vlan2和vlan3之间是否还能通讯?
答案是能够通讯的!

继续验证in 方向的deny:
[sw1-GigabitEthernet0/0/4]traffic-policy a-in-deny inbound

测试vlan2下的主机和vlan3下的主机是否能够通信?
答案是能够通信的。

因此,我在高级ACL工作表中:in per 和 in deny 在未匹配上ACL规则时,数据是允许通过的。

验证在没有配置ACL规则和没有建立ACL的验证:和基本ACL配合流策略中提示错误提示是一样的!
注意的是(考试认证):华为官方定义:在没有定义规则和没有建立ACL时,强制应用时还是允许全部通过的。(不管你Per 还是 deny )

讨论 out (per deny)方向的组合认证:
先将acl 3001 规则恢复:
[sw1-acl-adv-3001]rule deny ip

接口下应用:
[sw1-GigabitEthernet0/0/4]traffic-policy a-out-per outbound

测试:vlan2和VLAN3是否能够通信:
答案是不能够互相通讯的。但是能够和其他主机互相通信!



再来看看out -deny的实验结果:
接口下应用
[sw1-GigabitEthernet0/0/4]traffic-policy a-out-deny outbound
[sw1-GigabitEthernet0/0/4]dis this

造成全网的不能够通讯:


剩下最后的未匹配上的情况:和刚才的in方向一样,都是通过的,(这里就不用作试验了,只要把3002里面的规则最后一个deny给去掉,接口下应用就可以了。)

基本/高级配合流策略的6种组合方式到此为止实验验证完毕,我刚开始学的时候确实感觉有些琐碎,因为需要以上各种组合来验证加深自己对ACL的记忆。
因此,我在这里总结了一些实验后论证的图:为以后在实际的生产环境下配置ACL做参考。
基本ACL配合简化/流策略 图谱
在企业实际生产环境中,根据图中来看,还是推荐基本ACL配合简化流策略在接口下Out方向应用更为简单。

高级ACL在配合简化/流策略时,接口下应用时缺点很明显:那就是命令的书写量过大,影响工作效率!因此推荐图中带星号的,好处首先在于节省工作量,(在vlan下应用,相当于给vlan下所有的端口应用。),其次产生精炼的ACL的规则(期内的规则条目数最少,减少交换机内存资源)。
更为推荐高级ACL配合流策略在vlan下应用:优势在于规整!专业。

华为ACL在VLAN下应用时,vlan首先是属于二层概念技术,ACL中是针对IP报头来控制,这就让运维人员感觉到,用二层技术去管理三层概念,有些非驴非马的意思,如果在vlan接口下应用起来就觉得还说的过去。
华为官方在交换机定义中,在s5720-EI 以后就可以支持vlan接口下配置应用ACL了。
24







