版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。[url]http://intelboy.blog.51cto.com/22786/15131[/url]
最近经常碰到有人问起Cisco交换机上如何实现VLAN之间的访问控制,一般我都会告诉对方,在三层交换机上直接把ACL应用到相应VLAN的虚端口就OK了,其实我自己也没有机会去真正实践过。眼下正巧有个项目涉及到这方面的需求,于是对如何实现VLAN之间的访问控制仔细研究了一番,这才发现VLAN访问控制列表(VACL)和VLAN之间的访问控制列表其实在实现方式上是有很大不同的,虽然从字面上看两者差不多。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
我们常说的VLAN之间的访问控制,它的实现方式是将ACL直接应用到VLAN的虚端口上,与应用到物理端口的ACL实现方式是一样的。而VLAN访问控制(VACL),也称为VLAN访问映射表,它的实现方式与前者完全不同。它应用于VLAN中的所有通信流,支持基于ETHERTYPE和MAC地址的过滤,可以防止未经授权的数据流进入VLAN。目前支持的VACL操作有三种:转发(forward),丢弃(drop),重定向(redirect)。
VACL很少用到,在配置时要注意以下几点:
1)       最后一条隐藏规则是deny ip any any,与ACL相同。
2)       VACL没有inbound和outbound之分,区别于ACL。
3)       若ACL列表中是permit,而VACL中为drop,则数据流执行drop。
4)       VACL规则应用在NAT之前。
5)       一个VACL可以用于多个VLAN中;但一个VLAN只能与一个VACL关联。
6)       VACL只有在VLAN的端口被激活后才会启用,否则状态为inactive。
下面,我以Cisco3550交换机作为实例来详细描述一下两者之间不同的实现方式。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
网络拓扑图
网络基本情况是划分了三个vlan:vlan10、vlan20和vlan30,vlan虚端口的IP地址分别为192.168.10.1/24、192.168.20.1/24和192.168.30.1/24。
访问控制要求:vlan10和vlan20之间不能访问,但都能访问vlan30。
(一)     通过VLAN之间ACL方式实现
******** 配置VLAN ********
Switch(config)# vlan 10  // 创建vlan 10
Switch(config-vlan)# vlan 20
Switch(config-vlan)# vlan 30
Switch(config-vlan)# int vlan 10
Switch(config-if)# ip address 192.168.10.1 255.255.255.0 // 配置vlan10虚端口IP
Switch(config-if)# int vlan 20
Switch(config-if)# ip address 192.168.20.1 255.255.255.0
Switch(config-if)# int vlan 30
Switch(config-if)# ip address 192.168.30.1 255.255.255.0
******** 配置ACL ********
Switch(config)# access-list 101 permit ip 192.168.10.0 <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />0.0.0.255 192.168.30.0 0.0.0.255
Switch(config)# access-list 102 permit ip 192.168.20.0 0.0.0.255 192.168.30.0 0.0.0.255
******** 应用ACL至VLAN端口 ********
Switch(config)# int vlan 10
Switch(config-if)# ip access-group 101 in 
Switch(config)# int vlan 20
Switch(config-if)# ip access-group 102 in
******** 完毕 ********
(二)     通过VACL方式实现
******** 配置VLAN ********
(同上)
******** 配置ACL ********
Switch(config)# access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255
Switch(config)# access-list 101 permit ip 192.168.30.0 0.0.0.255 192.168.10.0 0.0.0.255
(不同之处:因为VACL对数据流没有inboundoutbound之分,所以要把允许通过某vlanIP数据流都permit才行。VLAN10允许与VLAN30通讯,而数据流又是双向的,所以要在ACL中增加VLAN30的网段)
Switch(config)# access-list 102 permit ip 192.168.20.0 0.0.0.255 192.168.30.0 0.0.0.255
Switch(config)# access-list 102 permit ip 192.168.30.0 0.0.0.255 192.168.20.0 0.0.0.255
******** 配置VACL ********
第一步:配置vlan access map
Switch(config)# vlan access-map test1  //定义一个vlan access map,取名为test1
Switch(config-vlan-access)# match ip address 101 // 设置匹配规则为acl 101
Switch(config-vlan-access)# action forward // 匹配后,设置数据流转发(forward)
Switch(config)# vlan access-map test2  //定义一个vlan access map,取名为test2
Switch(config-vlan-access)# match ip address 102 // 设置匹配规则为acl 102
Switch(config-vlan-access)# action forward // 匹配后,设置数据流转发(forward)
第二步:应用VACL
Switch(config)# vlan filter test1 vlan-list 10 //将上面配置的test1应用到vlan10中
Switch(config)# vlan filter test2 vlan-list 20 //将上面配置的test1应用到vlan20中
******** 完毕 ********
以上就是关于VLAN之间ACL和VACL的简单配置实例。我个人认为一般情况下,通过VLAN之间ACL实现访问控制比较方便,但是当VLAN的端口比较分散时,采用VACL相对而言就要简单很多。不过使用VACL的前提是交换机支持此功能,目前可能只有Cisco 3550、4500和6500系列的交换机支持。

