静态 VXLAN
瞻博网络在小型多机箱链路聚合组 (MC-LAG) 网络和第 2 层 (L2) VXLAN 网关设备上的小型网络中支持静态虚拟虚拟可扩展 LAN (VXLAN) 功能。
了解静态 VXLAN
静态虚拟可扩展 LAN (VXLAN)(也称为单播 VXLAN)使您能够为特定流量静态配置源和目标虚拟隧道端点 (VTEP)。源 VTEP 使用 VXLAN 标头对 L2 数据包进行封装,目标 VTEP 对数据包进行解封装,从而通过底层第 3 层 IP 网络以隧道传输数据包。
尽管此功能也称为单播 VXLAN,但静态 VXLAN 隧道可以支持单播和广播、未知单播和组播 (BUM) 流量。我们支持使用入口复制的 BUM 流量复制和转发。
从 Junos OS 14.1X53-D40 版本开始,瞻博网络 支持在充当 L2 VXLAN网关设备的设备上进行静态VXLAN。在这里,我们展示在经典主干和叶交换矩阵中使用小型 MC-LAG 网络或叶的示例环境。
静态 VXLAN 的优势
-
静态 VXLAN 不是使用以太网 VPN (EVPN) 控制平面来学习主机的 MAC 地址,而是在VXLAN数据平面中使用泛洪学习技术。因此,使用静态 VXLAN 可降低控制平面的复杂性。
-
对于小型 MC-LAG 网络,EVPN 的配置和维护可能过于复杂。静态 VXLAN 具有 VXLAN 的优势,并且相对容易于设计和配置。
静态 VXLAN 的工作原理
要在用作 VTEP 的瞻博网络设备上启用静态 VXLAN,您必须配置:
-
一个列表,其中包含一个或多个远程 VTEP,本地VTEP可与之组成VXLAN隧道。
-
入口节点复制。
-
VTEP 的环路接口 (lo0):
-
将任播 IP 地址配置为主接口。
-
将此接口指定为 VXLAN 隧道的源接口。
-
当 VTEP 收到 BUM 数据包时,VTEP 会使用入口节点复制将数据包复制并泛洪到列表中静态定义的远程 VTEP。依次,远程 VTEP 将数据包泛洪到每个 VXLAN 中 VTEP 感知的主机。
VTEP 学习以下内容的 MAC 地址:
-
远程 VTEP 列表中的 VTEP 中的远程主机,VTEP。
-
来自本地接入接口的本地主机
在学习到主机的 MAC 地址后,设备会将 MAC 地址添加到以太网交换表中。
您可以使用以下 CLI show 命令查看有关远程静态 VXLAN VTEP 接口的信息:
-
show ethernet-switching vxlan-tunnel-end-point-remote— 显示设备上的远程 VTEP,包括其 IP 地址和 VTEP 接口名称。请参阅 RVTEP-IP 和接口输出字段。 -
show interfaces vtep-interface-name— 显示 VTEP 接口的状态。您配置为静态VXLAN VTEP 的VTEP接口会在此命令的VXLAN端点类型输出字段中显示值 Configured-remote。
例如,在名为 ri1 的 L2 路由实例中为 VLAN 200 和 300 配置了静态VXLAN远程 VTEP:
user@leaf-1> show ethernet-switching vxlan-tunnel-end-point remote
Logical System Name Id SVTEP-IP IFL L3-Idx SVTEP-Mode ELP-SVTEP-IP
<default> 0 192.168.1.1 lo0.0 0
RVTEP-IP IFL-Idx Interface NH-Id RVTEP-Mode ELP-IP Flags
192.168.2.1 19307 vtep.32771 53035 RNVE
RVTEP-IP L2-RTT IFL-Idx Interface NH-Id RVTEP-Mode ELP-IP Flags
192.168.2.1 ri1 671522819 vtep-53.32771 53035 RNVE
VNID MC-Group-IP
200 0.0.0.0
300 0.0.0.0
user@leaf-1> show interfaces vtep.32771
Logical interface vtep.32771 (Index 20108) (SNMP ifIndex 537)
Flags: Up Encapsulation: Unspecified
VXLAN Endpoint Type: Configured-remote, VXLAN Endpoint Address: 192.168.2.1, L3 Routing Instance: default
Input packets : 0
Output packets: 0
Protocol ethernet-switching, MTU: Unlimited
Flags: None
小型 MC-LAG 网络静态 VXLAN 用例
在这里,我们展示一个使用 MC-LAG 的小型网络中全局级别的静态 VXLAN。
的 MC-LAG 网络示例
在 图 1 中的 MC-LAG 网络中:
-
底层包括主机(主机 1 到主机 4),每个主机都与叶设备多宿主,并且是 VXLAN 的成员。
-
中间层包括叶设备(叶 1 到叶 4),每个设备都充当 L2 VXLAN 网关。此外,叶 1 和叶 2 形成 MC-LAG,并且两个叶设备共同充当 VTEP 1。叶 3 和叶 4 形成另一个 MC-LAG 并作为 VTEP 2 发挥作用。
-
顶层包括形成 MC-LAG 的主干设备(主干 1 和主干 2)。这些设备用作 IP 路由器。
请注意以下有关配置静态 VXLAN 的枝叶 1 到枝叶 4 的配置:
-
这里启用静态 VXLAN,而不是 EVPN-VXLAN。
-
每个叶设备都是 MC-LAG 成员,并作为 VTEP 与其 MC-LAG 对等方一起运行。也就是说,两个物理叶设备组成每个虚拟 VTEP。这种情况会以下列方式影响配置:
-
在形成 VTEP 的每个叶设备上,您必须配置相同的环路地址。
-
在构成 VTEP 的每个叶设备上,您必须配置相同的远程 VTEP 列表。
有关此用例的示例配置,请参阅 在全局级别配置静态 VXLAN。
-
-
我们启用入口节点复制,而不是 IP 组播功能。
VLAN 或网桥域级静态 VXLAN 用例
在某些平台上,您可以在 VLAN 或网桥域级别设置不带 EVPN 的 L2 VXLAN 网关。在这种情况下,您可以在全局级别静态配置一个或多个远程 VTEP 的列表,并将该列表映射到特定的 VLAN 或网桥域。
您不会将 EVPN 配置为静态 VXLAN 配置的一部分。但是,您可以在同一设备上使用 EVPN-VXLAN 和静态 VXLAN 配置,只要这两个配置使用不同的远程对等 VTEP 集即可。
首先,使用语句静态 remote-vtep-list [...] 配置远程 VTEP 的全局列表。然后,使用该 static-remote-vtep-list [...] 语句在 VLAN 或网桥域级别映射相同的远程 VTEP 列表。每个 VLAN 还必须具有 VXLAN 网络标识符 (VNI) 映射。
在运行 Junos OS 演化版的 PTX10000 系列路由器上的 EVPN-VXLAN 部署中配置静态 VXLAN 时,还必须在层次结构级别启用[edit forwarding-options] 该tunnel-termination选项。这样可以在全局级别终止所有接口上的隧道。
我们支持在全局级别、VLAN 级别和网桥域级别配置静态 VXLAN,具体如下所示:
| 静态 VXLAN 配置 | 支持的平台 |
|---|---|
| 在默认交换机实例中 |
MX 系列 QFX 系列 |
| 在路由实例中 |
MX 系列 运行 Junos OS Evolved 的 PTX10000 系列路由器 |
| 在全球层面 |
MX 系列 QFX 系列 运行 Junos OS Evolved 的 PTX10000 系列路由器 |
| 在 VLAN 级别 |
MX 系列 QFX 系列 运行 Junos OS Evolved 的 PTX10000 系列路由器 |
| 在网桥域级别 |
MX 系列 |
在 VLAN 或网桥域级别指定远程 VTEP 时:
-
在默认交换机实例中:
您还必须在层次结构级别的
[edit switch-options]默认交换机实例的全局级别指定相同的 VTEP。 -
在路由实例中
virtual-switch:您还必须在层次结构级别的
[edit routing-instances name]同一路由实例的全局级别指定相同的 VTEP。
要在 VXLAN 或网桥域级别的静态 VXLAN 隧道上复制和泛洪 BUM 流量,还必须在该级别配置入口节点复制模式(ingress-node-replication 选项)。此模式将 BUM 流量泛洪域限制为仅映射到特定 VLAN 或网桥域的那些 VTEP。
有关此用例的配置示例,请参阅 在 L2 VXLAN 网关设备上的 VLAN 或网桥域级别配置静态 VXLAN。
采用静态 VXLAN 的脊叶式网络中的 Q-in-Q VLAN 隧道
从 Junos OS 23.4R1 版开始,Junos OS 支持在带有静态 VXLAN 隧道的 MC-LAG 主干和分叶网络中建立 Q-in-Q 隧道。您必须使用服务提供商样式的配置来配置 Q-in-Q 隧道。
服务提供商使用 Q-in-Q 隧道(VLAN 转换),通过添加另一层 802.1 Q 标记,将客户流量隔离或捆绑到更少或不同的 VLAN 中。在 Q-in-Q 隧道中,当数据包从客户 VLAN (C-VLAN) 传输到服务提供商的 VLAN 时,Junos OS 会向数据包添加服务提供商定义的 VLAN (S-VLAN) 标记。这个附加的 802.1Q 标记允许服务提供商在位于不同地理位置的两个客户站点之间创建 L2 以太网连接。当数据包离开服务提供商的 VLAN 时,Junos OS 会移除额外的 802.1Q (S-VLAN) 标记。
图 2 显示了 Junos 设备如何在主干和叶拓扑中处理 Q-in-Q VLAN 流量。枝叶 1 和枝叶 2 配置为静态 VXLAN 网关设备。叶 1 和叶 2 也被配置为 MC-LAG 对等方,以提供冗余和负载平衡。叶设备上的 VTEP 负责在向主干发送流量时将 S-VLAN 标记推送到 C-VLAN 数据包,并在收到来自主干的数据包时弹出 S-VLAN 标记。如果叶设备和客户边缘设备之间出现链路故障,数据包将被发送至另一个叶设备。在这种情况下,叶设备保留 S-VLAN 标记。
中的 VLAN
有关在此功能中配置不同元素的更多信息,请参阅:
在全局级别配置静态 VXLAN
您可以使用 L2 VXLAN网关设备上的静态VXLAN功能来实现VXLAN。下面我们将展示在小型多机箱链路聚合组 (MC-LAG) 网络中使用静态VXLAN。在 MC-LAG 网络中,瞻博网络设备充当源和目标虚拟隧道端点 (VTEP)。在此环境中,静态 VXLAN 有两个用途:
-
以了解 VXLAN 中主机的 MAC 地址。为完成此任务,静态 VXLAN 使用入口节点复制功能在整个 VXLAN 中泛洪 BUM 数据包。VTEP 从远程 VTEP 列表中的 VTEP 中学习远程主机的 MAC 地址,并从本地接入接口学习本地主机的 MAC 地址,VTEP 从远程主机的 MAC 地址中学习。在了解到主机的 MAC 地址后,该 MAC 地址会添加到以太网交换表中。
-
使用 VXLAN 标头封装 L2 数据包,然后对数据包进行解封装,以便通过底层第 3 层 IP 网络通过隧道传输数据包。要完成此任务,请在每个 VTEP 上配置静态定义的远程 VTEP 列表,本地 VTEP 可以使用这些 VTEP 来形成 VXLAN 隧道。
此示例配置显示了使用默认交换机实例(而非显式配置的 L2 路由实例)的步骤和配置示例。
有关使用不同用例(VLAN 或网桥域级别的静态VXLAN)的示例配置,请参阅 在 L2 VXLAN网关设备上配置静态VXLAN 。该配置显示了配置步骤以及具有 类型 virtual-switch为 的 L2 路由实例的示例配置。
开始之前
-
验证作为叶设备的瞻博网络设备上是否未启用以太网 VPN (EVPN)。
-
验证叶设备上是否未启用 IP 组播。
在 图 3 所示的示例 MC-LAG 网络中,请注意每个 VTEP(VTEP 1 和 VTEP 2)包含两个物理叶设备。也就是说,两个物理叶设备作为单个虚拟实体运行。因此,对于组成 VTEP 的两台叶设备,您必须配置以下内容:
-
相同的环路任播 IP 地址。
-
相同的远程 VTEP 列表。
的 MC-LAG 网络示例
表 2 显示了在网络中每个叶设备上配置的示例环路地址和远程 VTEP 列表。
| 静态 VXLAN 参数 |
VTEP 1: 叶 1 配置 |
VTEP 1: 叶 2 配置 |
VTEP 2: 叶 3 配置 |
VTEP 2: 枝叶 4 配置 |
|---|---|---|---|---|
| 环路任播 IP 地址 |
192.168.99.110/32 |
192.168.99.110/32 |
192.168.99.120/32 |
192.168.99.120/32 |
| 远程 VTEP 列表 |
192.168.99.120 |
192.168.99.120 |
192.168.99.110 |
192.168.99.110 |
此过程重点介绍配置静态 VXLAN 功能。本文不显示如何配置外设,而是配置相关实体,如接口、VLAN 等。但是,该过程之后的示例配置包括更全面的配置,包括相关实体。
要在叶设备上启用静态 VXLAN,请执行以下操作:
Sample Static VXLAN Configuration
这些 show configuration 输出片段显示叶 1 和 2 (VTEP 1) 的静态 VXLAN 示例配置,并包括 表 2 中列出的参数。
interfaces {
. . .
ae0 {
unit 0 {
family ethernet-switching {
interface-mode trunk;
vlan {
members 100 200;
}
}
}
}
. . .
lo0 {
unit 0 {
family inet {
address 192.168.99.110/32 {
primary;
}
}
}
}
}
. . .
switch-options {
vtep-source-interface lo0.0;
remote-vtep-list 192.168.99.120;
}
. . .
vlans {
vlan100 {
vlan-id 100;
vxlan {
vni 1100;
ingress-node-replication;
}
}
vlan200 {
vlan-id 200;
vxlan {
vni 2200;
ingress-node-replication;
}
}
}
在 L2 VXLAN 网关设备上的 VLAN 或网桥域级别配置静态 VXLAN VXLAN
在小型主干和叶网络中,您可以在充当源和目标虚拟隧道端点 (VTEP) 的 L2 VXLAN网关设备上启用静态VXLAN功能。L2 VXLAN网关设备通过VXLAN隧道通过底层第 3 层 IP 网络隧道 L2 数据包:
-
在将数据包发送到远程 VTEP 时,使用 VXLAN 标头封装 L2 数据包。
-
从隧道接收数据包以发送至目标主机时对数据包进行解封。
在这种情况下,对于 L2 VXLAN 网关设备上的每个 VTEP,在全局级别静态配置本地 VTEP 可与之组成 VXLAN 隧道的远程 VTEP 列表。然后,将 VTEP 列表映射到 L2 路由实例中的特定 VLAN 或网桥域。
-
使用以下语句静态
remote-vtep-list配置远程 VTEP 的全局列表,如下所示:在默认交换机实例中:
set switch-options remote-vtep-list [vtep-ip-addr1 <vtep-ip-addr2 ...>]
在路由实例中
virtual-switch:set <routing-instances name> remote-vtep-list [vtep-ip-addr1 <vtep-ip-addr2 ...>]
-
将远程 VTEP 列表映射到特定的 VLAN 或网桥域,如下所示:
-
使用 VXLAN VNI 映射配置 VLAN
-
使用以下
static-remote-vtep-list语句将远程 VTEP 列表映射到 VLAN:在默认交换机实例中:
set vlans vlan-name vxlan static-remote-vtep-list [vtep-ip-addr1 <vtep-ip-addr2 ...>]
在路由实例中
virtual-switch:set <routing-instances name> vlans vlan-name vxlan static-remote-vtep-list [vtep-ip-addr1 <vtep-ip-addr2 ...>]
-
请参阅 VLAN 或网桥域级静态 VXLAN 用例 ,了解静态 VXLAN 在这种情况下的工作原理。请参阅 表 1 ,了解支持的静态 VXLAN 配置。
如果使用该 remote-vtep-list 语句在路由实例中配置远程 VTEP 的全局列表,但未同时为路由实例中的 VLAN 配置该 static-remote-vtep-list 语句,则该 VLAN 将继承所有全局配置的远程 VTEP。
此处提供两台 L2 VXLAN 网关设备的配置步骤和简单示例配置,以便在 VLAN 级别在它们之间建立静态 VXLAN 隧道。 表 3 显示了此配置的参数。我们使用 L2 路由实例 virtual-switch,因此您可以在层次结构级别配置 [edit routing-instances name] 路由实例中的大多数元素。每个步骤都会记录默认交换机实例的语句层次结构差异。
| 设备 | lo0 IP 地址 | L2 实例名称 | 关联 VLAN | VLAN 到 VNI 映射 | 远程 VTEP IP 地址 |
|---|---|---|---|---|---|
| VXLAN-GW1 | 192.168.4.1 | RT1 | v100(VLAN ID 100) | 100 | 192.168.5.1 |
| v200(VLAN ID 200) | 200 | ||||
| VXLAN-GW2 | 192.168.5.1 | RT1 | v100(VLAN ID 100) | 100 | 192.168.4.1 |
| v200(VLAN ID 200) | 200 |
请参阅以下示例 set 命令配置块,其中显示了 VXLAN-GW1 和 VXLAN-GW2 上的互补配置。使用 表 3 中的参数,这些命令在 VLAN 级别的 VXLAN 和 VLAN 级别的 L2 路由实例 rt1 中的两台设备之间建立静态 VXLAN 隧道。
VXLAN-GW1:
set interfaces et-0/0/3 unit 0 family inet address 10.1.1.1/24 set interfaces et-0/0/7 unit 0 family ethernet-switching interface-mode trunk set interfaces et-0/0/7 unit 0 family ethernet-switching vlan members 100 set interfaces et-0/0/7 unit 0 family ethernet-switching vlan members 200 set interfaces lo0 unit 0 family inet address 192.168.4.1/32 primary set interfaces lo0 unit 0 family inet address 192.168.4.1/32 preferred set routing-instances rt1 instance-type virtual-switch set routing-instances rt1 vtep-source-interface lo0.0 set routing-instances rt1 remote-vtep-list 192.168.5.1 set routing-instances rt1 interface et-0/0/7.0 set routing-instances rt1 vlans v100 vlan-id 100 set routing-instances rt1 vlans v100 vxlan vni 100 set routing-instances rt1 vlans v100 vxlan ingress-node-replication set routing-instances rt1 vlans v100 vxlan static-remote-vtep-list 192.168.5.1 set routing-instances rt1 vlans v200 vlan-id 200 set routing-instances rt1 vlans v200 vxlan vni 200 set routing-instances rt1 vlans v200 vxlan ingress-node-replication set routing-instances rt1 vlans v200 vxlan static-remote-vtep-list 192.168.5.1 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface et-0/0/3.0
VXLAN-GW2:
set interfaces ge-0/0/1 unit 0 family inet address 10.1.1.2/24 set interfaces ge-0/0/3 unit 0 family ethernet-switching interface-mode trunk set interfaces ge-0/0/3 unit 0 family ethernet-switching vlan members 100 set interfaces ge-0/0/3 unit 0 family ethernet-switching vlan members 200 set interfaces lo0 unit 0 family inet address 192.168.5.1/32 primary set interfaces lo0 unit 0 family inet address 192.168.5.1/32 preferred set routing-instances rt1 instance-type virtual-switch set routing-instances rt1 vtep-source-interface lo0.0 set routing-instances rt1 remote-vtep-list 192.168.4.1 set routing-instances rt1 interface ge-0/0/3.0 set routing-instances rt1 vlans v100 vlan-id 100 set routing-instances rt1 vlans v100 vxlan vni 100 set routing-instances rt1 vlans v100 vxlan ingress-node-replication set routing-instances rt1 vlans v100 vxlan static-remote-vtep-list 192.168.4.1 set routing-instances rt1 vlans v200 vlan-id 200 set routing-instances rt1 vlans v200 vxlan vni 200 set routing-instances rt1 vlans v200 vxlan ingress-node-replication set routing-instances rt1 vlans v200 vxlan static-remote-vtep-list 192.168.4.1 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-0/0/1.0
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。