华为基于策略划分VLAN的配置方法及示例

 学过思科交换机的朋友,可能对基于策略划分VLAN的配置方法印象非常深,感觉确实比较复杂,先要配置VMPS以及VMPS数据库,但在华为交换机中,这种现象得到了彻底改变,因为它有了一种特殊的端口类型——Hybrid。说它特殊是因为Hybrid端口既可以像Access类型端口那样在发送数据时不带VLAN标签,又可以像Trunk类型端口那样在发送数据时带上VLAN标签,且同时允许多个VLAN的帧通过。这就为华为在许多方面的配置优化打下了基础,此处介绍的基于策略划分VLAN就是其中一个。通过下面的学习,你一定会明显感觉到“很简单”。

6.6  基于策略划分VLAN

      基于策略划分VLAN也可称为Policy VLAN,是根据一定的策略来进行VLAN划分,可实现用户终端的即插即用功能,同时可为终端用户提供安全的数据隔离。这里的策略主要包括“基于MAC地址+IP地址”组合策略和“基于MAC地址+IP地址+端口”组合策略两种。

6.6.1 配置基于策略划分VLAN

      基于策略划分VLAN是指在交换机上绑定终端的MAC地址、IP地址或交换机端口,并与VLAN关联,以实证现只有符合条件的终端才能加入指定VLAN。符合策略的终端才可以加入到指定的VLAN,相当于采用了IP地址与MAC地址双重绑定,甚至再加上与所连接的交换机端口的三重绑定,一旦配置就可以禁止用户修改IP地址或MAC地址,甚至禁止改变所连接的交换机端口,否则会导致终端从指定VLAN中退出,可能访问不了指定的网络资源。

      与前面介绍的基于MAC地址、基于IP子网、基于协议划分的VLAN一样,基于策略划分的VLAN也只处理Untagged数据帧(所以也只能在Hybrid端口上进行配置),对于Tagged数据帧处理方式和基于端口划分的VLAN一样。当设备端口接收到Untagged数据帧时,设备根据用户数据帧中的“源MAC地址”和“源IP地址”字段值与交换机上配置的“MAC地址和IP地址”,或者“MAC地址和IP地址+交换机端口”组合策略来确定数据帧所属的VLAN,然后将数据帧自动划分到指定VLAN中传输。

1. 基本配置思路

基于策略划分VLAN的基本配置思路比较简单,具体如下:

1)创建各策略所需关联的VLAN

2)在以上创建的VLAN视图下关联不同的策略,建立特定策略与VLAN的映射表,以确定哪些用户可划分到以上创建的VLAN中。

3)配置各用户连接的交换机二层以太网端口类型为Hybrid,并允许前面创建的基于策略划分的VLAN以不带VLAN标签方式通过当前端口。因为华为交换机的所有二层以太网端口缺省都是Hybrid类型,所以缺省情况下,端口类型是不用配置的。

2. 配置步骤

基于策略划分VLAN的具体配置步骤如表6-7所示。

表6-7   基于策略划分VLAN的配置步骤

配置任务

步骤

命令

说明

创建并进入VLAN视图

1

system-view

例如:<Quidway> system-view

进入系统视图

2

vlan vlan-id

例如:[Quidway] vlan 2

创建VLAN并进入VLAN视图。如果VLAN已经创建,则直接进入VLAN视图。其它说明参见表6-3的第2

配置策略与VLAN映射表项

3

policy-vlan mac-address mac-address ip ip-address interface interface-type interface-number ] [ priority priority ]

例如:[Quidway-vlan2] policy-vlan mac-address 1-1-1 ip 10.10.10.1 priority 7

 

将以上创建的VLAN与特定的策略进行关联。命令中的参数说明如下:

