VLAN
- 一、VLAN
- 二、VLAN的实现原理
- 三、VLAN标签(VLAN Tag)
- 四、VLAN的划分方式
- 五、接门划分VLAN--接口类型
- Access接口
- Trunk接口
- 示例
- Hybrid接口
- 示例
- 六、总结
- 七、实现VLAN之间通信
- 1、使用路由器物理接口
- 2、使用路由器子接口
- 八、使用三层交换机的VLANIF接口
一、VLAN
在典型交换网络中,当某台主机发送一个广播帧或未知单播帧时,该数据顿会被泛洪,甚至传递到整个广播域。
我们知道路由器能够隔离广播域,而交换机则不行,上图交换机组建的网络外在一个广播域,但是交换机连接的PC并不在一个网段,PC1只能与同网段的P2通信,但是如上图PC1发出的数据会被发送到不相干网段的PC上这样会导致网络安全问题和垃圾流量问题,并且广播域越大问题就会越严重。
为了解决广播域带来的问题,人们引入了VLAN Virtual LocalArea Network),即虚拟局域网技术: 通过在交换机上部署VLAN,可以将一个规模较大的广播域在逻辑上划分成若干个不的、规模较小的广播域,由此可以有效地提升网络的安全性,同时减少垃圾流量,节约网络资源。
- VLAN的特点:
-
- 一个VLAN就是一个广播域,所以在同一个VLAN内部,计算机可以直接进行二层通信;而不同VLAN内的0计算机,无法直接进行二层通信,只能进行三层通信来传递信息,即广播报文被限制在一个VLAN内。
-
- VLAN的划分不受地域的限制
- VLAN的好处:
-
- 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某0固定的物理范围,网络构建和维护更方便灵活。
-
- 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
-
- 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它。VLAN内的用户直接通信
-
- 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
二、VLAN的实现原理
- Switch1与Switch2同属一个企业,该企业统一规划了网络中的VLAN。其中VLAN10用于A部门,VLAN20用于B部门。A、B部门的员工在Switch1和Switch2上都有接入。
- PC1发出的数据经过Switch1和Switch2之间的链路到达了Switch2。如果不加处理,后者无法判断该数据所属的VLAN,也不知道应该将这个数据输出到本地哪个VLAN中。
三、VLAN标签(VLAN Tag)
要使交换机能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。
IEEE 802.1Q协议规定,在以太网数据中加入4个字节的VLAN标签,又称VLAN Tag,简称Tag。
Switch1和Switch2之间的链路要承载多个VLAN的数据,需要一种基于VLAN的数据标记”手段,以便对不同VLAN的数据恢进行区分。
EEE 802.1Q标准(也被称为Dot1Q)定义了该”标记”方法。该标准对传统的以太网数据进行修改,在头中插802.1Q Tag,而在该Tag中,便可以写入VLAN信息。
四、VLAN的划分方式
VLAN的划分包括如下5种方法
基于接口划分: 根据交换机的接口来划分VLAN。
- 网络管理员预先给交换机的每个接口配置不同的PVID,当一个数据进入交换机时,如果没有带VLAN标签,该数据顿就会被打上接口指定PVID的标签,然后数据顿将在指定VLAN中传输。
- 缺省VLAN,PVID
-
- Port VLANID,是接口上的缺省VLAN。
-
- 取值:1-4094。
- 特点:
-
- 这种划分原则简单而直观,实现容易,是目前实际的网络应用中最为广泛的划分VLAN的方式。
-
- 当计算机接入交换机的端口发生了变化时,该计算机发送的帧的VLAN归属可能会发生变化。
基于MAC地址划分: 根据数据的源MAC地址来划分VLAN。
- 网络管理员预先配置MAC地址和VLAN D映射关系表,当交换机收到的是Untagged帧时,就依据该表给0数据顿添加指定VLAN的标签,然后数据顿将在指定VLAN中传输。
- 映射表
-
- 记录了MAC地址和VLANID的关联情况
- 特点:
-
- 这种划分实现稍微复杂,但灵活性得到了提高。
-
- 当计算机接入交换机的端口发生了变化时,该计算机发送的帧的VLAN归属不会发生变化 (因为计算机的MAC地址没有变)。
-
- 但这种类型的VLAN划分安全性不是很高,因为恶意计算机很容易伪造MAC地址。
- 基于IP子网划分:根据数据中的源IP地址和子网掩码来划分VLAN。
-
- 网络管理员预先配置IP地址和VLANID映射关系表,当交换机收到的是Untagged,就依据该表给数据帧添加指定VLAN的标签,然后数据顿将在指定VLAN中传输。
- 基于协议划分: 根据数据所属的协议 (族)类型及封装格式来划分VLAN。
-
- 网络管理员预先配置以太网帧中的协议域和VLAN ID的映射关系表,如果收到的是Untagged帧,就依据该表给数据顿添加指定VLAN的标签,然后数据将在指定VLAN中传输。
- 基于策略划分:根据配置的策略划分VLAN,能实现多种组合的划分方式,包括接口、MAC地址、IP地址等
-
- 网络管理员预先配置策略,如果收到的是Untagged帧,且匹配配置的策略时,给数据顿添加指定VLAN的标签,然后数据顿将在指定VLAN中传输。
五、接门划分VLAN–接口类型
- Access接口
交换机上常用来连接用户PC、服务器等终端设备的接口。Access接口所连接的这些设备的网卡往往只收发无标记帧。Access接口只能加入一个VLAN。 - Trunk接口
Trunk接口允许多个VLAN的数据通过,这些数据通过802.1Q Tag实现区分。Trunk接口常用于交换机之间的互联,也用于连接路由器、防火墙等设备的子接口。 - Hybrid接口
Hybrid接口与Trunk接口类似,也允许多个VLAN的数据通过,这些数据通过802.1Q Tag实现区分。用户可以灵活指定Hybrid接口在发送某个 (或某些)VLAN的数据顿时是否携带Tag。
Access接口
Trunk接口
示例
配置
1、创建VLAN
[Huawei] vlan vlan-id
通过此命令创建VLAN并进入VLAN视图,如果VLAN已存在,直接进入该VLAN的视图vlan-id是整数形式,取值范围是1~4094。
[Huawei] vlan batch { vlan-idl [ to vlan-id2 ]
通过此命令批量创建VLAN。其中
- batch: 指定批量创建的VLANID。
- vlan-id1:表示第一个VLAN的编号
- vlan-id2:表示最后一个VLAN的编号
2、配置接口类型
[Huawei-GigabitEthernet0/0/1] port link-type access
3、配置Access接口的缺省VLAN
[Huawei-GigabitEthernet0/0/1] port default vlan vlan-id
4、配置接口类型
[Huawei-GigabitEthernet0/0/1] port link-type trunk
5、配置Trunk接口加入指定VLAN
[Huawei-igabitEthernet0/0/1] port trunk allow-pass vlan { [ vlan-id1 [ to vlan-id2 ] }a11 }
6、(可选)配置Trunk接口的缺省VLAN
[Huawei-GigabitEthernet0/0/1] port trunk pvid vlan vlan-id
Hybrid接口
示例
配置:
1、配置接口类型
[Huawei-GigabitEthernet0/0/1] port link-type hybrid
2、配置Hybrid接口加入指定VLAN
[Huawei-GigabitEthernet0/0/1] port hybrid untagged vlan [ an-idl [ to vlan-id2 ]}all}
在接口视图下,配置Hybrid类型接口加入的VLAN,这些VLAN的顿以Untagged方式通过接口。
[Huawei-GigabitEthernet0/0/1] port hybrid tagged vlan { { vlan-id1 [ to vlan-id2 ] }all}
在接口视图下,配置Hybrid类型接口加入的VLAN,这些VLAN的顿以Tagged方式通过接口。
3、(可选)配置Hybrid接口的缺省VLAN
[Huawei-GigabitEthernet0/0/1] port hybrid pvid vlan vlan-id
在接口视图下,配置Hybrid类型接口的缺省VLAN。
六、总结
七、实现VLAN之间通信
传统交换二层组网中,默认所有网络都处于同一个广播域,这带了诸多问题。VLAN (Virtual Local AreaNetwork,虚拟局域网)技术的提出,满足了二层组网隔离广播域需求,使得属于不同VLAN的网络无法互访,但不同VLAN之间又存在着相互访问的需求。
- 实际网络部署中一般会将不同IP地址段划分到不同的VLAN。
- 同VLAN且同网段的PC之间可直接进行通信,无需借助三层转发设备,该通信方式被称为二层通信。
- VLAN之间需要通过三层通信实现互访,三层通信需借助三层设备。
1、使用路由器物理接口
- 路由器三层接口作为网关,转发本网段前往其它网段的流量。
- 路由器三层接口无法处理携带VLAN Tag的数据帧,因此交换机上联路由器的接口需配置为Access。
- 路由器的一个物理接口作为一个VLAN的网关,因此存在一个VLAN就需要占用一个路由器物理接口
- 路由器作为三层转发设备其接口数量较少,方案的可扩展性太差。
2、使用路由器子接口
- 子接口(Sub-interface) 是基于路由器以太网接口所创建的逻辑接口,以物理接口ID+子接口ID进行标识,子接口同物理接口一样可进行三层转发。
- 子接口不同于物理接口,可以终结携带VLAN Tag的数据帧。由于三层子接口不支持VLAN报文,当它收到VLAN报文时,会将VLAN报文当成是非法报文而丢弃。因此,需要在子接口上将VLAN Tag剥掉,也就是需要VLAN终结(VLAN Termination)。
- 基于一个物理接口创建多个子接口,将该物理接口对接到交换机的Trunk接口,即可实现使用一个物理接口为多个VLAN提供三层转发服务。
交换机连接路由器的接口类型配置为Trunk,根据报文的VLAN Tag不同,路由器将收到的报文交由对应的子接口处理。
- interface interface-type interface-numbersub-interface number命令用来创建子接。sub-interface number代表物理接口内的逻辑接口通道。一般情况下,为了方便记忆,子接ID与所要终结的VLAN ID相同。
- dot1g termination vid命令用来配置子接口Dot1g终结的单层VLAN ID。缺省情况,子接门没有配置dot1g终结的单层VLAN ID。arp broadcast enable命令用来使能终结子接口的ARP广播功能。缺省情况下,终结子接口没有使能ARP广播功能。终结子接口不能转发广播报文,在收到广播报文后它们直接把该报文丢弃。为了允许终结子接口能转发广播报文可以通过在子接口上执行此命令。
八、使用三层交换机的VLANIF接口
- 二层交换机(Layer 2Switch)指的是只具备二层交换功能的交换机。
- 三层交换机(Layer 3Switch)除了具备二层交换机的功能,还支持通过三层接口(如VLANIF接口)实现路由转发功能。
- VLANIF接口是一种三层的逻辑接口,支持VLANTag的剥离和添加,因此可以通过VLANIF接口实现VLAN之间的通信。
- VLANIF接口编号与所对应的VLANID相同,如VLAN10对应VLANIF10。
配置
配置需求:
两台PC分别属于VLAN 10、VLAN20。通过三层交换机完成两台PC之间的相互通信。
- interface vlanif vlan-id命令用来创建VLANIF接口并进入到VLANIF接口视图。vlan-id表与VLANIF接口相关联的VLAN编号。VLANIF接口的IP地址作为主机的网关IP地址,和主机的IP地址必须位于同一网段。