拓扑结构:

配置IP地址、VLAN及路由:

SW1(config)#int range f0/1 - 2
SW1(config-if-range)#switchport mode access
SW1(config-if-range)#switchport access vlan 1
SW1(config)#int range f0/3 - 4
SW1(config-if-range)#switchport mode access
SW1(config-if-range)#switchport access vlan 2
SW1(config)#ip routing
SW1(config)#int vlan 1
SW1(config-if)#ip add 172.16.1.254 255.255.255.0
SW1(config-if)#no sh
SW1(config)#int vlan 2
SW1(config-if)#ip add 172.16.2.254 255.255.255.0
SW1(config-if)#no sh
R1(config)#int f0/0
R1(config-if)#ip add 172.16.1.1 255.255.255.0
R1(config-if)#no sh
R1(config)#ip route 0.0.0.0 0.0.0.0 172.16.1.254
R2(config)#int f0/0
R2(config-if)#ip add 172.16.1.2 255.255.255.0
R2(config-if)#no sh
R2(config)#ip route 0.0.0.0 0.0.0.0 172.16.1.254
R3(config)#int f0/0
R3(config-if)#ip add 172.16.2.3 255.255.255.0
R3(config-if)#no sh
R3(config)#ip route 0.0.0.0 0.0.0.0 172.16.2.254
R4(config)#int f0/0
R4(config-if)#ip add 172.16.2.4 255.255.255.0
R4(config-if)#no sh
R4(config)#ip route 0.0.0.0 0.0.0.0 172.16.2.254

配置MAC ACL:
MAC ACL能根据帧的源和目的MAC及帧的类型进行过滤。

SW1(config)#mac access-list extended MACL
SW1(config-ext-macl)#deny cc01.0604.0000 0000.0000.ffff any   //拒绝源MAC为CC01.0604.****的帧
SW1(config-ext-macl)#permit any any

SW1(config)#int f0/1
SW1(config-if)#mac access-group MACL in        //在F0/0接口IN方向应用MAC ACL

实验调试:

测试R1和其它路由器的通信,很可能还是正常的,原因在于:MAC ACL对ICMP这样的IP数据包并不起作用。在路由器R1上,执行“clear arp-cache”命令后,再重新测试R1和其它路由器的通信,这时应该无法通信,原因在于:当清除ARP表后,R1需要先发送ARP请求,而该ARP请求将被MAC ACL丢弃。

说明:可以通过“show int f0/0”或“show ip arp”命令查看MAC地址。

注意:MAC ACL只对非IP流量起作用。

配置RACL:

可以在交换机的二层接口应用IP标准/扩展ACL,但只能应用在IN方向。

SW1(config)#access-list 100 deny ip host 172.16.2.3 host 172.16.1.2
SW1(config)#access-list 100 permit ip any any
SW1(config)#int f0/3
SW1(config-if)#switchport        //明确指明接口是二层接口
SW1(config-if)#ip access-group 100 in
实验调试:

路由器R3和R2之间的通信应该是不正常的,R3和其它路由器之间的通信应该是正常的。

配置VACL:

VACL应用在VLAN上,没有方向性,进入或离开VLAN的数据都要受控制。

SW1(config)#int f0/3
SW1(config-if)#no ip access-group 100 in        //先清除F0/3接口上的ACL
SW1(config)#access-list 101 permit ip host 172.16.2.4 host 172.16.1.2
SW1(config)#vlan access-map VACL 5