l   mac-address mac-address指定策略VLAN依据的源MAC地址,格式为H-H-H。其中H4位的十六进制数,可以输入1~4位,如00e0fc01。当输入不足4位时,表示前面的几位为0,如:输入e0,等同于00e0MAC地址不可设置为0000-0000-0000FFFF-FFFF-FFFF和组播地址

l   ip ip-address指定策略VLAN依据的源IP地址,格式为点分十进制格式

l   interface interface-type interface-number:可选参数,指定应用MAC地址和IP地址组合策略的交换机端口(注意:可以是Eth-Trunk)。如果指定该参数,MAC地址和IP地址组合策略只应用到指定VLAN中指定的端口上,否则MAC地址和IP地址组合策略将应用到指定VLAN中所有的端口上

l   priority priority:可选参数,指定以上策略所对应的VLAN802.1p优先级,取值范围为0~7的整数,值越大优先级越高。缺省值是0

缺省情况下,没有配置基于策略划分VLAN,可用undo policy-vlan { all | mac-address mac-address ip ip-address [interface interface-type interface-number ] }命令删除基于策略划分的指定VLAN。二选一选项all用来指定删除所有基于策略划分的VLAN如果要删除被设置为策略VLANVLAN,需要先执行以上undo policy-vlan命令删除Policy VLAN后,才能够删除该VLAN

如果有多个策略与VLAN映射表项,则重复第3步。但要注意,如果映射的VLAN不一样,则一定要在对应的VLAN视图下配置映射

4

quit

例如:[Quidway-vlan2]

退去VLAN视图,返回系统视图

配置Hybrid端口属性并允许对应的策略VLAN通过

5

interface interface-type interface-number

例如:[Quidway] interface gigabitethernet 0/0/1

键入要采用基于策略划分VLAN的交换机端口的接口类型和接口编号(注意:可以是Eth-Trunk)。接口类型和接口编号之间可以输入空格也可以不输入空格

6

port link-type  hybrid

例如:[Quidway-GigabitEthernet0/0/1]port link-type hybrid

配置以上二层以太网端口类型为Hybrid类型。其它说明参见表6-4的第6

7

port hybrid Untagged vlan { { vlan-id1 [ to vlan-id2 ] } &<1-10> | all }

例如:[Quidway-GigabitEthernet0/0/1]port hybrid Untagged vlan  2 to 10

配置以上Hybrid类型端口以Untagged方式加入指定的VLAN中,即指定这些VLAN帧将以Untagged方式(去掉帧中原来的VLAN标签)通过接口向外(即向对端设备发送,不是向本地交换机内部发送)发送出去。其它说明参见表6-3的第5

对其它需要采用基于策略划分VLANHybrid端口重复以上第5~7

       【示例】配置基于组合策略,把MAC地址为0–1–1IP地址为1.1.1.1的主机划分到VLAN 2中,并配置该VLAN802.1p优先级是7

<Quidway> system-view

[Quidway] vlan 2

[Quidway-vlan2] policy-vlan mac-address 0-1-1 ip 1.1.1.1 priority 7

6.6.2 基于策略划分VLAN的配置示例

     本示例拓扑结构如图6-11所示。现要把User1(MAC地址为1-1-1,IP地址为1.1.1.1)绑定在SwitchA的GE1/0/1端口上,把User2(MAC地址为2-2-2,IP地址为2.2.2.2)绑定在SwitchB的GE1/0/1端口上,并把它们划分到VLAN 2中;把User3(MAC地址为3-3-3,IP地址为3.3.3.3)绑定在SwitchA的GE1/0/2端口上,把User4(MAC地址为4-4-4,IP地址为4.4.4.4)绑定在SwitchB的GE1/0/2端口上,并把它们划分到VLAN 3中。

 

 

图6-11  基于策略划分VLAN配置示例拓扑结构

1.    配置思路分析

   基于策略划分VLAN的配置很简单,参照6.6.1节介绍的具体配置步骤可以得出本示例的以下三方面的基本配置任务:

1)创建所需的策略VLAN

