更改中继中的 VLAN id

网络工程 VLAN 树干
2021-07-05 08:30:14

我有 3 个 L3 交换机。它们通过中继相互连接(我需要在其中定义允许的 VLAN)。

例如,在 SW1 上,我有 vlan 100。
在 SW3 上,我也有 vlan 100,但它是另一个广播域。
我无法在不中断网络的情况下更改 SW1 或 SW3 上的 vlan-id。
原因是这两个网络过去都是独立的网络,但现在它们加入了某些服务。
最好的解决方案是重新重写所有服务,而不是 vlan 并重建网络,但这不是现在。

我需要在 SW3 的 1 个端口上访问 SW1 的 vlan 100。

所以:应该更改 vlan-id。

有没有“正常”的方法来做到这一点?

我现在是这样解决的:
在 SW1 和 SW2 之间的中继上:允许 vlan 100。
使用 vlan 100 在 SW2创建一个访问端口。在 SW2 上
创建一个新的 vlan,其 vlan-id 在 SW2 和 SW3 上均未使用(例如 vlan 200)。
使用 vlan 200 在 SW2 上创建一个访问端口。
在两个端口之间建立一个循环,并注意:不要在家里这样做。
在 SW2 和 SW3 之间的中继上:允许 vlan 200。

在 SW3 上,我现在可以访问该 vlan,并且 id 更改为 200,但这似乎是一种肮脏的方法。
所以我的问题是:除了重新设计网络(计划于 2019 年)之外,还有更好的方法吗?

2个回答

当加入单独增长的网络时,这个问题很常见。

在大多数交换机上,当您在中继的每一侧分配不同的 VLAN ID 并在中继上传输未标记的帧(“本机 VLAN”)时,您可以“转换”VLAN。

在某些交换机上,您甚至可以通过使用相同的逻辑连接两个交换机端口来转换 VLAN。不过,这可能会对其他开关造成奇怪的影响,因此请在实际使用前彻底测试。显然,您还需要在这些端口上停用 STP 和任何环路检测方法。

当使用 RPVST 或 MSTP 时,所有这些技巧都会导致严重的问题,请注意。

在使用这些方法取得一些成功和更多问题之后,我的建议是更改冲突的 VLAN ID。有了好的计划,这比您想象的要容易。

一种完全不同的方法是不合并 L2 结构,而是将它们在一个或两个路由器上分开(取决于您是否可以在单独的路由接口上重用 VLAN ID,或者您是否可以/想要在没有 VLAN 中继的情况下连接路由器)。

可悲的是,这是执行此操作的“经典”方法。

但是,如果您有某些高端交换机,则可以使用中继功能中的 VLAN 转换。虽然它旨在将所有客户 VLAN 包装到一个新的 VLAN 标记中,但它也可用于在一台交换机和另一台交换机之间创建一对一的转换。

该功能并未广泛使用,这是一种耻辱,因为根据我的经验,这似乎总是出现。

尽管如此,检查您的交换机并查看它们是否支持该功能还是值得的,因为它比拥有单独的物理连接更可取。

另外:通过 2019 年的“重新设计网络”,我假设您的意思是简单地添加新的 vlan,将配置保存到 TFTP,对需要更改 vlan 的交换机的配置运行查找/替换操作,然后在运行时复制 tftp -配置。如果只更换几个开关,可能需要 20 分钟。老实说,这可以在任何给定的停机时间内完成,只需要一些短暂的时间。