Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

配置 Q-in-Q 隧道和 VLAN Q-in-Q 隧道以及 VLAN 转换

了解 Q-in-Q 隧道和 VLAN 转换

服务提供商可通过 Q-in-Q 隧道和 VLAN 转换在两个客户站点之间创建第 2 层以太网连接。提供商可以在链路上隔离不同客户的 VLAN 流量(例如,如果客户使用重叠的 VLAN ID),或将不同的客户 VLAN 捆绑到单个服务 VLAN 中。数据中心可以使用 Q-in-Q 隧道和 VLAN 转换将客户流量隔离到单个站点内,或者在不同地理位置的云数据中心之间实现客户流量传输。

通过使用 Q-in-Q 隧道,提供商可以通过添加另一层 802.1 Q 标记,从而将客户流量隔离或捆绑到更少或不同的 VLAN 中。当客户具有重叠的 VLAN ID 时,Q-in-Q 隧道非常有用,因为客户的 802.1Q (dot1Q) VLAN 标记前面会附加服务 VLAN (S-VLAN) 标记。由瞻博网络 Junos 操作系统 (Junos OS) 实施的 Q-in-Q 隧道可支持 IEEE 802.1 ad 标准。

本主题将介绍如下内容:

Q-in-Q 隧道的工作原理

在 Q-in-Q 隧道中,当数据包从客户 VLAN (C-VLAN) 传输到服务提供商的 VLAN 时,会将客户特定的 802.1Q 标记添加到数据包中。此附加标记用于将流量隔离到服务提供商定义的服务 VLAN (S-VLAN) 中。数据包的原始客户 802.1Q 标记将被保留,并以透明传输的方式,通过服务提供商的网络。数据包向下行方向离开 S-VLAN 时,附加的 802.1Q 标记将被删除。

注:

实施中的所有 VLAN 都可以是服务 VLAN。也就是说,如果受支持的 VLAN 总数为 4090,所有 VLAN 均可以充当服务 VLAN。

在瞻博网络 EX 系列以太网交换机上启用 Q-in-Q 隧道后,中继接口就会被视为服务提供商网络的一部分,而接入接口则会被视为面向客户的接口。在这种情况下,接入接口可以同时接收带标记的帧和不带标记的帧。

注:

从 Junos OS 14.1X53-D30 开始,您可以将同一个接口同时配置为 S-VLAN/NNI 接口和 C-VLAN/UNI 接口。这意味着,同一物理接口可以同时传输带有单标记的帧和带有双标记的帧。凭借该功能,您可以在网络拓扑中实现最大灵活性,并能够充分利用接口。

一个接口可以是多个 S-VLAN 的成员。您可以将一个 C-VLAN 映射到一个 S-VLAN (1:1),也可以将多个 C-VLAN 映射到一个 S-VLAN (N:1)。这将对数据包进行双标记,用于隔离和捆绑 C-VLAN 的附加层。C-VLAN 和 S-VLAN 标记均具有唯一性;因此,您可以同时拥有两个 ID 相同的 VLAN(C-VLAN 和 S-VLAN),例如 C-VLAN 101 和 S-VLAN 101。您可以将接收到的客户标记集合限制为一系列的标记或离散值。在下行方向上,C-VLAN 的服务等级 (CoS) 值不变。您可以选择将入口优先级和 CoS 设置复制到 S-VLAN。在非 ELS 交换机上,您可以使用专用 VLAN 隔离用户,以防止其在用户接口之间转发流量,即使这些接口在同一 VLAN 中也可实现。

启用 Q-in-Q 隧道时,中继接口将被视为服务提供商或数据中心网络的一部分。接入接口会被视为面向客户的接口,并接受已标记和未标记的帧。使用多对一捆绑或映射特定接口时,如果要接受这些数据包,必须使用 native 选项为未标记和优先级标记的数据包指定 S-VLAN。(可将优先级标记数据包的 VLAN ID 设置为 0,其优先级代码点位可采用 CoS 值进行配置。)

注:

QFX5100 和 EX4600 交换机上的 Q-in-Q 隧道不支持优先级标记的数据包。

如果没有为其指定 S-VLAN,则未标记的数据包会被丢弃。native 选项无法用于一体化捆绑,因为当所有数据包均映射到一个 S-VLAN 时,无需为其指定未标记和优先级标记的数据包。

使用多对一捆绑和特定接口映射方法将 C-VLAN 映射到 S-VLAN 时,您可以使用 native 选项为未标记和优先级标记的数据包指定 S-VLAN。(该方法不适用于支持 ELS 的交换机。)否则,数据包将被丢弃。native 选项无法用于一体化捆绑,因为当所有数据包均映射到一个 S-VLAN 时,无需为其指定未标记和优先级标记的数据包。有关将 C-VLAN 映射到 S-VLAN 的方法,请参阅本文档的“将 C-VLAN 映射到 S-VLAN”部分。

只有在 QFabric 系统上,您才可以使用 native 选项将指定的内部标记应用于通过接入接口进入的未标记数据包。如果您的 QFabric 系统连接到托管发送未标记流量的客户虚拟机的服务器,并且每个客户的流量在通过 QFabric 传输时都需要自己的 VLAN,则此功能非常有用。您可以为每个客户的流量应用一个唯一的内部 (C-VLAN) 标记,然后应用一个外部标记 (S-VLAN) 标记,以便通过 QFabric 进行传输,而不是为每个客户使用单独的 VLAN(这可能会很快导致 VLAN 耗尽)。这样,您就可以隔离客户的流量,同时仅使用一个 QFabric VLAN。使用映射语句的 inner-tag 选项实现此功能。

在非 ELS 交换机上,您可以根据相关策略使用防火墙过滤器将接口映射到 VLAN。当您希望将端口的流量子集映射到您选定的 VLAN,而非系统已指定的 VLAN 中时,使用防火墙过滤器将接口映射到 VLAN 会非常有用。要配置防火墙过滤器将接口映射到 VLAN,则必须将 vlan 选项配置为防火墙过滤器的一部分,并在接口配置中为每个使用过滤器的逻辑接口指定选项 mapping policy

注:

在 EX4300 交换机上,您可以在同一以太网端口上配置多个逻辑接口,但每个逻辑接口仅支持单标记数据包,并且该标记包含的 VLAN ID 必须与其他逻辑接口支持的 VLAN ID 不同。在此情况下,您无法在带有多个逻辑子接口的以太网端口上启用 Q-in-Q 隧道。

Q-in-Q 隧道不会影响在 C-VLAN 上配置的任何服务等级 (CoS) 值。这些设置被保留在 C-VLAN 标记中,可在数据包离开 S-VLAN 后使用。无法将 CoS 值从 C-VLAN 标记复制到 S-VLAN 标记。

根据您的接口配置,您可能需要调整中继或访问端口的 MTU 值,以容纳 Q-in-Q 隧道添加标记所用的 4 个字节。例如,如果您在接入和中继端口上使用默认的 1514 字节 MTU 值,则需要进行以下任一调整:

  • 将接入链路上的 MTU 减少至少 4 个字节,以便在添加 S-VLAN 标记时,帧不会超过中继链路的 MTU。

  • 增加中继链路上的 MTU,以便链路可以处理更大的帧。

注:

您只能在接入端口(非中继端口)上配置 Q-in-Q 隧道。

VLAN 转换的工作原理