2)在对应的VLAN视图下配置基于用户计算机的MAC地址、IP地址的组合策略和应用策略的交换机端口;

3)配置应用组合策略的Hybrid类型交换机端口允许所加入的VLAN通过。

2. 配置步骤

通过以上配置思路分析后,下面的具体配置就比较简单了。

SwitchA上的配置:

(1)创建所需的策略协议VLAN 2和VLAN 3。

<Quidway> system-view

<Quidway>sysname SwitchA

[SwitchA] vlan batch 2 3

(2)配置MAC地址、IP地址和交换机端口组合策略与以上策略VLAN的关联,并为两个协议VLAN设置不同的802.1q的优先级值。

[SwitchA] vlan 2

[SwitchA –vlan2] policy-vlan mac-address 1-1-1 ip 1.1.1.1 gigabitEthernet1/0/1 priority 7

[SwitchA –vlan2] quit

[SwitchA] vlan 3

[SwitchA -vlan20] policy-vlan mac-address 3-3-3 ip 3.3.3.3 gigabitEthernet1/0/2 priority 5

[SwitchA-vlan20] quit

3)配置交换机端口类型并允许对应的策略VLAN通过。

[SwitchA] interface gigabitethernet 1/0/1

[SwitchA -GigabitEthernet1/0/1] port link-type hybrid

[SwitchA -GigabitEthernet1/0/1] port hybrid Untagged vlan 2

[SwitchA -GigabitEthernet1/0/1] quit

[SwitchA] interface gigabitethernet 1/0/2

[SwitchA -GigabitEthernet1/0/2] port link-type trunk

[SwitchA -GigabitEthernet1/0/2] port trunk allow-pass vlan 3

[SwitchA -GigabitEthernet1/0/2] quit

SwitchB上的配置:

SwitchB上的配置与SwitchA上的配置基本类似,具体如下:

<Quidway> system-view

<Quidway>sysname SwitchB

[SwitchB] vlan batch 2 3

[SwitchB] vlan 2

[SwitchB –vlan2] policy-vlan mac-address 2-2-2 ip 2.2.2.2 gigabitEthernet1/0/1 priority 7

[SwitchB –vlan2] quit

[SwitchB] vlan 3

[SwitchB -vlan20] policy-vlan mac-address 4-4-4 ip 4.4.4.4 gigabitEthernet1/0/2 priority 5

[SwitchB-vlan20] quit

[SwitchB] interface gigabitethernet 1/0/1

[SwitchB -GigabitEthernet1/0/1] port link-type hybrid

[SwitchB -GigabitEthernet1/0/1] port hybrid Untagged vlan 2

[SwitchB -GigabitEthernet1/0/1] quit

[SwitchB] interface gigabitethernet 1/0/2

[SwitchB -GigabitEthernet1/0/2] port link-type trunk

[SwitchB -GigabitEthernet1/0/2] port trunk allow-pass vlan 3

[SwitchB -GigabitEthernet1/0/2] quit

     通过以上配置MAC地址为1-1-1,IP地址为1.1.1.1的用户被自动划分到VLAN 2中,并且只能接在SwitchA上的GE1/0/1端口上;MAC地址为2-2-2,IP地址为2.2.2.2的用户也被自动划分到VLAN 2中,并且只能接在SwitchB上的GE1/0/1端口上,否则将退出VLAN 2。而MAC地址为3-3-3,IP地址为3.3.3.3的用户被自动划分到VLAN 3中,并且只能接在SwitchA上的GE1/0/2端口上;MAC地址为4-4-4,IP地址为4.4.4.4的用户也被自动划分到VLAN 3中,并且只能接在SwitchB上的GE1/0/2端口上,否则将退出VLAN 3。

转载于:https://www.cnblogs.com/xujie2013/p/3470659.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432944.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

django 学习 (三) 模板变量

