计算机网络:VLAN与VLAN间路由
VLAN
VLAN 可让网络管理员建立多组逻辑上联网的设备,即使这些设备与其它 VLAN 共享相同的基础架构,它们也能像在独立的网络中一样运作。
- VLAN 是一个逻辑上独立的 IP 子网。
- VLAN不管实际上的物理位置
- VLAN隔离了广播域
- 通过交换机
优点
- 安全
- 成本降低
- 广播风暴防范 - 将网络划分为多个 VLAN 可减少参与广播风暴的设备数量。在“配置交换机”一章我们讨论过,LAN 划分可以防止广播风暴波及整个网络。如图所示,我们可以看到,虽然该网络中有六台计算机,但是只有三个广播域:Faculty、Student 和 Guest。
- 提高 IT 员工效率 - VLAN 为管理网络带来了方便,因为有相似网络需求的用户将共享同一个 VLAN。当您为特定 VLAN 设置新的交换机时,之前为该 VLAN 配置的所有策略和规程均会在指定新交换机端口后应用到端口上。另外,通过为 VLAN 设置一个适当的名称,IT 员工很容易就知道该 VLAN 的功能。在右图中,为了便于识别,我们将 VLAN 20 命名为 Student,将 VLAN 10 命名为 Faculty,将 VLAN 30 命名为 Guest。
- 简化项目管理或应用管理
特征
VLAN中继
中继是两台网络设备之间的点对点链路,负责传输多个 VLAN 的流量。
VLAN 中继不属于具体某个 VLAN,而是作为 VLAN 在交换机或路由器之间的管道。
标记
交换机属于第 2 层设备。它只根据以太网帧头信息来转发数据包。帧头本身并不包含到底太网帧应该属于哪个 VLAN 的相关信息。因此,当以太网帧进入中继后,以太网帧需要额外的信息来标识自己属于哪个 VLAN。
VLAN 标记字段详细信息
VLAN 标记字段包含一个 EtherType(以太类型)字段、一个标记控制信息字段和 FCS 字段。
EtherType 字段
此字段设置为十六进制值 0x8100。此值也称为标记协议 ID (TPID) 值。通过将 EtherType 字段设置为 TPID 值,收到帧的交换机便知道去查找标记控制信息字段中的信息。
标记控制信息字段
标记控制信息字段包含:
3 位的用户优先级 - 用于 802.1p 标准,此标准指出如何加速第 2 层帧的传输。对 IEEE 802.1p 的说明已超出本课程的范围,但是在前面的语音 VLAN 的讨论过程中我们稍微了解了这个标准。
1 位的规范格式标识符 (CFI) - 使令牌环帧轻松地通过以太网链路传送。
12 位的 VLAN ID (VID) - VLAN 标识号,最多支持 4096 个 VLAN ID。
FCS 字段
交换机插入 EtherType 字段和标记控制信息字段后,它会重新计算 FCS 值并将结果插入帧中。
VLAN通信
通过交换机和路由器控制广播域
VLAN 内通信
如图所示,PC1 要与另一台设备 PC4 通信。PC1 和 PC4 二者均位于 VLAN 10。在同一个 VLAN 中与某台设备通信称为 VLAN 内通信。下面说明如何完成这一过程:
步骤 1. VLAN 10 中的 PC1 将自己的 ARP 请求帧发送给交换机 S2(广播)。交换机 S2 和 S1 将该 ARP 请求帧从 VLAN 10 上的所有端口发送出去。然后交换机 S3 将该 ARP 请求从端口 F0/11 发送给 VLAN 10 中的 PC4。
步骤 2. 网络中的交换机将 ARP 应答帧从所有配置为属于 VLAN 10 的端口转发出去(单播)。PC1 会收到应答帧,该帧包含 PC4 的 MAC 地址。
步骤 3. PC1 现在有了 PC4 的目的 MAC 地址,然后据此创建以 PC4 的 MAC 地址作为目的地址的单播帧。交换机 S2、S1 和 S3 会将该帧传送给 PC4。
单击“VLAN 间通信”按钮,并单击“播放”图标开始动画演示。
VLAN 间通信
如图所示,VLAN 10 中的 PC1 要与 VLAN 20 中的 PC5 通信。与另一个 VLAN 中的设备通信称为 VLAN 间通信。
注:交换机 S1 与路由器之间有两条连接:一条用于将 VLAN 10 上的流量传输到达路由器接口,另一条用于传输 VLAN 20 的流量传输到路由器接口。
下面说明如何完成这一过程:
步骤 1. VLAN 10 中的 PC1 要与 VLAN 20 中的 PC5 通信。PC1 发送一个 ARP 请求帧,请求默认网关 R1 的 MAC 地址。
步骤 2. 路由器 R1 从配置于 VLAN 10 的接口上发出 ARP 应答帧。
所有交换机都会转发 ARP 应答帧,然后 PC1 收到该帧。ARP 应答中包含默认网关的 MAC 地址。
步骤 3. PC1 随后创建一个包含默认网关 MAC 地址的以太网帧。该帧会从交换机 S2 发送到 S1。
步骤 4. 路由器 R1 往 VLAN 20 上发送 ARP 请求帧,以此确定 PC5 的 MAC 地址。交换机 S1、S2、S3 将 ARP 请求帧从配置为支持 VLAN 20 的端口上转发出去。VLAN 20 上的 PC5 收到来自路由器 R1 的 ARP 请求帧。
步骤 5. VLAN 20 中的 PC5 将一个 ARP 应答帧发送给交换机 S3。交换机 S3 和 S1 根据路由器 R1 接口 F0/2 的目的 MAC 地址将 ARP 应答帧转发给路由器 R1。
步骤 6. 路由器 R1 将来自 PC1 的帧通过 S1 和 S3 发送至 VLAN 20 上的 PC5。
通过 VLAN 和第 3 层转发来控制广播域
SVI
SVI 是针对特定 VLAN 配置的逻辑接口。如果您想要在 VLAN 之间路由或想使 IP 主机连接至交换机,则需要配置 SVI。默认情况下会为默认 VLAN (VLAN 1) 创建一个 SVI,以方便远程管理交换机。
单击图中的“第 3 层转发示例”按钮观看动画,观看第 3 层交换机如何控制广播域的简化演示。
第 3 层转发
第 3 层交换机能够在 VLAN 之间路由数据传输。其过程类似于使用单独路由器的 VLAN 间通信,只不过是由 SVI 充当路由器接口来路由 VLAN 之间的数据。图中的动画演示了这一过程。
在动画中,PC1 要与 PC5 通信。下面是通过第 3 层交换机 S1 进行通信的简要步骤:
步骤 1. PC1 往 VLAN 10 上发送 ARP 请求广播。S2 将此 ARP 请求从所有配置为支持 VLAN 10 的端口上转发出去。
步骤 2. 交换机 S1 将 ARP 请求从配置为支持 VLAN 10 的所有端口(包括 VLAN 10 SVI)转发出去。交换机 S3 将此 ARP 请求从所有配置为支持 VLAN 10 的端口上转发出去。
步骤 3. 交换机 S1 中的 VLAN 10 SVI 知道 VLAN 20 的位置。该 SVI 会向 PC1 发回一个包含此位置信息的 ARP 应答。
步骤 4. PC1 以单播帧形式发送数据(目的地为 PC5),此数据通过交换机 S2 到达交换机 S1 中的 VLAN 10 SVI。
步骤 5. 用于 VLAN 20 的 SVI 从所有配置为支持 VLAN 20 的交换机端口上发送 ARP 请求广播。交换机 S3 将此 ARP 请求广播从所有配置为支持 VLAN 20 的交换机端口上发送出去。
步骤 6. VLAN 20 中的 PC5 发送一个 ARP 应答。交换机 S3 将此 ARP 应答发送给 S1。交换机 S1 再将此 ARP 应答转发给用于 VLAN 20 的 SVI。
步骤 7. 根据步骤 6 中获得的 ARP 应答中的目的地址,用于 VLAN 20 的 SVI 会将从 PC1 收到的数据以单播帧的形式发送给 PC5。
配置
检验
配置VLAN
配置交换机端口
配置中继
检验
删除/管理
VLAN间路由
我们将 VLAN 间路由定义为使用路由器从一个 VLAN 向另一个 VLAN 转发网络流量的过程。
单臂路由
“单臂路由器”是通过单个物理接口在网络中的多个 VLAN 之间发送流量的路由器配置。如图所示,路由器与交换机 S1 通过单一的物理网络连接相连。
路由器接口被配置为中继链路,并以中继模式连接到交换机端口。通过接收中继接口上来自相邻交换机的 VLAN 标记流量,以及通过子接口在 VLAN 之间进行内部路由,路由器便可实现 VLAN 间路由。随后,路由器会将发往目的 VLAN 的 VLAN 标记流量从同一物理接口转发出去。
子接口配置
三层交换机
- VLAN10 中的 PC1 通过交换机 S1 上为各 VLAN 配置的 VLAN 接口,与 VLAN30 中的 PC3 通信。
- PC1 将它的单播流量发送到交换机 S2。
- 交换机 S2 将该单播流量标记为来源于 VLAN10,并将其从中继链路转发到交换机 S1。
- 交换机 S1 将 VLAN 标记删除后,将该单播流量转发到 VLAN10 接口。
- 交换机 S1 将单播流量发送到它的 VLAN30 接口。
- 交换机 S1 重新将单播流量标记为 VLAN30,并从中继链路转发回交换机 S2。
- 交换机 S2 将单播帧的 VLAN 标记删除后,将该帧转发到端口 F0/6 上的 PC3。