VLAN定义:

VLAN(Virtual Local Area Network)的中文名为"虚拟局域网"。
虚拟局域网(VLAN)是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。VLAN是一种比较新的技术,工作在OSI参考模型的第2层和第3层,一个VLAN就是一个广播域,VLAN之间的通信是通过第3层的路由器来完成的。与传统的局域网技术相比较,VLAN技术更加灵活,它具有以下优点: 网络设备的移动、添加和修改的管理开销减少;可以控制广播活动;可提高网络的安全性。
在计算机网络中,一个二层网络可以被划分为多个不同的广播域,一个广播域对应了一个特定的用户组,默认情况下这些不同的广播域是相互隔离的。不同的广播域之间想要通信,需要通过一个或多个路由器。这样的一个广播域就称为VLAN。

私有VLAN,主VLAN

私用VLAN,是能够为相同VLAN内不同端口之间提供隔离的VLAN.,尽管各设备处于不同的pVLAN中,它们可以使用相同的IP子网.
pVLAN 的3种子VLAN :
primary VLAN , isolated VLAN(second vlan), community VLAN(second vlan)

每个pVLAN包含2种VLAN:主VLAN和辅助VLAN:
主VLAN:主vlan是pVLAN中的高级VLAN。主VLAN由多个辅助VLAN组成,且辅助VLAN属于主VLAN的 相同子网;
辅助VLAN:辅助VLAN是主VLAN的子代,并且映射到一个主VLAN。每台设备都连接到辅助pVLAN。

辅助VLAN包括如下两种类型:
团体vlan:如果端口属于团体VLAN,那么它就不仅能够与相同团体VLAN中的其它端口进行 通信,而且能与pVLAN混杂端口进行通信;每个pVLAN可以有多个community VLAN
隔离VLAN: 只能与混杂端口进行通信,每个pVLAN中只能有一个isolated VLAN

所需不同的模式:
1、Trunk
Trunk口上可以同时传送多个VLAN的包,一般用于交换机之间的链接。
2、Hybrid
Hybrid口上可以同时传送多个VLAN的包,一般用于交换机之间的互联或交换机和主机之间的连接。
3、Access
Access口只能属于1个VLAN,一般用于连接主机的端口。
4、Tag和Untag tag
指vlan的标签,即vlan的id,用于指名数据包属于那个vlan,untag指数据包不属于任何vlan,没有vlan标记。
5、pvid
端口vlan id号,当非标记数据包进入交换机,交换机将检查vlan设定并决定是否进行转发。一个ip包进入交换机端口的时候,如果没有带tag头,且该端口上配置了pvid,那么,该数据包就会被打上相应的tag头!如果进入的ip包已经带有tag头(vlan数据)的话,那么交换机一般不会再增加tag头。

举例:
(1) 配置Device A

创建VLAN 100,并将GigabitEthernet 1/0/1加入VLAN 100。

<DeviceA> system-view

[DeviceA] vlan 100

[DeviceA-vlan100] port gigabitethernet 1/0/1

[DeviceA-vlan100] quit

创建Vlan-interface 100,并配置其IP地址为192.168.1.1/24。

[DeviceA] interface Vlan-interface 100

[DeviceA-Vlan-interface100] ip address 192.168.1.1 24

[DeviceA-Vlan-interface100] quit

创建VLAN 200,并将GigabitEthernet 1/0/2加入VLAN 200。

[DeviceA] vlan 200

[DeviceA-vlan200] port gigabitethernet 1/0/2

[DeviceA-vlan200] quit

创建Vlan-interface 200,并配置其IP地址为192.168.2.2/24。

[DeviceA] interface Vlan-interface 200

[DeviceA-Vlan-interface200] ip address 192.168.2.2 24

[DeviceA-Vlan-interface200] quit

为了使Device A上VLAN 100和VLAN 200的报文能发送给Device B,将GigabitEthernet 1/0/3的链路类型配置为Trunk,并允许VLAN 100和VLAN 200的报文通过,取消允许VLAN 1通过。

[DeviceA] interface gigabitethernet 1/0/3

[DeviceA-GigabitEthernet1/0/3] port link-type trunk

[DeviceA-GigabitEthernet1/0/3] port trunk permit vlan 100 200

[DeviceA-GigabitEthernet1/0/3] undo port trunk permit vlan 1

[DeviceA-GigabitEthernet1/0/3] quit

(2) 配置Device B

创建VLAN 100,并将GigabitEthernet 1/0/1加入VLAN 100。

<DeviceB> system-view

[DeviceB] vlan 100

[DeviceB-vlan100] port gigabitethernet 1/0/1

[DeviceB-vlan100] quit

创建Vlan-interface 100,并配置其IP地址为192.168.1.2/24。

[DeviceB] interface Vlan-interface 100

[DeviceB-Vlan-interface100] ip address 192.168.1.2 24

[DeviceB-Vlan-interface100] quit

创建VLAN 200,并将GigabitEthernet 1/0/2加入VLAN 200。

[DeviceB] vlan 200

[DeviceB-vlan200] port gigabitethernet 1/0/2

[DeviceB-vlan200] quit

创建Vlan-interface 200,并配置其IP地址为192.168.2.1/24。

[DeviceB] interface Vlan-interface 200

[DeviceB-Vlan-interface200] ip address 192.168.2.1 24

[DeviceB-Vlan-interface200] quit

为了使Device A上VLAN 100和VLAN 200的报文能发送给Device B,将GigabitEthernet 1/0/3的链路类型配置为Trunk,并允许VLAN 100和VLAN 200的报文通过,取消允许VLAN 1通过。

[DeviceB] interface gigabitethernet 1/0/3

[DeviceB-GigabitEthernet1/0/3] port link-type trunk

[DeviceB-GigabitEthernet1/0/3] port trunk permit vlan 100 200

[DeviceB-GigabitEthernet1/0/3] undo port trunk permit vlan 1

[DeviceB-GigabitEthernet1/0/3] quit

1.2.3 验证配置
(1) 通过display vlan命令查看显示信息验证配置是否成功,以查看Device A上VLAN 100和VLAN 200的配置信息为例。

[DeviceA] display vlan 100

VLAN ID: 100

VLAN Type: static

Route Interface: configured

IP Address: 192.168.1.1

Subnet Mask: 255.255.255.0

Description: VLAN 0100

Name: VLAN 0100

Tagged Ports:

GigabitEthernet1/0/3

Untagged Ports:

GigabitEthernet1/0/1

[DeviceA] display vlan 200

VLAN ID: 200

VLAN Type: static

Route Interface: configured

IP Address: 192.168.2.2

Subnet Mask: 255.255.255.0

Description: VLAN 0200

Name: VLAN 0200

Tagged Ports:

GigabitEthernet1/0/3

Untagged Ports:

GigabitEthernet1/0/2

(2) Host A和Host C能够互相ping通。查看Host A的ARP表,表中有Host C的IP地址和MAC地址对应的ARP表项。查看Host C的ARP表,表中有Host A的IP地址和MAC地址对应的ARP表项。

(3) Host A和Host D能够互相ping通。查看Host A的ARP表,表中没有Host D的ARP表项。查看Host D的ARP表,表中也没有Host A的ARP表项。

https://blog.51cto.com/14213971/2366363