瞻博 EX4200 QinQ 问题

网络工程 杜松 瞻博网络 杜松 琴琴
2021-07-08 00:27:56

新手在这里有一个与几年前发布的非常相似的问题......只是略有不同(因此,由于原始问题被问得如此完美,我几乎逐字复制了它并稍微编辑了它......我知道非常懒惰!)

我如何告诉瞻博网络 EX4200 在 q-in-q(dot1q-tunneling)端口上推送基于 C-VLAN 的特定 S-VLAN?

例如,我想指示 EX4200 使用以下规则执行 Q-in-Q:

1) 如果在 ge-0/0/0 上收到 C-VLAN=41 的单标签帧,请勿推送 S-VLAN*

2) 如果在 ge-0/0/0 上收到 C-VLAN=42 的单标签帧,则推送 S-VLAN=5。

3) 如果在 ge-0/0/0 上收到单标签帧且 C-VLAN=51,则推送 S-VLAN=5。

4) 如果在 ge-0/0/0 上收到 C-VLAN=52 的单标签帧,则推送 S-VLAN=5。

相反,每当要在 ge-0/0/0 上发送双标签帧时,都应该删除(弹出)外部 S-VLAN。

“DO NOT PUSH S-VLAN”的意思是“保留一个带有 vlan-id 41 作为唯一标记的标记帧”

这可以在瞻博网络 EX4200 上完成吗?如果有,请指出具体的配置命令。

1个回答

4200 上的 Q-in-Q 非常不直观,但这里有适合您的配置:

如果您混合使用 Q-in-Q 和 dot1q,则需要将 dot1q 隧道以太网类型设置为 0x8100

set ethernet-switching-options dot1q-tunneling ether-type 0x8100

现在,配置您将在其上接收 C-TAG 的接口 - 请注意,您只会将其配置为未标记的接口(非常不直观):

set interfaces ge-0/0/7 unit 0 family ethernet-switching

现在创建您的 S-VLAN 5 和“C-VLAN” 41 并将它们应用到接口ge-0/0/7.0- 请注意,因为该接口在上一步中没有标记,您必须按照下面的说明在 VLAN 配置中应用该接口(其他接口在VLAN 41 可以按正常方式应用):

set vlans SV5 vlan-id 5
set vlans SV5 interface ge-0/0/7.0
set vlans SV5 dot1q-tunneling customer-vlans 42
set vlans SV5 dot1q-tunneling customer-vlans 51
set vlans SV5 dot1q-tunneling customer-vlans 52
set vlans CV41 vlan-id 41
set vlans CV41 interface ge-0/0/7.0 

最后一块是如何处理接收到的dot1q标签;如果您保持原样,VLAN 41 的 dot1q 流量将在入口处丢弃到 port ge-0/0/7.0,因此您需要创建一个 VLAN 交换操作,该操作基本上将 41 与 41 交换(就像我说的那样,它非常不直观):

set vlans CV41 interface ge-0/0/7.0 mapping 41 swap

现在您应该能够在同一接口上处理 dot1q 和 q-in-q 帧。

需要注意的一个警告是,您的 S-VLAN ID 不能与任何 C-VLAN ID 相同,因为您需要在交换机上创建 VLAN 以建立隧道。