|
什么是本地 VLAN?
正如你在上一课中记得的那样,中继端口发送和接收带有 IEEE 802.1q VLAN 标签的以太网帧. 这背后的主要想法是能够通过交换机之间的单个物理链路传输来自多个 VLAN 的帧。这意味着主干的两端将始终接收标记帧,如图 1 所示。
但总是这样吗?如果途中有集线器或任何其他第 1 层设备怎么办?如果一个未标记的帧以某种方式进入中继链路会发生什么?已引入本机 VLAN 来解决此特定场景。
图 1. 通过中继线转发帧
本地 VLAN 是为每个中继端口配置的,它在本地很重要 ,它会告诉交换机 - “如果您在此端口接收到未标记的数据,请将其转发为本地 VLAN 编号的一部分”。例如,如果我们将中继上的本地 VLAN 配置为 20,如果没有 IEEE 802.1q 标头的数据进入该端口,它将在 VLAN 20 中转发。您可以在图 2 中看到一个示例。PC7 不知何故连接到中继并正在发送未标记的帧。当它们在链路的两端都被接收到时,它们被转发到 VLAN 20(Native VLAN)。
默认情况下,Cisco 交换机上所有中继端口的本地 VLAN 都分配给 VLAN 1,但它可以是任何有效的 VLAN 编号。
图 2. 图 2. 来自中继链路的未标记帧
这个概念还有另一个非常重要的角度。交换机不仅将接收到的未标记数据放入本地 VLAN,而且还在本地 VLAN 中 发送未标记数据。请看图 3 中的示例,来自 VLAN 10 的帧通过带有 802.1q 标头的中继传输,但来自 VLAN20 的帧通过未标记传输,因为 VLAN20 是中继端口的本地 VLAN。所有控制平面消息,如 CDP、VTP 和 DTP 也通过本地 VLAN 发送,即未标记。
图 3. 帧在 Native VLAN 中未标记,但在所有其他 VLAN 中均已标记
在 Trunk 端口上配置和验证 Native VLAN
可以看到默认情况下,VLAN 1 配置为 Native。让我们将其更改为另一个值。这是在接口配置模式下使用switchport trunk native vlan命令完成的。永远记住此配置在本地很重要,必须手动配置以匹配中继链路的两侧否则会出现故障状态。
接口中继配置在 本地很重要。这意味着一个交换机端口上的中继设置不必与链路另一侧的设置完全匹配。因此,您可以在单个中继链路的一侧配置本地 VLAN 10,在另一侧配置 VLAN 20。这会导致称为Native VLAN mismatch的危险错误状态。Cisco 专有协议CDP 可以检测到这种错误配置并报告错误消息,如下所示。 请注意,如果链路上禁用了 CDP,则交换机无法自动检测到这一点。
本机 VLAN 不匹配可能会导致一些重大问题和安全隐患,例如:
默认情况下,在 Cisco 交换机上,来自所有 VLAN 的帧都通过中继链路传输。但是,有一种方法可以准确指定允许携带哪些 VLAN 编号。在很多情况下,您只想指定某些 VLAN,而不是从所有 VLAN 发送帧。如果我们以图 4 为例,左边的交换机有四个 VLAN 10、20、30 和 40,而右边的交换机有 VLAN 10、20、50 和 60。所以您可能只想发送流量10 和 20 通过中继链路。这可以使用 switchport trunk allowed vlan功能进行配置。让我们将图 4 中的链路配置为仅传送来自 vlan 10 和 20 的帧。
图 4. 具有允许 VLAN 的中继链路示例
首先,让我们验证在 SW1 和 SW2 上配置了多少个虚拟 LAN。
请注意,如果我们查看 SW1 上的show interface trunk输出,则会显示 VLAN 1 - 1005 在中继上是允许的。这意味着所有的都是允许的
在 SW2 上也可以看到相同的情况。
我们只想配置 10 和 20 被允许。让我们在 SW1 和 SW2 上配置中继链路。两台交换机的配置相同,因此我们只需看一个示例。
相同的配置应用于两台交换机。现在让我们看看中继端口。
在一个组织拥有的交换机连接到另一个外部交换机的情况下,使用此功能非常常见。通常,有一个协议可以在一个 VLAN 中交换数据,因此您可能希望过滤掉所有其他 VLAN。
概括
- 入站:在中继端口上接收到的未标记帧被转发到配置为本地的 VLAN。
- Outbound:来自配置为 Native 的 VLAN 的帧以无标记方式转发。
- 诸如DTP 和 BPDU之类的控制平面消息以 未标记的方式发送出去。
- 如果 Native VLAN 为 1,则CDP 和 VTP等控制平面消息将不加标签地发送出去,否则将使用 VLAN1 进行标记。
- 本地 VLAN 是为每个中继端口配置的,并且在本地很重要。因此,可以在单个中继链路的两侧配置不同的 VLAN 号,从而导致本地 VLAN 不匹配。
- 本地 VLAN 不匹配会导致流量被误导,并且是一种安全隐患。
- 可以使用switchport trunk allowed vlan命令在任何中继端口上指定允许的 VLAN。
来源:http://www.yidianzixun.com/article/0oQgTsFs
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|