将views.py中的变量传递给html模板来显示&#xff0c;变量是以字典的形式传递给html模板文件显示的。 模板文件里以字典的{{健名}}来得到健值。 可传递的变量有以下几种形式 1. 基本变量 return render_to_response(index.html, {title:title-django, user:user-django}) 2. 字…

我的世界java刷怪数量_Minecraft我的世界Java版18w16a更新发布

Minecraft我的世界Java版18w16a更新发布&#xff01;Minecraft 1.13 仍未发布&#xff0c;18w16a为其第32个预览版。目前新版本已经基本完成了所有特性&#xff0c;现在更专注于漏洞修复和细节打磨了&#xff01;MINECRAFT SNAPSHOT 18W16AA Minecraft Java Edition snapshotJa…

IOS web app一些实用的属性设置

IOS对safari私有的属性很多&#xff0c;虽然很多不为人知但是却很实用。掌握好这些属性对web app和混合app的开发会很有帮助。 1.format-detection[telephoneno] 是否自动把电话号码转为链接 1<meta name"format-detection" content"telephoneno">IO…

django 学习 (四) 模板标签

模板标签实现html文件中的控制语句&#xff0c;模板标签语句用{% %}形式编写 假如在views.py文件中定义以下内容并传递给模板 my_dic {name:zhang, age:32, sex:male} my_list [aaa,bbb] return render_to_response(index.html, {list:my_list, dic:my_dic}) 下面为模板文…

java构建内存池队列_内存池完整实现代码及一些思考

为了提高效率和有效的监控内存的实时状态&#xff0c;我们采取了内存池的思想来解决效率与对内存实现监控的问题。网上查找到了一些方案&#xff0c;根据自己的理解实现了应用。我们什么时候要调用到内存池&#xff0c;1&#xff0c;当我们频繁的申请释放同样数据大小的内存空间…

Hibernate 第一个体验程序

首先要导入包&#xff0c;将下载的hibernate所有required包导入&#xff0c;将下载的hibernate用来写log的slf4j的api和nopjar包导入&#xff0c;将下载的mysql链接引擎jar包导入。 然后新建java工程。 先告诉hiernate怎么连数据库&#xff1a;在hibernate默认识别目录src根目录…

Django框架里的MVC思想

让我们来研究一个简单的例子&#xff0c;通过该实例&#xff0c;你可以分辨出&#xff0c;通过Web框架来实现的功能与之前的方式有何不同。 下面就是通过使用Django来完成以上功能的例子&#xff1a; 首先&#xff0c;我们分成4个Python的文件&#xff0c;(models.py , views.p…

小米功能机支持java吗_小米竟然卖功能机了!2.8吋/15天超长待机

【手机中国 新闻】众多周知&#xff0c;小米是从智能手机起家的&#xff0c;对于功能机从未涉足。但自从有了强大的小米生态链&#xff0c;制造各种科技产品那都不是事儿了。8月2日上午10点&#xff0c;小米有品众筹频道上线了一款功能手机——QIN多亲AI电话&#xff0c;仅售19…

Linux内核Crash分析

http://blog.chinaunix.net/uid-20788636-id-4377271.html 在工作中经常会遇到一些内核crash的情况&#xff0c;本文就是根据内核出现crash后的打印信息&#xff0c;对其进行了分析&#xff0c;使用的内核版本为&#xff1a;Linux2.6.32。 每一个进程的生命周期内&#xff0c…

java用beaninfo_JavaBeanInfo 和 Spring 之间的关系

Java Beans在这一章章节中笔者将和各位一起探讨关于 Java Beans 相关的内容。本章主要围绕 java.beans 这个包路径下的代码进行一些说明。在 Spring 中我们可以看到 BeanInfoFactory 该接口可以用来获取 Class 对应的 BeanInfo 对象&#xff0c;在 CachedIntrospectionResults …

用键盘实现上下选择