SW1(config-access-map)#match ip address 101
SW1(config-access-map#action drop        //以上配置从R4发往R2的数据将被丢弃
SW1(config)#vlan access-map VLAN 10
SW1(config-access-map)#action forward        //以上配置其它的数据包将被转发

SW1(config)#vlan filter VLAN vlan-list 1
实验调试:

路由器R2和R3之间的通信应该是正常的;路由器R2和R4之间的通信应该是不正常的。

注意:VACL是应用在Vlan 1上的,当R2发包到R4时,VACL不丢弃数据包;而当R4发包到R2时,VACL丢弃数据包。

MAC ACL、RACL和VACL的更多相关文章

  1. ACL(Access Control List)

    一.ACL的简介 ACL(Access Control List 访问控制列表)是路由器和交换机接口的指令列表,用来控制端口进出的数据包.ACL的定义也是基于每一种被动路由协议的,且适用于所有的被动路 ...

  2. Cisco VLAN ACL配置

    什么是ACL? ACL全称访问控制列表(Access Control List),主要通过配置一组规则进行过滤路由器或交换机接口进出的数据包, 是控制访问的一种网络技术手段, ACL适用于所有的被路由 ...

  3. 访问控制列表 ACL

    访问控制列表(Access Control List,ACL) 是路由器和交换机接口的指令列表,用来控制端口进出的数据包.其目的是为了对某种访问进行控制. 作用 ACL可以限制网络流量.提高网络性能. ...

  4. 无线加密的多种方法及其区别(WEP WPA TKIP EAP)

    无线加密的多种方法及其区别(WEP WPA TKIP EAP) 无线网络的安全性由认证和加密来保证. 认证允许只有被许可的用户才能连接到无线网络: 加密的目的是提供数据的保密性和完整性(数据在传输过程 ...

  5. MAC OS X的ACL扩展权限设置

    在WEB开发时,网站是以_www的用户运行的,而我在本地是以liuwencan的用户编辑的.这就带来一个问题:如果所有文件属于liuwencan,那么网站运行需要写文件时就因无权限而失败:如果所有文件 ...

  6. CISCO VLAN ACL

    对于cisco VLAN ACL 首先得定义 standard ACL或 extented ACL用于抓取流量 注意这里的抓取流量不是最终的对流量的操作,而是决定什么样的流量用VLAN ACL 来处理 ...

  7. Windows Directory ACL Security Check By ACL Baseline

    catalog . Windows NTFS ACL(MAC) Permission . How the System Uses ACLs . 服务器不安全ACL配置带来的攻击向量 . NTFS AC ...

  8. Mac OS X 背后的故事

    Mac OS X 背后的故事 作者: 王越  来源: <程序员>  发布时间: 2013-01-22 10:55  阅读: 25840 次  推荐: 49   原文链接   [收藏]   ...

  9. squid ACL 大全

    Access Controls in Squid Contents Access Controls in Squid The Basics: How the parts fit together AC ...

随机推荐

  1. Python中添加中文注释报错SyntaxError: Non-UTF-8 code starting with '\xc1'

    问题:在文本编辑器中编辑Python文件时添加中文注释,运行python文件时报错.SyntaxError: Non-UTF-8 code starting with '\xc1' 解决方法:在文本开 ...

  2. c#new和override

    new是覆盖父类的虚方法,当用子类构造方法构造父类对象时调用该虚方法调的是父类的方法(视为子类屏蔽了父类的方法,没实现,还是调用父类的方法). override是重写父类的虚方法,当用子类构造方法构造 ...

  3. URL与URI的区别和联系

    转自:https://www.cnblogs.com/chengdabelief/p/6635045.html 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念. URI = Uni ...

  4. selenium_unittest框架,TestCase引用

    新手,纯属个人理解,有问题可以给出建议奥~谢谢. 如以下代码,每一个test的类都是一个测试方法而测试方法必须由test_xxx开头命名,非test开头可能会执行不到,执行顺序如test1,test2 ...

  5. diff 命令详解

    [自注:] 1,还有个colordiff命令,用颜色标识不同的地方.需要先安装 2,diff normal模式中 2,5表示从第二行到第五行 3,diff -c 模式中,2,5表示从第二行到第五行 4 ...

  6. Pycharm的激活码,亲测可用(20181223)

    K03CHKJCFT-eyJsaWNlbnNlSWQiOiJLMDNDSEtKQ0ZUIiwibGljZW5zZWVOYW1lIjoibnNzIDEwMDEiLCJhc3NpZ25lZU5hbWUiO ...

  7. 分享Pos函数(比FastPos还要快)

    ): Integer; ): Integer; 主要用途是搜索字符串中第n个Substr. 经过测试,这2个函数的速度比直接用Pos+Copy快好几倍(如果字符串够长,可能10几倍) 比Pos+Del ...

  8. 【WPF】【UWP】借鉴 asp.net core 管道处理模型打造图片缓存控件 ImageEx

    在 Web 开发中,img 标签用来呈现图片,而且一般来说,浏览器是会对这些图片进行缓存的. 比如访问百度,我们可以发现,图片.脚本这种都是从缓存(内存缓存/磁盘缓存)中加载的,而不是再去访问一次百度 ...

  9. ES6教程-字符串,函数的参数,了解函数的arguments对象,js面向对象,设计模式-单例模式,解构赋值

    前言 主要讲解了ES6对字符串的拓展,包括includes,startsWith和endsWith,另外增加了字符串模板. Start includes()是否包含 startsWith()以什么开头 ...

  10. 【Spark调优】:结合业务场景,优选高性能算子

    聚合操作使用reduceByKey/aggregateByKey替代groupByKey 参见我的这篇博客说明 [Spark调优]:如果实在要shuffle,使用map侧预聚合的算子 内存充足前提下使 ...