基于 VLAN 的 EVPN 服务
基于 VLAN 的服务允许将单个广播域一对一映射到单个网桥域。每个 VLAN 都映射到一个 EVPN 实例 (EVI),因此每个 VLAN 都有一个单独的桥接表。Junos OS 17.3R1 之前的版本不支持 VLAN 转换。如果不使用 VLAN 转换,客户边缘 VLAN 必须使用相同的 VLAN ID (VID)。您仍然可以使用始发 VID 发送 MPLS 封装帧。 图 1 展示了一个拓扑结构,其中所有 CE 设备对单个基于 VLAN 的 EVI 使用相同的 CE VID。不需要 VID 转换。
的单个 VID
从 Junos OS 17.3R1 版开始,支持基于 VLAN 的服务和 RFC 7432 中所述的 VID 转换。这意味着 Junos 支持 VID 转换,客户可以为每个 VLAN 设置不同的 VID。如 RFC 中所述,VID 转换必须在出口 PE 设备上执行,而 MPLS 封装的帧也应保留始发 VID。 图 2 展示了一个拓扑结构,其中 CE 设备对单个基于 VLAN 的 EVI 使用不同的 CE-VID。
的多个 VID
有关配置基于 VLAN 的服务的详细信息,请参阅 使用基于 VLAN 的服务配置 EVPN。
以下是单个基于 VLAN 的 EVI 的配置示例。在此示例中, VLAN-id=none 包含的语句用于移除始发 VID 并将 MPLS 帧中的以太网标记 ID 设置为零。这可以确保所有 PE 设备使用相同的 VID,并且不需要 VLAN 转换。
interfaces {
xe-0/0/1 {
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
routing-instances evpn-vlan-based-no-vid {
instance-type evpn;
vlan-id none;
interface xe-0/0/1.100;
route-distinguisher 10.0.0.1:100;
vrf-target target:65303:101100;
protocols evpn;
}
以下是单个基于 VLAN 的 EVI 的配置示例。所有 PE 设备均使用相同的 VID,因此不需要 VLAN 转换。在此示例中,CE-VID 作为 MPLS 帧的一部分使用和发送。
interfaces {
xe-0/0/1 {
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
routing-instances evpn-vlan-based-with-vid {
instance-type evpn;
interface xe-0/0/1.100;
route-distinguisher 10.0.0.1:100;
vrf-target target:65303:101100;
protocols evpn;
}
从 Junos OS 17.3R1 版开始,Junos 支持基于 VLAN 的服务,其转换如 RFC 7432 中所述。以下是严格遵守 RFC 7432 规定的基于 VLAN 的服务配置示例。严格遵守 RFC 7432 要求在出口 PE 设备处进行转换,在 MPLS 帧中携带始发 VID,并将所有 EVPN 路由的以太网标记 ID 设置为零。因此, VLAN-id=none 包括 和 语 no-normalization 句。这会将以太网标签 ID 设置为零,同时确保仍然可以使用不同的 VID。
interfaces {
xe-0/0/1 {
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
output-vlan-map {
swap;
}
}
}
}
routing-instances evpn-vlan-based-normalization-strict-RFC-compliance {
instance-type evpn;
vlan-id none;
no-normalization;
interface xe-0/0/1.100;
route-distinguisher 10.0.0.1:100;
vrf-target target:65303:101100;
protocols evpn;
}
以下是遵循 RFC 7432 的基于 VLAN 的服务配置示例,但原始 VID 在以太网帧中携带的条件除外。原始 VID 将被移除,以太网标签 ID 设置为零。
interfaces {
xe-0/0/1 {
unit 100 {
encapsulation vlan-bridge;
vlan-id 100;
}
}
}
routing-instances evpn-vlan-based-normalization-loose-RFC-compliance {
instance-type evpn;
vlan-id none;
interface xe-0/0/1.100;
route-distinguisher 10.0.0.1:100;
vrf-target target:65303:101100;
protocols evpn;
}
从 Junos OS 24.2R1 版开始,当您需要基于 VLAN 且vlan-id有效的服务可提供第 3 层网关功能时,可以使用 advertise-zero-ethernet-tag 配置语句。此外,控制平面 EVPN 路由的第 2 层网关功能也符合 RFC 7432 标准,以以太网标记 ID 值为 0 进行播发。您可以将此语句用于instance-type evpn路由实例,并且必须具有有效vlan-id且no-normalization已配置的语句。
有关支持此功能的产品的完整列表,请参阅功能浏览器 带 IRB 接口的基于 VLAN 的 EVPN 。
以下是使用 advertise-zero-ethernet-tag 语句和有效 vlan-id:
[edit routing-instances evpna] instance-type evpn; protocols { evpn { advertise-zero-ethernet-tag; } } vlan-id 600; routing-interface irb.600; no-normalization; interface ge-0/0/1.600; route-distinguisher 1:1; vrf-target target:1:1;