VLAN 转换会将传入的 C-VLAN 标记替换为 S-VLAN 标记,而不是添加附加标记。C-VLAN 标记会因此丢失,所以单标记数据包在离开 S-VLAN (链路的另一端)时通常不带标记。如果传入数据包预先应用了 Q-in-Q 隧道,VLAN 转换将替换外部标记,当数据包离开链路另一端的 S-VLAN 时将保留内部标记。传入数据包的标记与 C-VLAN 标记不匹配时,此数据包将被丢弃,除非存在为这些标记附加的 VLAN 转换配置。

要配置 VLAN 转换,请在 [edit vlans interface] 层级使用映射 swap语句。只要 C-VLAN 和 S-VLAN 标记具有唯一性,您就可以在访问端口上配置多个从 C-VLAN 到 S-VLAN 的转换。如果仅在接口上转换一个 VLAN,则无需将 dot1q-tunneling 语句包含在 S-VLAN 配置中。如果要转换多个 VLAN,则必须使用dot1q-tunneling语句。

注:

您只能在接入端口上配置 VLAN 转换。您不能在中继端口上配置该功能,也不能在同一接入端口上配置 Q-in-Q 隧道。对于给定的 VLAN 和接口,您只能配置一个 VLAN 转换。例如,您仅可在接口 xe-0/0/0 上为 VLAN 100 创建一个转换。

注:

QFabric 系统不支持 VLAN 转换。

使用双 VLAN 标记转换

从 Junos OS (14.1X53-D40) 开始,您可以使用双 VLAN 标记转换(也称为双 VLAN 标记重写)功能将交换机部署到服务提供商的网域中,从而允许将双标记、单标记和未标记的 VLAN 数据包引入或退出交换机。表 1显示了为双 VLAN 标记转换添加的操作。

表 1: 使用双 VLAN 标记重写功能添加的操作

操作

功能

交换-推送

交换 VLAN 标记并推送新的 VLAN 标记

弹出-交换

弹出外部 VLAN 标记并交换内部 VLAN 标记

交换-交换

同时交换外部和内部 VLAN 标记

双 VLAN 标记转换支持以下功能:

  • 在同一物理接口上进行 S-VLAN (NNI) 和 C-VLAN (UNI) 配置

  • 控制 VSTP、OSPF 和 LACP 等协议

  • IGMP 侦听

  • 在单标记接口上进行专用 VLAN (PVLAN) 和 VLAN 配置

  • 在内部和外部 VLAN 标记上使用 TPID 0x8100

请参阅如何在 QFX 交换机上设置双 VLAN 标记转换配置

发送和接收未标记数据包

要使接口能够发送和接收未标记的数据包,必须为物理接口指定本征 VLAN。当接口收到未标记的数据包时,它会将本机 VLAN 的 VLAN ID 添加到 C-VLAN 字段的数据包中,并同时添加 S-VLAN 标记(因此数据包具有双标记),并将新标记的数据包发送到映射的接口。

以上段落中的说明适用于:

  • 非 ELS 交换机。

  • 运行的 Junos 版本低于 Junos OS 19.3R1 版的 EX4300 交换机。

当上文简表中的交换机接收到未标记的数据包时,它们会将 S-VLAN 标记添加至数据包(因此数据包为单标记数据包),并将新标记的数据包发送到映射接口。

注:

确保在 Q-in-Q 设置中配置的所有交换机均使用单标记方法或双标记方法运行。如果交换机使用的方法不同,则设置将失效。

从 Junos OS 19.3R1 版开始,您可以将 EX4300 交换机配置为使用双标记方法。将配置语句 input-native-vlan-push 设置为enable,并确保将 input-vlan-map 配置语句设置为push,如以下示例中所示:

注:

在支持此功能的交换机上(EX4300 交换机除外),默认情况下会将 input-native-vlan-push 语句设置为enable。(在 EX4300 交换机上,默认情况下会将语句设置为。)但是,我们建议您检查配置以确保将 input-vlan-map 设置为 —如果未进行该设置,该功能将不起作用。input-native-vlan-pushdisableinput-vlan-mappush

要指定本机 VLAN,请在 [edit interfaces interface-name] 层级使用 native-vlan-id 语句。本机 VLAN ID 必须与 C-VLAN 或 S-VLAN 匹配,或者包含在逻辑接口上指定的 VLAN ID 列表中。

例如,在 C-VLAN 接口的逻辑接口上,您可以指定一个 100-200 的 C-VLAN ID 列表。然后,在 C-VLAN 物理接口上,您可以指定 150 作为本征 VLAN ID。此配置能够正常运行,因为 ID 为 150 的本征 VLAN 包含在 100-200 的 C-VLAN ID 列表中。

瞻博网络建议,在使用任何一种方法将 C-VLAN 映射到 S-VLAN 时,配置一个本征 VLAN。要了解将 C-VLAN 映射到 S-VLAN 的方法,请参阅本主题下的“将 C-VLAN 映射到 S-VLAN”部分。

禁用 MAC 地址学习

在 Q-in-Q 部署中,来自下行接口的客户数据包在传输时,不会更改 MAC 源地址和目的地址。您可以在全局、接口和 VLAN 层级禁用 MAC 地址学习:

  • 要对全局禁用地址学习,请禁用交换机 MAC 地址学习。

  • 要在接口层级禁用地址学习,请禁用包含特定接口的所有 VLAN 的 MAC 地址学习。

  • 要对 VLAN 禁用地址学习,请禁用指定 VLAN 的 MAC 地址学习。

对某个接口禁用 MAC 地址学习也会禁用包含该接口的所有 VLAN 的地址学习。禁用 VLAN 的 MAC 地址学习后,已学习的 MAC 地址将被清除。

如果禁用某个接口或 VLAN 的 MAC 地址学习,则不能在该 VLAN 配置中包含 802.1X 身份验证。

路由 VLAN 接口 (RVI) 与禁用 MAC 地址学习的接口或 VLAN 相关联时,在该 VLAN 或该接口上解析的第 3 层路由无法通过第 2 层组件解析。这会导致路由的数据包在与 VLAN 关联的所有接口上泛滥。

将 C-VLAN 映射到 S-VLAN

将 C-VLAN 映射到 S-VLAN 有多种方式:

注:

如果配置了多种映射方法,交换机将优先处理特定端口的映射,之后是多对多捆绑,最后是一体化捆绑。但是,对于每种特定的映射方法,不支持为同一 C-VLAN 设置重叠规则。

  • 一体化捆绑 — 使用语句时 不指定客户 VLAN。edit vlans s-vlan-name dot1q-tunneling 所有访问接口接收到的所有数据包(包括未标记数据包)均映射到 S-VLAN。

  • 多对一捆绑 — 使用该语句指定 将哪些 C-VLAN 映射到 S-VLAN。edit vlans s-vlan-name dot1q-tunneling customer-vlans 如果您希望将 C-VLAN 的一个子集变为 S-VLAN 的一部分,请使用此方法。如果希望将未标记或带有优先级标记的数据包映射到 S-VLAN,请通过customer-vlans语句使用native选项。(可将优先级标记数据包的 VLAN ID 设置为 0,其优先级代码点位可采用 CoS 值进行配置。)

  • 多对多捆绑 — 如果您希望接入交换机上的 C-VLAN 子集成为多个 S-VLAN 的一部分,请使用多对多捆绑。

  • 映射特定接口 — 使用该 语句为给定的 S-VLAN 指定 C-VLAN。edit vlans s-vlan-name interface interface-name mapping 此配置仅适用于一个接口,不像一体化和多对一捆绑那样适用于所有接入接口。如果希望将未标记或带有优先级标记的数据包映射到 S-VLAN,请通过customer-vlans语句使用native选项。

    此方法有两个选项:交换和推送。使用推送选项时,数据包将保留其标记,还会添加一个附加的 VLAN 标记。使用交换选项时,则可将传入标记替换为 S-VLAN 标记。(即 VLAN 转换。)

    • 您可以为给定的 S-VLAN 和接口配置多个推送规则。也就是说,您可以配置一个接口,以便将同一个 S-VLAN 标记添加到从多个 C-VLAN 传入的数据包中。

    • 您只能为给定的 S-VLAN 和接口配置一个交换规则。

    此功能通常用于对不同客户的流量进行分离,或对特定接口上的流量进行个性化处理。