转载于:https://blog.51cto.com/120829/34979

VLAN之间ACL和VACL的区别相关推荐

  1. vlan间ACL和VACL的区别

    vlan间ACL和VACL的区别 我们常说的VLAN之间的访问控制,它的实现方式是将ACL直接应用到VLAN的虚端口上,与应用到物理端口的ACL实现方式是一样的.而VLAN访问控制(VACL),也称为 ...

  2. 三层交换解决了VLAN之间的通信问题

    开关的转发过程. 开关工作于OSI参考模型的第二层,也就是数据链路层.在每一个端口成功连接时,交换机内部的CPU通过对应MAC地址和端口形成一张MAC表.开关基于MAC地址表来转发数据. 路由转发过程 ...

  3. 交换机和路由器实现不同网段划分、不同vlan之间的通信、指定组合vlan进行网络通信

    交换机和路由器实现不同网段划分.不同vlan之间的通信.指定组合vlan进行网络通信. 推荐一个画图非常好用的在线免费工具:https://www.processon.com/i/5f58a647e6 ...

  4. 华三交换机ping不通用户但用户_H3C三层交换机配置VLAN之间不能互相访问

    H3C 三层交换机配置 VLAN 之间不能互相访问 2010-11-20 13:30:54| 分类: H3C | 标签: qos  vlan  h3c 交换机 traffic | 举报 | 字号 订阅 ...

  5. linux做单臂路由实现trunk 使vlan之间通信

    如果要使vlan之间进行通信,我们通常会使用三层交换机或者路由器子接口模式来做.Linux上关于VLAN与Cisco交换机中继连接,也是可以实现其互相之间的通信的. 环境:RHEL 5.2 最小化安装 ...

  6. 个人计算机与微型计算机的区别与联系,微处理器、微型计算机和微型计算机系统之间有何联系与区别?...

    微处理器.微型计算机和微型计算机系统之间有何联系与区别? 更多相关问题 [单选] 不幸被绑架,成为人质时,怎样的表述是正确的() [单选] 身在异国他乡,外出时应() [单选] 下列对红线意识理解正确 ...

  7. vlan之间互相访问_VLAN的划分和网络的配置实例

    1.VLAN基础知识 VLAN(Virtual Local Area Network)的中文名为'虚拟局域网',注意不是'VPN'(虚拟专用网).VLAN是一种将局域网设备从逻辑上划分(注意,不是从物 ...

  8. php acl rbac,建站常用的用户权限管理模型ACL和RBAC的区别

    常用的权限管理模型ACL和RBAC的区别 1.ACL ACL是最早也是最基本的一种访问控制机制,它的原理非常简单:每一项资源,都配有一个列表,这个列表记录的就是哪些用户可以对这项资源执行CRUD中的那 ...

  9. 不同vlan之间如何ping通_【丰润达.安防百科】如何实现交换机不同VLAN、不同网段之间互访?...

    交换机如何实现不同网段的互访?这个交换机完全可以实现,在实际项目中,交换机实现不同网段的互访用的也比较多,那么今天我们一起来看下. ▎同一个vlan中,不同网段的主机如何互通 同一个vlan,不同网段 ...

最新文章

  1. 双中心单电子积分计算氢分子离子H2+的轨道能量
  2. 最受 IT 公司欢迎的 30 款开源软件
  3. GitHub上创建组织
  4. 飞机大战HTML5游戏源码,基于Canvas制作的网页版飞机大战游戏+飞机大战手机端
  5. 如何使用final阻止重载?如何使用final阻止继承?
  6. 每月读书 2012-06
  7. html选择时间区间控件,Html5添加用户选择一个日期时间范围的日期选择器插件教程...
  8. vue中使用leaflet加载地图影像并拾取坐标点
  9. Photoshop CS4 使用通道精确抠图
  10. 圆排列公式推导_【圆面积公式计算】圆形面积计算公式
  11. 三维地下管线系统(skyline)
  12. Android webview登录手机QQ
  13. STM32F4寄存器初始化系列:GPIO
  14. Android 传感器介绍
  15. Python笔记: 执行run.py文件
  16. php 的几种运行方式
  17. 用Python试了试人脸识别
  18. Linux 视频剪辑与录音
  19. 传统企业如何应对互联网挑战
  20. 解决win10笔记本电脑无法开启热点

热门文章

  1. 去云南品味彝族的砣砣肉
  2. 地...地...地震了
  3. 汇编语言 8086+8255A仿真中断控制
  4. SpringDataJpa框架单元测试实现增删改查
  5. Autodesk Motionbuilder 2016中文版
  6. Count the Colors ZOJ - 1610
  7. Python学习并发与多线程
  8. 列了一些自己会但是不怎么精通的编程语言和知识,做个记录,空余时间加强学习...
  9. Live回顾 | 松鼠AI智适应教育首席科学家崔炜:人工智能如何变革教育产业
  10. Docker之 默认桥接网络与自定义桥接网卡