<html> <head> <title>键盘方向键控制表格</title> </head> <body onKeyDown"keyCheck();"> <table width"80" bgcolor"#FFFFFF" height"60" border"1" bordercolor"#FFFFFF&q…

selenium ruby和java_Selenium 2之Ruby版——安装篇

自从知道了Selenium的存在后&#xff0c;就一直都想&#xff0c;若要学习自动化&#xff0c;就要学习像Selenium这种比较有潜力的。Selenium有针对各种语言(java, C#, Python, Ruby, Perl)的版本&#xff0c;在此选择Ruby为学习方向&#xff0c;一来可以借此学习下Ruby&#xf…

基于visual Studio2013解决面试题之0702输出数字

&#xfeff;&#xfeff;&#xfeff;题目解决代码及点评/*输入数字 n&#xff0c;按顺序输出从 1 最大的 n 位 10 进制数。比如输入 3&#xff0c;则输出 1、2、3一直到最大的 3 位数即 999。 */#include <iostream> using namespace std;//在不考虑大数的情况下&#…

冠榕智能灯光控制协议分析(controller-node)

1. 在Z-WAVE PC Controller软件选择已配对的智能开关。 从上图中可以看到&#xff0c;我们的智能开关的node id是11&#xff0c;即0x0B。 2. 向智能开关发送灯光的开闭数据。 CommandClasses选择COMMAND_CLASS_BASIC CommandName选择BASIC_SET Value为00时关闭灯光&#xff0…

java中手动装入新类到类装饰器_关于java:抽象装饰器类中的功能而不是装饰器...

我目前正在阅读《Head First Design Patterns》一书&#xff0c;在"Decorator"一章中有以下示例&#xff1a;在书中&#xff0c;conditionmentDecorator类被描述为一个abstract decorator。下面是代码示例&#xff1a;public abstract class CondimentDecorator exte…

跨浏览器开发工作小结

本篇小结是在2011年时候总结的&#xff0c;当时做一个产品的跨浏览器兼容工作&#xff0c;由于产品开发的时间比较早&#xff0c;最开始只能在IE下面(IE 8、IE 9还有点点问题)使用&#xff0c;做跨浏览器兼容工作的时候&#xff0c;主要是适配IE 6--IE 9、Safari、FireFox、Chr…

冠榕智能灯光控制协议分析(node-controller)

1. 在Z-WAVE PC Controller软件选择已配对的智能开关。 从上图中可以看到&#xff0c;我们的智能开关的node id是11&#xff0c;即0x0B。 2. 按下智能开关&#xff0c;用串口工具可以看到以下信息。 01 0D 00 04 00 0B 07 60 0D 01 01 00 03 FF 6B 01 0D 00 04 00 0B 07 60…

Makefile 的 遗漏分隔符错误信息

Makefile的编写中不可以有空格&#xff0c;留白必须按tab键形成的。 去掉空格&#xff0c;改为tab键后&#xff0c;再执行make命令&#xff0c;就会成功。 学习Makefile可以参考一下链接&#xff1a; http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/ 转载于:htt…

冠榕智能灯光控制协议分析(controller-node) 2

z-wave第一篇&#xff0c;我们用COMMAND_CLASS_BASIC - BASIC_SET控制智能开关。但是智能开关上有两个执行器&#xff0c;我们只能控制其中一路&#xff0c;那么我们如何控制另一路的开关的。在z-wave第二篇&#xff0c;我们分析了智能开关两个按键发送的消息&#xff0c;发现&…

java修改pdf内容流_java – 在PDFBox中,如何更改PDRectangle对象的原点(0,0)?

你可以稍微改变坐标系,但最有可能的事情不会变得更加优雅.首先……首先让我们澄清一些误解&#xff1a;你假设In PDFBox, PDRectangle objects’ default origin (0,0) seems to be the lower-left corner of a page.对于所有情况都不是这样,仅仅是经常.包含显示的页面区域(在纸…