如果配置多种映射方法,交换机将优先处理特定端口的映射,之后是多对多捆绑,最后是一体化捆绑。但对于给定的方法,不能对同一个 C-VLAN 使用重叠的规则。例如,您不能使用多对一捆绑将 C-VLAN 100 映射到两个不同的 S-VLAN 。

一体化捆绑

一体化捆绑可以将所有来自 C-VLAN 接口的全部数据包映射到一个 S-VLAN。

C-VLAN 接口可以接受未标记和单标记数据包。然后,系统会将一个 S-VLAN 802.1Q 标记添加到这些数据包中,并将这些数据包发送至可以接受未标记、单标记和双标记数据包的 S-VLAN 接口。

注:

如果在这些接口上配置了native-vlan-id 语句,则 C-VLAN 和 S-VLAN 接口就可以接受未标记的数据包。

多对一捆绑

多对一捆绑用于指定将哪些 C-VLAN 映射到一个 S-VLAN。多对一捆绑通过 customer-vlans 选项进行配置。

如果希望接入交换机上的 C-VLAN 子集成为 S-VLAN 的一部分,则使用多对一捆绑。使用多对一捆绑时,如果同时指定了 native 选项和 customer-vlans 选项,即可将未标记和优先级标记的数据包映射至 S-VLAN。

多对多捆绑

多对多捆绑用于指定将哪些 C-VLAN 映射到多个 S-VLAN。

如果希望接入交换机上的 C-VLAN 子集成为多个 S-VLAN 的一部分,则使用多对多捆绑。C-VLAN 接口可以通过多对多捆绑接受未标记和单标记的数据包。然后,系统会将 S-VLAN 802.1Q 标记添加到这些数据包中,并将这些数据包发送至可以接受未标记、单标记和双标记数据包的 S-VLAN 接口。

注:

如果在这些接口上配置了 native-vlan-id 语句,则 C-VLAN 和 S-VLAN 接口就可以接受未标记的数据包。

映射特定接口

如果您希望将 S-VLAN 分配到某个接口上的特定 C-VLAN,请使用特定接口映射。此配置仅适用于特定接口,并非所有接入接口。

特定接口映射具有两个子选项:pushswap。对映射到特定接口的流量进行推送时,数据包将保留其原始标记,同时从 C-VLAN 移动到 S-VLAN,并且系统会将一个附加的 S-VLAN 标记添加到数据包中。对映射到特定接口的流量进行交换时,传入标记将替换为新的 VLAN 标记。这一过程有时被称为 VLAN 重写或 VLAN 转换。

一般情况下,此功能用于对不同客户的数据进行分离,或对特定接口上的数据包进行个性化处理。您还可以使用此方法将来自不同客户的 VLAN 流量映射到单个 S-VLAN。

使用特定接口映射时,C-VLAN 接口可接受未标记和单标记数据包,而 S-VLAN 接口可以接受未标记、单标记和双标记数据包。

注:

如果在这些接口上配置了 native-vlan-id 语句,则 C-VLAN 和 S-VLAN 接口可接受未标记的数据包。

组合方法和配置限制

如果配置多种映射方法,交换机将优先处理特定端口的映射,之后是多对多捆绑,最后是一体化捆绑。使用一体化捆绑配置的访问接口不能是多对一捆绑的一部分。但是,可以为其定义附加映射。

为确保取得确定的结果,应注意以下配置限制:

  • 不能为未标记的 VLAN 定义映射。

  • 一个接入接口可以有多个客户 VLAN 范围,但一个接口不能有跨 VLAN 的重叠性标记。

    例如,不允许进行以下配置:

    由于 customer-2 配置可创建 ge-0/0/0 对应的重叠 customer-vlan 范围,因此无效。

  • 接入接口只有一个规则,即用于将未标记数据包映射到 VLAN。

  • 每个接口最多只能有一个对应 VLAN 的映射交换规则。

  • 只能在 Q-in-Q VLAN 的接入端口上推送 VLAN 标记。此限制适用于所有三种 VLAN 标记推送方法:也就是一体化捆绑、多对一捆绑以及使用推送映射特定接口。

  • 您可以为不同接口上的给定 S-VLAN 推送不同的 C-VLAN 标记。但这可能会导致 VLAN 之间出现流量泄露,具体取决于您的配置。

Q-in-Q VLAN 上的路由 VLAN 接口

Q-in-Q VLAN 提供对路由 VLAN 接口 (RVI) 的支持。

无论是单标记数据包还是双标记数据包,通过 Q-in-Q VLAN 到达 RVI 的数据包都将得到路由。传出路由的数据包仅在退出中继接口时才会包含 S-VLAN 标记;退出接入接口时,数据包为未标记状态。

Q-in-Q 隧道和 VLAN 转换的限制

配置 Q-in-Q 隧道和 VLAN 转换时,请注意以下限制:

  • Q-in-Q 隧道仅支持两层 VLAN 标记。

  • Q-in-Q 隧道不支持大多数接入端口安全功能。除非您使用防火墙过滤器配置这些安全功能,否则无法通过 Q-in-Q 隧道进行基于 VLAN(客户)的监管或基于 VLAN(传出)的整形和限制。

  • 当使用 Junos OS 13.2X51-D20 版本之前的 13.2X51 版本时,如果您在该接口上创建了用于 Q-in-Q 隧道的 S-VLAN 或 C-VLAN,则无法在接口上创建常规 VLAN。这意味着,您无法在该接口上创建集成路由和桥接 (IRB) 接口,因为常规 VLAN 是 IRB 配置所需的一部分。当使用 Junos OS 13.2X51-D25 版本时,您可以在带有 S-VLAN 的中继接口上创建常规 VLAN,这意味着您还可以在中继接口上创建 IRB 接口。在这种情况下,同一中继接口上的常规 VLAN 和 S-VLAN 不能共享同一个 VLAN ID。使用 Junos OS 13.2X51-D25 版本时,您无法在具有 C-VLAN 的接入接口上创建常规 VLAN。

  • 从 Junos OS 14.1X53-D40 版开始,Q-in-Q VLAN 支持集成路由和桥接 (IRB) 接口 — 您可以在与 S-VLAN 使用的接口相同的接口上配置 IRB 接口,并且可以对 IRB 接口使用的 VLAN 和用作 S-VLAN 的 VLAN 使用相同的 VLAN ID。

    无论是单标记数据包还是双标记数据包,通过 Q-in-Q VLAN 到达 IRB 接口的数据包都将得到路由。传出路由的数据包仅在退出中继接口时才会包含 S-VLAN 标记;退出接入接口时,数据包为未标记状态。

    注:

    只能在 S-VLAN (NNI) 接口上配置 IRB 接口,而在 C-VLAN (UNI) 接口上无法配置此接口。

  • 使用该语句支持 具有 Q-in-Q 接口的 QFX5K 交换机仅限于第 2 层接口。vlan-tags 使用 Q-iQ 语句配置的第 3 层接口可能无法按预期运行。vlan-tags

  • Q-in-Q 隧道和 VLAN 转换技术不支持大多数接入端口的安全功能。

  • 不支持在同一端口上配置 Q-in-Q 隧道和 VLAN 重写/VLAN 转换。

  • 对于给定的 VLAN 和接口,最多只能配置一个 VLAN 重写/VLAN 转换。例如,您仅可在接口 xe-0/0/0 上为 VLAN 100 创建一个转换。

  • 用于 Q-in-Q 隧道和 VLAN 转换的 VLAN 数量与其规则数量之和不能超过 6000。例如,可以为 Q-in-Q 隧道和 VLAN 转换功能配置并提交 4000 个 VLAN 和 2000 个规则。但无法为它们配置 4000 个 VLAN 和 2500 个规则。如果尝试提交超出上述限制的配置数量,则 CLI 和系统日志将显示错误,以通知用户出现问题。

  • 您无法使用本征 VLAN ID。

  • 从 S-VLAN(而非 C-VLAN)中学习 MAC 地址。

  • 广播、未知单播和组播流量将被转发至 S-VLAN 中的所有成员。

  • Q-in-Q 隧道不支持以下功能:

    • DHCP 中继

    • 以太网光纤通道

    • IP 源保护

  • VLAN 重写/VLAN 转换不支持以下功能:

    • 以太网光纤通道

    • 将防火墙过滤器应用于输出方向上的端口或 VLAN

    • 专用 VLAN

    • VLAN 生成树协议

    • 反射中继

在 QFX 系列交换机上配置 Q-in-Q 隧道

服务提供商可通过 Q-in-Q 隧道和 VLAN 转换在两个客户站点之间创建第 2 层以太网连接。提供商可以在链路上隔离不同客户的 VLAN 流量(例如,如果客户使用重叠的 VLAN ID),或将不同的客户 VLAN 捆绑到单个服务 VLAN 中。数据中心可以使用 Q-in-Q 隧道隔离单个站点内的客户流量,或者当客户流量在不同地理位置的云数据中心之间流动时隔离。

从 Junos OS 19.4R1 版开始,QFX10000 系列交换机支持将第三和第四个 Q-in-Q 标记作为有效负载(也称为直通标记)以及现有的两个标记(用于 VLAN 匹配和操作)。对于第 2 层桥接和 EVPN-VXLAN 情况,QFX10000交换机支持多个 Q-in-Q 标记。第 2 层接入接口接受带有三个或四个标签的数据包(所有标签的 TPID 值均为 0x8100)。超出第四个标记(即从第五个标记开始)的所有标记都被视为第 3 层有效负载的一部分,并以透明方式转发。

注:

在一个或两个标记的数据包中,标记、标记 1 和标记 2 可以携带任何 TPID 值,例如 0x8100、0x88a8、0x9100 和 0x9200。

在开始设置 Q-in-Q 隧道之前,请确保已在相邻交换机上创建并配置了必要的客户 VLAN。请参阅 在交换机上配置 VLAN

要配置 Q-in-Q 隧道:

  1. 创建服务 VLAN (S-VLAN) 并为其配置 ID:
  2. 在 S-VLAN 上启用 Q-in-Q 隧道:
  3. 在 S-VLAN 上设置允许的客户 VLAN (C-VLAN)(可选)。此处,C-VLAN 由一个范围标识:
  4. 为服务 VLAN 标记(可选)的标记协议标识符(以太类型)配置全局值:

根据您的接口配置,您可能需要调整中继或访问端口的 MTU 值,以容纳 Q-in-Q 隧道添加标记所用的 4 个字节。例如,如果您在接入和中继端口上使用默认的 1514 字节 MTU 值,则需要进行以下任一调整:

  • 将接入链路上的 MTU 减少至少 4 个字节,以便在添加 S-VLAN 标记时,帧不会超过中继链路的 MTU。

  • 增加中继链路上的 MTU,以便链路可以处理更大的帧。

在支持 ELS 的 EX 系列交换机上配置 Q-in-Q 隧道

注:

此任务可使用支持增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机的 Junos OS 来完成。如果您的交换机运行的软件不支持 ELS,请参阅 在 EX 系列交换机上配置 Q-in-Q 隧道。有关 ELS 的详细信息,请参阅使用增强型第 2 层软件 CLI

Q-in-Q 隧道使以太网接入网络上的服务提供商能够通过添加另一层 802.1Q 标记,将客户流量隔离或捆绑到不同的 VLAN 中。您可以在 EX 系列交换机上配置 Q-in-Q 隧道。

注:

您无法在已启用 Q-in-Q 隧道的接口上配置 802.1X 用户身份验证。

在 EX 系列交换机上配置 Q-in-Q 隧道时,中继接口将被视为服务提供商网络的一部分,接入接口将被视为客户网络的一部分。因此,本主题还将中继接口称为服务提供商 VLAN (S-VLAN) 接口(网络到网络接口 [NNI]),并将接入接口称为客户 VLAN (C-VLAN) 接口(用户网络接口 [UNI])。

在开始配置 Q-in-Q 隧道之前,请确保已设置 VLAN。请参阅为支持 ELS 的 EX 系列交换机配置 VLAN(CLI 过程)或为 EX 系列交换机配置 VLAN(J-Web 过程)。https://www.juniper.net/documentation/en_US/junos/topics/task/configuration/bridging-vlans-ex-series-cli-els.htmlhttps://www.juniper.net/documentation/en_US/junos/topics/task/configuration/bridging-vlans-ex-series-j-web.html

使用以下方法之一配置 Q-in-Q 隧道,将 C-VLAN 映射到 S-VLAN:

配置一体化捆绑

您可以使用一体化捆绑方法配置 Q-in-Q 隧道,该方法将交换机上所有 C-VLAN 接口的数据包映射到 S-VLAN。

要在 C-VLAN 接口上配置一体化捆绑方法,请执行以下操作:

  1. 启用不带 802.1Q VLAN 标记或只有一个 802.1Q VLAN 标记的数据包传输:
  2. 启用扩展 VLAN 网桥封装:
  3. 将所有来自 C-VLAN 的数据包映射到一个逻辑接口:
    注:

    您最多只能向物理接口应用八个 VLAN 标识符列表。

  4. 启用 C-VLAN 接口以发送和接收未标记的数据包:

    在 C-VLAN 物理接口上指定本机 VLAN ID 时,该值必须包含在步骤 3 中在 C-VLAN 逻辑接口上指定的 VLAN ID 列表中。

  5. 指定从 C-VLAN 接口传输到 S-VLAN 接口的数据包使用 S-VLAN 的 VLAN ID 进行标记:
  6. 指定在数据包退出 S-VLAN 接口时移除 802.1Q S-VLAN 标记。
  7. 配置 S-VLAN 的名称,并将步骤 3 中配置的逻辑接口与 S-VLAN 关联:

C-VLAN 接口 ge-0/0/1 上的以下配置可启用 Q-in-Q 隧道,并将来自 C-VLAN 100 到 200 的数据包映射到逻辑接口 10,而逻辑接口 10 又与 S-VLAN v10 关联。在此示例配置中,源自 C-VLAN 100 的数据包包含 VLAN ID 为 100 的标记。当此数据包从接口 ge-0/0/1 传输到 S-VLAN 接口时,将向其添加一个 VLAN ID 为 10 的标记。数据包退出 S-VLAN 接口时,VLAN ID 为 10 的标记将被移除。

要在 S-VLAN 接口上配置一体化捆绑方法,请执行以下操作:

  1. 启用不带、不带一个或两个 802.1Q VLAN 标记的数据包的传输:

  2. 启用扩展 VLAN 网桥封装:

  3. 将数据包从 C-VLAN 接口配置中指定的逻辑接口映射到 S-VLAN:

  4. 启用 S-VLAN 接口以发送和接收未标记的数据包:

    在 S-VLAN 物理接口上指定本机 VLAN ID 时,该值必须与步骤 3 中在 S-VLAN 逻辑接口上指定的 VLAN ID 匹配。

  5. 将 S-VLAN 接口与在 C-VLAN 接口过程中配置的 S-VLAN 相关联:

例如,S-VLAN 接口 ge-1/1/1 上的以下配置可启用 Q-in-Q 隧道,并将 VLAN ID 标记为 10 的数据包映射到逻辑接口 10,而逻辑接口 10 又与 S-VLAN v10 关联。.

配置多对多捆绑

您可以使用多对多捆绑方法配置 Q-in-Q 隧道,该方法将数据包从多个 C-VLAN 映射到多个 S-VLAN。

要在 C-VLAN 接口上配置多对多捆绑方法,请执行以下操作:

  1. 启用不带 802.1Q VLAN 标记或只有一个 802.1Q VLAN 标记的数据包传输:
  2. 启用扩展 VLAN 网桥封装:
  3. 将来自指定 C-VLAN 的数据包映射到逻辑接口:
  4. 启用 C-VLAN 接口以发送和接收未标记的数据包:

    在 C-VLAN 物理接口上指定本机 VLAN ID 时,该值必须包含在步骤 3 中在 C-VLAN 逻辑接口上指定的 VLAN ID 列表中。

  5. 指定从 C-VLAN 接口传输到 S-VLAN 接口的数据包使用 S-VLAN 的 VLAN ID 进行标记:
  6. 指定在数据包退出 S-VLAN 接口时移除 802.1Q S-VLAN 标记:
  7. 配置 S-VLAN 的名称,并将步骤 3 中配置的逻辑接口与 S-VLAN 关联:

客户 1 的 C-VLAN 接口 ge-0/0/1 上的以下配置可启用 Q-in-Q 隧道,并将来自 C-VLAN 100 到 120 的数据包映射到逻辑接口 10,而逻辑接口 10 又与 S-VLAN v10 关联。

客户 2 的 C-VLAN 接口 ge-0/0/2 上的配置启用 Q-in-Q 隧道,并将来自 C- VLAN 30 到 40、50 到 60 和 70 到 80 的数据包映射到逻辑接口 30,而逻辑接口 30 又与 S- VLAN v30 相关联。

在此示例配置中,源自 C-VLAN 100 的数据包包含 VLAN ID 为 100 的标记。当此数据包从接口 ge-0/0/1 传输到 S-VLAN 接口时,将向其添加一个 VLAN ID 为 10 的标记。当数据包退出 S-VLAN 接口时,VLAN ID 为 10 的标记将被移除。

客户 1

客户 2

要在 S-VLAN 接口上配置多对多捆绑方法,请执行以下操作:

  1. 启用不带、不带一个或两个 802.1Q VLAN 标记的数据包的传输:

  2. 启用扩展 VLAN 网桥封装:

  3. 将来自 C-VLAN 接口配置中指定的每个逻辑接口的数据包映射到 S-VLAN:

  4. 启用 S-VLAN 接口以发送和接收未标记的数据包:

    在 S-VLAN 物理接口上指定本机 VLAN ID 时,该值必须与步骤 3 中在 S-VLAN 逻辑接口上指定的 S-VLAN ID 匹配。

  5. 将 S-VLAN 接口与在 C-VLAN 接口过程中配置的 S-VLAN 关联:

例如,S-VLAN 接口 ge-1/1/1 上的以下配置可启用 Q-in-Q 隧道,并将传入的 C-VLAN 数据包映射到逻辑接口 10 和 30,这两个接口分别与 S-VLAN v10 和 v30 关联。

使用 VLAN 重写选项配置特定接口映射

您可以通过将数据包从指定的 C-VLAN 映射到指定的 S-VLAN 来配置 Q-in-Q 隧道。此外,当数据包传入和传出 S-VLAN 时,您可以指定删除 802.1Q C-VLAN 标记并将其替换为 S-VLAN 标记,反之亦然。

要在 C-VLAN 接口上使用 VLAN 重写配置特定接口映射,请执行以下操作:

  1. 启用不带或只有一个 802.1Q VLAN 标记的数据包传输:
  2. 启用扩展 VLAN 网桥封装:
  3. 将数据包从指定 C-VLAN 映射到逻辑接口:
  4. 启用 C-VLAN 接口以发送和接收未标记的数据包:

    在 C-VLAN 物理接口上指定本机 VLAN ID 时,该值必须与步骤 3 中在 C-VLAN 逻辑接口上指定的 VLAN ID 匹配。

  5. 指定从从 C-VLAN 接口传输到 S-VLAN 接口的数据包中移除现有的 802.1Q C-VLAN 标记,并将其替换为 802.1Q S-VLAN 标记:
  6. 指定从从 S-VLAN 接口传输到 C-VLAN 接口的数据包中移除现有的 802.1Q S-VLAN 标记,并将其替换为 802.1Q C-VLAN 标记:
  7. 配置 S-VLAN 的名称,并将步骤 3 中配置的逻辑接口与 S-VLAN 关联:

例如,C-VLAN 接口 ge-0/0/1 上的以下配置可启用 Q-in-Q 隧道,并将来自 C-VLAN 150 的传入数据包映射到逻辑接口 200,而逻辑接口 200 又与 VLAN v200 相关联。此外,当数据包从 C-VLAN 接口 ge-0/0/1 传输到 S-VLAN 接口时,C-VLAN 标记 150 将被删除并替换为 S-VLAN 标记 200。当数据包从 S-VLAN 接口传输到 C-VLAN 接口 ge-0/0/1 时,S-VLAN 标记 200 将被删除,并替换为 C-VLAN 标记 150。

要在 S-VLAN 接口上使用 VLAN 重写配置特定接口映射,请执行以下操作:

  1. 启用不带、不带一个或两个 802.1Q VLAN 标记的数据包的传输:

  2. 启用扩展 VLAN 网桥封装:

  3. 将数据包从 C-VLAN 接口配置中指定的逻辑接口映射到 S-VLAN:

  4. 启用 S-VLAN 接口以发送和接收未标记的数据包:

    在 S-VLAN 物理接口上指定本机 VLAN ID 时,该值必须与步骤 3 中在 S-VLAN 逻辑接口上指定的 VLAN ID 匹配。

  5. 将 S-VLAN 接口与在 C-VLAN 接口过程中配置的 S-VLAN 相关联::

例如,S-VLAN 接口 ge-1/1/1 上的以下配置可启用 Q-in-Q 隧道,并将 VLAN ID 为 200 的数据包映射到逻辑接口 200,而逻辑接口 200 又与 S-VLAN v200 关联。

在 EX 系列交换机上配置 Q-in-Q 隧道

注:

此任务使用不支持增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机的 Junos OS。

Q-in-Q 隧道允许以太网接入网络上的服务提供商通过添加另一层 802.1Q 标记,将客户流量隔离或捆绑到不同的 VLAN 中。您可以在 EX 系列交换机上配置 Q-in-Q 隧道。

注:

您无法在已启用 Q-in-Q 隧道的接口上配置 802.1X 用户身份验证。

在开始配置 Q-in-Q 隧道之前,请确保已设置 VLAN。请参阅为 EX 系列交换机配置 VLAN 或为 EX 系列交换机配置 VLANJ-Web 过程)。

要配置 Q-in-Q 隧道:

  1. 在 S-VLAN 上启用 Q-in-Q 隧道:
  2. 设置 S-VLAN 上允许的 C-VLAN(可选)。此处,C-VLAN 由 VLAN 范围标识:
  3. 更改全局以太类型值(可选):
  4. 在 S-VLAN 上禁用 MAC 地址学习(可选):

在 ACX 系列上配置 Q-in-Q 隧道

SUMMARY 

ACX 系列上的 Q-in-Q 隧道概述

Q-in-Q 隧道允许服务提供商在两个客户站点之间创建第 2 层以太网连接。提供商可以在链路上隔离不同客户的 VLAN 流量(例如,如果客户使用重叠的 VLAN ID),或将不同的客户 VLAN 捆绑到单个服务 VLAN 中。服务提供商可以使用 Q-in-Q 隧道将客户流量隔离在单个站点内,或启用跨地理位置的客户流量。

Q-in-Q 隧道会在客户的 802.1Q VLAN 标记之前添加一个服务 VLAN 标记。瞻博网络 Junos 操作系统实施的 Q-in-Q 隧道支持 IEEE 802.1ad 标准。

在 Q-in-Q 隧道中,当数据包从客户 VLAN (C-VLAN) 传输到服务提供商的 VLAN (S-VLAN) 时,会在 C-VLAN 标记之前添加相应 S-VLAN 的另一个 802.1Q 标记。C-VLAN 标记将保留并通过网络传输。当数据包从 S-VLAN 空间向下行方向退出时,S-VLAN 802.1Q 标记将被删除。

在 ACX 系列路由器中,您可以通过在桥接域中面向客户的接口上显式配置具有 功能的输入 VLAN 映射来配置 Q-in-Q 隧道。push

您可以通过配置输入和输出 VLAN 映射,在聚合以太网接口上配置 Q-in-Q 隧道。

在 ACX 系列上配置 Q-in-Q 隧道

要配置 Q-in-Q 隧道,您需要配置连接到客户网络的逻辑接口(用户到网络接口 (UNI))和连接到服务提供商网络的逻辑接口(网络到网络接口 (NNI))。

以下是配置连接到客户网络的逻辑接口的示例:

以下是配置连接到服务提供商网络的逻辑接口的示例:

以下是配置桥接域的示例:

您可以在连接到客户网络 (UNI) 的聚合以太网接口和连接到服务提供商网络 (NNI) 的逻辑接口上配置 Q-in-Q 隧道。

使用一体化捆绑配置 Q-in-Q 隧道

您可以使用一体化捆绑方法配置 Q-in-Q 隧道,该方法会将通过 C-VLAN 接口进入的所有数据包转发到 S-VLAN。(数据包将被转发到 S-VLAN,无论它们在入口之前是已标记还是未标记。)使用此方法可节省为每个 C-VLAN 指定特定映射的工作量。

首先配置 S-VLAN 及其接口:

  1. 将逻辑接口(单元)分配为 S-VLAN 的成员。
    注:

    不要使用逻辑接口单元 0。您稍后必须将 VLAN 标记 ID 绑定到在此步骤中指定的设备,并且不能将 VLAN 标记 ID 绑定到单元 0。另请注意,您不会为 S-VLAN 创建 VLAN ID。系统将为相应的逻辑接口自动创建 ID。

  2. 启用接口以传输带有两个 802.1Q VLAN 标记的数据包:
  3. 在接口上启用扩展 VLAN 网桥封装:
    注:

    如果在配置 Q-in-Q 隧道 的同一物理接口上配置企业级配置(如 PVLAN),请使用 。set encapsulation flexible-ethernet-services 请参阅 了解交换机上的灵活以太网服务封装。Flexible Ethernet Services Encapsulation

  4. 启用 S-VLAN 接口以发送和接收未标记的数据包:
  5. 将您在步骤 1 中指定的接口的逻辑接口(单元)绑定到 S-VLAN 自动创建的 VLAN ID:
注:

如果配置了 ,请在逻辑接口上配置封装:flexible-ethernet-servicesvlan-bridge

例如,以下配置使 xe-0/0/0.10 成为 VLAN 10 的成员,在接口 xe-0/0/0 上启用 Q-in-Q 隧道,使 xe-0/0/0 能够接受未标记的数据包,并将 S-VLAN v10 的 VLAN ID 绑定到 xe-0/0/0 的逻辑接口。

现在在 C-VLAN 接口上配置一体化捆绑:

  1. 将 C-VLAN 接口的逻辑接口(单元)分配为 S-VLAN 的成员。

  2. 启用接口以传输带有 802.1Q VLAN 标记的数据包:

  3. 在接口上启用扩展 VLAN 网桥封装:

  4. 启用 C-VLAN 接口以发送和接收未标记的数据包:

  5. 配置逻辑接口以接收和转发 VLAN ID 标记与您指定的 VLAN ID 列表匹配的任何标记数据包:

    警告:

    您最多只能向物理接口应用八个 VLAN 标识符列表。此限制不适用于QFX10000交换机。

  6. 将系统配置为在数据包从 C-VLAN 接口传输到 S-VLAN 时添加 S-VLAN 标记(外部标记):

    注:

    您可以在 上配置 ,但这样做是可选的。vlan-idinput-vlan-map

  7. 将系统配置为在数据包从 S-VLAN 接口(内部)转发到 C-VLAN 接口时移除 S-VLAN 标记:

例如,以下配置使 xe-0/0/1.10 成为 S-VLAN v10 的成员,启用 Q-in-Q 隧道,将来自 C-VLAN 100 到 200 的数据包映射到 S-VLAN 10,并使 xe-0/0/1 能够接受未标记的数据包。如果数据包源自 C-VLAN 100 并且需要通过 S-VLAN 发送,则会将 VLAN ID 为 10 的标记添加到数据包中。将数据包从 S-VLAN 接口(内部)转发到接口 xe-0/0/1 时,VLAN ID 为 10 的标记将被移除。

使用多对多捆绑配置 Q-in-Q 隧道

您可以使用多对多捆绑方法配置 Q-in-Q 隧道,该方法将数据包从多个 C-VLAN 映射到多个 S-VLAN。此方法可以方便地映射一系列 C-VLAN,而无需单独指定每个 C-VLAN。(您也可以使用此方法仅配置一个要映射到 S-VLAN 的 C-VLAN。

首先配置 S-VLAN 并将其分配给接口:

  1. 将逻辑接口(单元)分配为其中一个 S-VLAN 的成员。不要使用逻辑接口单元 0。
    注:

    请注意,您不会为 S-VLAN 创建 VLAN ID。系统将为相应的逻辑接口自动创建 ID。

  2. 对其他 S-VLAN 重复步骤 1。
  3. 启用物理接口以传输带有两个 802.1Q VLAN 标记的数据包:
  4. 在接口上启用扩展 VLAN 网桥封装:
  5. 启用 S-VLAN 接口以发送和接收未标记的数据包:
  6. 将接口的一个逻辑单元绑定到其中一个 S-VLAN 的 VLAN ID。
  7. 重复步骤 6,为其他 S-VLAN 自动创建的 VLAN ID 绑定到接口的其他逻辑单元:

例如,以下配置创建 S-VLAN v10 和 v30 并将其与接口 xe-0/0/0.10 关联,启用 Q-in-Q 隧道,启用 xe-0/0/0 接受未标记的数据包,并将传入的 C-VLAN 数据包映射到 S-VLAN v10 和 v30。

要在 C-VLAN 接口上配置多对多捆绑方法,请为每个客户执行以下步骤:

  1. 将一个 C-VLAN 接口的逻辑接口(单元)分配为一个 S-VLAN 的成员。

  2. 重复步骤 1,将另一个 C-VLAN 接口(物理接口)指定为另一个 S-VLAN 的成员。

  3. 启用接口以传输带有 802.1Q VLAN 标记的数据包:

  4. 在接口上启用扩展 VLAN 网桥封装:

  5. 启用 C-VLAN 接口以发送和接收未标记的数据包:

  6. 对于每个物理接口,配置一个逻辑接口(单元),以接收和转发 VLAN ID 标记与您指定的 VLAN ID 列表匹配的任何标记数据包:

    要仅配置一个要映射到 S-VLAN 的 C-VLAN,请在 VLAN ID 列表后仅指定一个 VLAN ID。

    警告:

    您最多只能向物理接口应用八个 VLAN 标识符列表。此限制不适用于QFX10000交换机。

  7. 对于每个物理接口,将系统配置为在数据包从 C-VLAN 接口传输到 S-VLAN 时添加一个 S-VLAN 标记(外部标记):

  8. 对于每个物理接口,将系统配置为在数据包从 S-VLAN 接口转发到 C-VLAN 接口时移除 S-VLAN 标记:

例如,以下配置使 xe-0/0/1.10 成为 S-VLAN v10 的成员,启用 Q-in-Q 隧道,并将来自 C-VLAN 10 到 20 的数据包映射到 S-VLAN 10。客户 2 的配置使 xe-0/0/2.30 成为 S-VLAN v30 的成员,启用 Q-in-Q 隧道,并将来自 C-VLAN 30 到 40、50 到 60 和 70 到 80 的数据包映射到 S-VLAN 30。两个接口均配置为接受未标记的数据包。

如果数据包源自 C-VLAN 10 并且需要通过 S-VLAN 发送,则会将 VLAN ID 为 10 的标记添加到数据包中。如果数据包从 S-VLAN 接口在内部转发到 xe-0/0/1.10,则会移除 VLAN ID 为 10 的标记。同样的原则也适用于在接口 xe-0/0/2 上配置的 C-VLAN。

注:

请注意,您可以对 S-VLAN 和 C-VLAN 使用相同的标记值。例如,客户 1 的配置将 C-VLAN ID 10 映射到 S-VLAN ID 10。C-VLAN 和 S-VLAN 标记使用单独的命名空间,因此允许此配置。

客户 1 的配置:

客户 2 的配置:

使用 VLAN ID 转换选项配置特定接口映射

您可以通过将数据包从指定的 C-VLAN 映射到指定的 S-VLAN 来配置 Q-in-Q 隧道。此外,您可以将系统配置为将 C-VLAN 标记替换为 S-VLAN 标记,或将 S-VLAN 标记替换为 C-VLAN 标记(而不是双标记)。这称为 VLAN 转换或 VLAN 重写。如果服务提供商连接客户站点的第 2 层网络不支持双标记数据包,VLAN 转换特别有用。

使用 VLAN 转换时,链路的两端通常必须能够适当地交换标记。也就是说,链路的两端都必须配置为将 C-VLAN 标记交换为 S-VLAN 标记,并将 S-VLAN 标记交换为 C-VLAN 标记,以便在传输过程中和到达后对两个方向的流量进行适当的标记。

首先配置 S-VLAN 及其接口:

  1. 将逻辑接口分配为 S-VLAN 的成员。请勿使用单元 0。
    注:

    请注意,您不会为 S-VLAN 创建 VLAN ID。系统将为相应的逻辑接口自动创建 ID。

  2. 启用接口以传输带有 802.1Q VLAN 标记的数据包:
  3. 启用 S-VLAN 接口以发送和接收未标记的数据包:
  4. 在接口上启用扩展 VLAN 网桥封装:
  5. 将您之前指定的接口的逻辑接口(单元)绑定到 S-VLAN 的 VLAN ID:

例如,以下配置将创建 S-VLAN v200,使 xe-0/0/0.200 成为该 VLAN 的成员,在接口 xe-0/0/0 上启用 Q-in-Q 隧道,使 xe-0/0/0 能够接受未标记的数据包,并将 xe-0/0/0 的逻辑接口绑定到 VLAN v200 的 VLAN ID。

现在,在 C-VLAN 接口上使用可选的 VLAN ID 转换配置特定接口映射:

  1. 将 C-VLAN 接口的逻辑接口指定为 S-VLAN 的成员。

  2. 启用接口以传输带有 802.1Q VLAN 标记的数据包:

  3. 启用 C-VLAN 接口以发送和接收未标记的数据包:

  4. 在接口上启用扩展 VLAN 网桥封装:

  5. 配置逻辑接口(单元),以接收和转发 VLAN ID 标记与您指定的 VLAN ID 匹配的任何标记数据包:

  6. 当数据包进入 C-VLAN 接口并转发到 S-VLAN 时,将系统配置为移除现有 C-VLAN 标记并将其替换为 S-VLAN 标记:

  7. 当数据包从 S-VLAN 接口转发到 C-VLAN 接口时,将系统配置为移除现有 S-VLAN 标记并将其替换为 C-VLAN 标记:

  8. 要配置 S-VLAN 并将其与相应的 C-VLAN 接口关联,请执行以下操作:

例如,C-VLAN 接口 xe-0/0/1.200 上的以下配置将启用 Q-in-Q 隧道,使 xe-0/0/1 能够接受未标记的数据包,并将来自 C-VLAN 150 的传入数据包映射到逻辑接口 200,后者是 S-VLAN 200 的成员。此外,当数据包从 C-VLAN 接口 xe-0/0/1 出口并传输到 S-VLAN 接口时,C-VLAN 标记 150 将被删除,并替换为 S-VLAN 标记 200。当数据包从 S-VLAN 接口传输到 C-VLAN 接口时,S-VLAN 标记 200 将被删除,并替换为 C-VLAN 标记 150。

示例:在 QFX 系列交换机上设置 Q-in-Q 隧道

服务提供商可以使用 Q-in-Q 隧道在客户站点之间透明地传递第 2 层 VLAN 流量,而无需移除或更改客户 VLAN 标记或服务等级 (CoS) 设置。数据中心可以使用 Q-in-Q 隧道隔离单个站点内的客户流量,或者当客户流量在不同地理位置的云数据中心之间流动时隔离。

注:

此示例使用的 Junos OS 版本不支持增强型第 2 层软件 (ELS) 配置样式。如果您的交换机运行的软件支持 ELS,请参阅 在支持 ELS 的 QFX 系列、NFX 系列和 EX4600 交换机上配置 Q-in-Q 隧道。https://www.juniper.net/documentation/en_US/junos/topics/task/configuration/qinq-tunneling-qfx-series-els.html

此示例介绍如何设置 Q-in-Q 隧道:

要求

此示例需要一个装有 Junos OS 12.1 或更高版本的 QFX 系列设备。

在开始设置 Q-in-Q 隧道之前,请确保已在相邻交换机上创建并配置了必要的客户 VLAN。请参阅 在交换机上配置 VLAN

概述和拓扑

在此服务提供商网络中,有多个客户 VLAN 映射到一个服务 VLAN。

表 2 列出了示例拓扑的设置。

表 2: 用于设置 Q-in-Q 隧道的拓扑组件
接口 Description

xe-0/0/11.0

标记的 S-VLAN 中继端口

xe-0/0/12.0

面向客户的未标记接入端口

xe-0/0/13.0

面向客户的未标记接入端口

xe-0/0/14.0

标记的 S-VLAN 中继端口

配置

CLI 快速配置

要快速创建和配置 Q-in-Q 隧道,请复制以下命令并将其粘贴到交换机终端窗口中:

程序

分步过程

要配置 Q-in-Q 隧道:

  1. 设置 S-VLAN 的 VLAN ID:

  2. 启用 Q-in-Q 隧道并指定客户 VLAN 范围:

  3. 设置接口的端口模式和 VLAN 信息:

  4. 设置 Q-in-Q 以太网类型值(可选):

成果

检查配置结果:

验证

确认配置工作正常。

验证是否启用了 Q-in-Q 隧道

目的

验证是否已正确启用 Q-in-Q 隧道。

操作

使用以下命令:show vlans

意义

输出指示已启用 Q-in-Q 隧道,VLAN 已标记并显示关联的客户 VLAN。

示例:在 EX 系列交换机上设置 Q-in-Q 隧道

服务提供商可以使用 Q-in-Q 隧道以透明方式将第 2 层 VLAN 流量从客户站点通过服务提供商网络传递到另一个客户站点,而无需移除或更改客户 VLAN 标记或服务等级 (CoS) 设置。您可以在 EX 系列交换机上配置 Q-in-Q 隧道。

此示例介绍如何设置 Q-in-Q:

要求

对于 EX 系列交换机,此示例需要一个装有 Junos OS 9.3 或更高版本的 EX 系列交换机。

在开始设置 Q-in-Q 隧道之前,请确保已创建并配置必要的客户 VLAN。请参阅为 EX 系列交换机配置 VLAN 或为 EX 系列交换机配置 VLANJ-Web 过程)。

概述和拓扑

在此服务提供商网络中,有多个客户 VLAN 映射到一个服务 VLAN。

表 3 列出了示例拓扑的设置。

表 3: 用于设置 Q-in-Q 隧道的拓扑组件
接口 Description

ge-0/0/11.0

标记的 S-VLAN 中继端口

ge-0/0/12.0

面向客户的未标记接入端口

ge-0/0/13.0

面向客户的未标记接入端口

ge-0/0/14.0

标记的 S-VLAN 中继端口

配置

CLI 快速配置

要快速创建和配置 Q-in-Q 隧道,请复制以下命令并将其粘贴到交换机终端窗口中:

程序

分步过程

要配置 Q-in-Q 隧道:

  1. 设置 S-VLAN 的 VLAN ID:

  2. 启用 Q-in-Q 网络并指定客户 VLAN 范围:

  3. 设置接口的端口模式和 VLAN 信息:

  4. 设置 Q-in-Q 以太类型值:

成果

检查配置结果:

验证

要确认配置工作正常,请执行以下任务:

验证是否启用了 Q-in-Q 隧道

目的

验证交换机上是否已正确启用 Q-in-Q 隧道。

操作

使用以下命令:show vlans

意义

输出指示已启用 Q-in-Q 隧道,VLAN 已标记并显示关联的客户 VLAN。

在 QFX 交换机上设置双 VLAN 标记转换配置

从 Junos OS 14.1X53-D40 版开始,您可以使用双 VLAN 标记转换(也称为双 VLAN 标记重写)功能在服务提供商域中部署交换机,从而允许双标记、单标记和未标记的 VLAN 数据包进出交换机。

以下示例配置显示了交换-交换、弹出-交换和交换-推送双标记操作的用法。

支持 QFX 和 EX 交换机的交换-推送/弹出-交换

支持 L2 交换-推送/弹出-交换的 Q-in-Q 隧道是一种特定场景,其中客户 VLAN (C-VLAN) 标记与标记交换 ,并在其上推送服务提供商定义的服务 VLAN (S-VLAN) 标记(用于从客户流向服务提供商站点的流量)。inner-vlan-id 此流量以双标记方式发送到服务提供商网络 (S-VLAN + C-VLAN)。对于从服务提供商网络流向客户网络的流量,S-VLAN 标记将被移除,C-VLAN 标记将替换为在 UNI 逻辑接口上配置的 VLAN ID。

以下示例显示了交换-推送/弹出-交换双标记操作。

  1. 交换-推送 — 对于来自 UNI 的传入单标记帧,C-VLAN (VLAN ID 100) 与逻辑接口上配置的内部 VLAN ID (200) 交换,S-VLAN (VLAN ID 900) 推送到帧。双标记帧从 NNI 出口。
  2. 弹出-交换 — 对于来自 NNI 的传入双标记帧,S-VLAN 标记将从帧弹出 (VLAN ID 900),逻辑接口的 VLAN ID 100 将替换 C-VLAN 标记。单标记帧从 UNI 出口。

如果使用 VLAN ID 列表配置逻辑接口,并且输入 VLAN 映射和输出 VLAN 映射配置为交换-推送/弹出-交换,则会导致意外行为,因为从 UNI 回归的流量配置了逻辑单元号,而不是 VLAN ID 列表中的原始客户 VLAN ID。

验证 Q-in-Q 隧道是否在交换机上正常工作

目的

创建 Q-in-Q VLAN 后,请验证其设置是否正确。

操作

  1. 使用 命令确定是否成功创建了主 VLAN 和辅助 VLAN 配置:show configuration vlans

  2. 使用 命令查看 VLAN 信息和链路状态:show vlans

意义

输出确认 Q-in-Q 调谐已启用且 VLAN 已标记,并列出与标记的 VLAN 关联的客户 VLAN。

变更历史表

是否支持某项功能取决于您使用的平台和版本。 使用 Feature Explorer 查看您使用的平台是否支持某项功能。

版本
说明
19.4R1
从 Junos OS 19.4R1 版开始,QFX10000 系列交换机支持将第三和第四个 Q-in-Q 标记作为有效负载(也称为直通标记)以及现有的两个标记(用于 VLAN 匹配和操作)。
14.1X53-D40
从 Junos OS 14.1X53-D40 版开始,您可以使用双 VLAN 标记转换(也称为双 VLAN 标记重写)功能在服务提供商域中部署交换机,从而允许双标记、单标记和未标记的 VLAN 数据包进出交换机。
14.1X53-D30
从 Junos OS 14.1X53-D30 开始,您可以将同一个接口同时配置为 S-VLAN/NNI 接口和 C-VLAN/UNI 接口。