文章目录
- 一、传统以太网和虚拟局域网(VLAN)。
- 1.传统以太网的问题。
- 2.虚拟局域网(VLAN)。
- 二、VLAN数据帧。
- 三、以太网二层接口及其配置。
- 1.Access接口。
- 2.Trunk接口。
- 3.Hybrid接口。
- 4.配置示例。
一、传统以太网和虚拟局域网(VLAN)。
1.传统以太网的问题。
在典型交换网络中,当某台主机发送一个广播帧或未知单播帧时,该数据帧会被泛洪,甚至传递到整个广播域。广播域越大,产生的网络安全问题、垃圾流量问题,就越严重。
如图,如果PC4向PC2发送了一个单播帧。此时SW1和SW2不存在关于PC2的MAC地址表项。那么,SW1和SW2将对该单播帧执行泛洪操作。最后的结果是,PC2虽然收到了该单播帧,但网络中的很多其他非目的主机,同样收到了不该接收的数据帧。显然,广播域越大,网络安全问题和垃圾流量问题就越严重。
2.虚拟局域网(VLAN)。
为了解决广播域带来的问题,人们引入了VLAN (Virtual Local Area Network),即虚拟局域网技术:通过在交换机上部署VLAN,可以将一个规模较大的广播域在逻辑上划分成若干个不同的、规模较小的广播域,由此可以有效地提升网络的安全性,同时减少垃圾流量,节约网络资源。
如图,将PC4和PC1划分到同一VLAN1中,其他主机划分到另外一个VLAN2中,如果PC4向PC2发送了一个单播帧。此时SW1和SW2不存在关于PC2的MAC地址表项。那么SW1和SW2将对该单播帧执行泛洪操作但是却只会泛洪到与自己VLAN ID一样的接口上,所以只有PC1会收到此数据帧,其他主机不会收到。所以划分VLAN有以下特点和好处:
(1) VLAN的特点:
- 一个VLAN就是一个广播域,所以在同一个VLAN内部,计算机可以直接进行二层通信;而不同VLAN内的计算机,无法直接进行二层通信,只能进行三层通信来传递信息,即广播报文被限制在一个VLAN内。
- VLAN的划分不受地域的限制。
(2)VLAN的好处:
- 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。
- 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
- 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
- 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
二、VLAN数据帧。
VLAN数据帧中的主要字段及其作用:
字段 | 作用 |
TPID | 长度为2字节,表示帧类型。取值为0x8100(33024)时表示802.1Q Tag帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。 |
PRI | Priority,长度为3比特,表示帧的优先级,取值范围为0~7,值越大优先级越高。用于当阻塞时,优先发送优先级高的数据包。如果设置用户优先级,但是没有VLAN ID,则VLAN ID必须设置为0x000。 |
CFI | CFI (Canonical Format Indicator),长度为1比特,表示MAC地址是否是经典格式。CFI为0说明是标准格式,CFI为1表示为非标准格式。用于区分以太网帧、FDDI(Fiber Distributed Digital Interface)帧和令牌环网帧。在以太网中,CFI的值为0。 |
VID | VLAN Identifier, 长度为12比特,表示该帧所属的VLAN。在VRP中,可配置的VLAN ID取值范围为1~4094。0和4095协议中规定为保留的VLAN ID。三种类型:Untagged帧:VID 不计,Priority-tagged帧:VID为 0x000,VLAN-tagged帧:VID范围0~4095。三个特殊的VID:0x000:设置优先级但无VID,0x001:缺省VID,0xFFF:预留VID |
三、以太网二层接口及其配置。
1.Access接口。
Access接口一般用于和不能识别Tag的用户终端(如用户主机、服务器等)相连,或者不需要区分不同VLAN成员时使用。
接口 | 接收 | 发送 |
Access接口 | 当收到Untagged帧,接收该帧,并打上该接口的PVID的Tag。当收到Tagged帧时,如果该帧的VLAN ID与该接口的PVID相同时,接收该帧;如果该帧的VLAN ID与该接口的PVID不同时,丢弃该帧。 | 当帧的VLAN ID与该接口的PVID相同时,剥离掉Tag,然后再将其从该接口发送出去;当帧的VLAN ID与该接口的PVID不同时,禁止在此接口发送。 |
2.Trunk接口。
Trunk接口一般用于连接交换机、路由器、AP以及可同时收发Tagged帧和Untagged帧的语音终端。
接口 | 接收 | 发送 |
Trunk接口 | 接口收到Untagged帧时,该帧打上PVID,当PVID在该接口允许通过的VLAN列表里时接收该帧;当PVID不在允许通过的VLAN列表里时,丢弃该帧。接口收到Tagged帧时,当该帧的VLAN ID在该接口允许通过的VLAN列表里时,接收该帧,否则丢弃该帧。 | 帧的VLAN ID与接口PVID相同时,当该帧的VLAN ID在该接口允许通过的VLAN列表中,则将该帧的Tag剥除,然后将其从该接口发送出去;如果VLAN ID不在允许通过的VLAN列表中则禁止将该帧从该接口发出。帧的VLAN ID与接口PVID不同时,当该帧的VLAN ID在该接口允许通过的VLAN列表中,则保留该帧的Tag,然后将其从该接口发送出去;如果VLAN ID不在允许通过的VLAN列表中则禁止将该帧从该接口发出。 |
3.Hybrid接口。
Hybrid接口既可以用于连接不能识别Tag的用户终端(如用户主机、服务器等),也可以用于连接交换机、路由器以及可同时收发Tagged帧和Untagged帧的语音终端、AP。华为设备默认的接口类型是Hybrid。
接口 | 接收 | 发送 |
Hybrid接口 | 接口收到Untagged帧时,该帧打上PVID,当PVID在该接口允许通过的VLAN列表里时接收该帧;当PVID不在允许通过的VLAN列表里时,丢弃该帧。接口收到Tagged帧时,当该帧的VLAN ID在该接口允许通过的VLAN列表里时,接收该帧,否则丢弃该帧。 | 帧的VLAN ID是该接口允许通过的VLAN ID时,当管理员通过命令设置发送该VLAN的帧时不携带Tag,则将该帧的Tag剥除,然后将其从该接口发送出;当管理员通过命令设置发送该VLAN的帧时携带Tag,则保留该帧的Tag,然后将其从该接口发送出去。 |
4.配置示例。
关于三种接口的配置参考以下两个实验:
(1)使用eNSP搭建以下拓扑图,PC1和PC3属于vlan 2,PC2和PC4属于vlan 3,相同vlan可以互通,不同vlan不可以。
S1的配置如下,S2类似:
[S1]vlan batch 2 3 批量创建VLAN2和VLAN3
[S1]int g0/0/1
[S1-GigabitEthernet0/0/1]port link-type access 修改接口类型为access
[S1-GigabitEthernet0/0/1]port default vlan 2 修改access的pvid
[S1-GigabitEthernet0/0/1]int g0/0/2
[S1-GigabitEthernet0/0/2]port link-type access
[S1-GigabitEthernet0/0/2]port default vlan 3
[S1-GigabitEthernet0/0/2]port link-type access
[S1-GigabitEthernet0/0/2]int g0/0/3
[S1-GigabitEthernet0/0/3]port link-type trunk 修改接口类型为Trunk
[S1-GigabitEthernet0/0/3]port trunk allow-pass vlan 2 3 放行VLAN2和VLAN3
查看S1的vlan信息:
[S1]display vlan
查看各个接口的VALN信息:
[S1]display port vlan active
(2)使用eNSP搭建以下拓扑图,PC1属于vlan 10,PC2属于vlan 20,PC3属于vlan 30,使用hybrid接口实现vlan 10和vlan 20可以与vlan 30互通,但是vlan 10和vlan 20不能互通。
S1的配置如下:
[S1]vlan batch 10 20 30
[S1]interface Ethernet 0/0/1
[S1-Ethernet0/0/1]port hybrid pvid vlan 10 //默认接口类型就是hybrid,直接修改默认vlan
[S1-Ethernet0/0/1]port hybrid untagged vlan 10 30 //放行vlan 10和30,发出时剥离tag
[S1]interface Ethernet 0/0/2
[S1-Ethernet0/0/1]port hybrid pvid vlan 20
[S1-Ethernet0/0/2]port hybrid untagged vlan 20 30 //放行vlan 20和30,发出时剥离tag
[S1]interface Ethernet 0/0/3
[S1-Ethernet0/0/3]port hybrid tagged vlan 10 20 30 //放行vlan 10、20、30
S2的配置如下:
[S2]vlan batch 10 20 30
[S2]interface Ethernet 0/0/1
[S2-Ethernet0/0/1]port hybrid pvid vlan 30
[S2-Ethernet0/0/1]port hybrid untagged vlan 10 20 30
[S2]interface Ethernet 0/0/3
[S2-Ethernet0/0/3]port hybrid tagged vlan 10 20 30
分别查看S1、S2各个接口的VALN信息: