虚拟路由实例
了解 EX 系列交换机上的虚拟路由实例
虚拟路由实例允许管理员将瞻博网络 EX 系列以太网交换机划分为多个独立的虚拟路由器,每个路由器都有自己的路由表。将设备拆分为多个虚拟路由实例可以隔离通过网络传输的流量,而无需多个设备对网络进行分段。
您可以使用虚拟路由实例隔离网络上的客户流量,并将特定于客户的实例绑定到客户拥有的接口。
虚拟路由和转发 (VRF) 通常与第 3 层子接口结合使用,从而可以区分单个物理接口上的流量并与多个虚拟路由器关联。每个逻辑第 3 层子接口只能属于一个路由实例。
EX 系列交换机支持 IPv4 和 IPv6 单播和组播 VRF 流量。有关每个 Junos OS 版本的交换机支持的 VRF 的详细信息,请参阅 功能浏览器 。
另请参阅
在 EX 系列交换机上配置虚拟路由实例
使用虚拟路由和转发 (VRF) 将一台 EX 系列交换机划分为多个虚拟路由实例。VRF 允许您隔离遍历网络的流量,而无需使用多个设备对网络进行分段。所有第 3 层接口均支持 VRF。
开始之前,请确保设置 VLAN。请参阅为 EX 系列交换机配置 VLAN、为 EX 系列交换机配置 VLAN 并支持 ELS(CLI 过程)或为 EX 系列交换机配置 VLAN(J-Web 过程)。
要配置虚拟路由实例:
示例:使用虚拟路由实例在 EX 系列交换机上的 VLAN 之间进行路由
虚拟路由实例允许每台 EX 系列交换机在一台设备上拥有多个路由表。借助虚拟路由实例,您可以对网络进行分段以隔离流量,而无需设置其他设备。
此示例介绍如何创建虚拟路由实例:
要求
此示例使用以下硬件和软件组件:
一台 EX 系列交换机
适用于 EX 系列交换机的 Junos OS 9.2 或更高版本
在创建虚拟路由实例之前,请确保您已:
概述和拓扑
在大型办公室中,您可能需要多个 VLAN 来正确管理流量。此配置示例显示了一种简单拓扑,其中 LAN 被分段为两个 VLAN,每个 VLAN 都与 EX 系列交换机上的接口和虚拟路由实例相关联。此示例还说明如何使用策略语句将路由从一个虚拟路由实例导入到另一个虚拟路由实例。
配置
CLI 快速配置
要快速创建和配置虚拟路由实例,请复制以下命令并将其粘贴到交换机终端窗口中:
[edit] set interfaces ge-0/0/3 vlan-tagging set interfaces ge-0/0/3 unit 0 vlan-id 1030 family inet address 10.1.1.1/24 set interfaces ge-0/0/3 unit 1 vlan-id 1031 family inet address 10.1.1.1/24 set interfaces ge-0/0/1 unit 0 family inet address 10.11.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 10.12.1.1/24 set routing-instances r1 instance-type virtual-router set routing-instances r1 interface ge-0/0/1.0 set routing-instances r1 interface ge-0/0/3.0 set routing-instances r1 routing-options instance-import import-from-r2 set routing-instances r2 instance-type virtual-router set routing-instances r2 interface ge-0/0/2.0 set routing-instances r2 interface ge-0/0/3.1 set routing-instances r2 routing-options instance-import import-from-r1 set policy-options policy-statement import-from-r1 term 1 from instance r1 set policy-options policy-statement import-from-r1 term 1 then accept set policy-options policy-statement import-from-r2 term 1 from instance r2 set policy-options policy-statement import-from-r2 term 1 then accept
程序
分步过程
要配置虚拟路由实例:
创建 VLAN 标记接口:
[edit]user@switch# set interfaces ge-0/0/3 vlan-tagging
在要包含在每个路由实例中的接口上创建一个或多个子接口:
[edit]user@switch# set interfaces ge-0/0/3 unit 0 vlan-id 1030 family inet address 10.1.1.1/24 user@switch# set interfaces ge-0/0/3 unit 1 vlan-id 1031 family inet address 10.1.1.1/24 user@switch# set interfaces ge-0/0/1 unit 0 family inet address 10.11.1.1/24 user@switch# set interfaces ge-0/0/2 unit 0 family inet address 10.12.1.1/24
创建两个虚拟路由实例:
[edit]user@switch# set routing-instances r1 instance-type virtual-router user@switch# set routing-instances r2 instance-type virtual-router
设置虚拟路由实例的接口:
[edit]user@switch# set routing-instances r1 interface ge-0/0/1.0 user@switch# set routing-instances r1 interface ge-0/0/3.0 user@switch# set routing-instances r2 interface ge-0/0/2.0 user@switch# set routing-instances r2 interface ge-0/0/3.1
将策略应用于导入到每个虚拟路由实例中的路由:
[edit]user@switch# set routing-instances r1 routing-options instance-import import-from-r2 user@switch# set routing-instances r2 routing-options instance-import import-from-r1
创建一个将路由从路由实例 r1 导入到 r2 的策略,以及另一个将路由从路由实例 r2 导入到 r1 的策略:
[edit]user@switch# set policy-options policy-statement import-from-r1 term 1 from instance r1 user@switch# set policy-options policy-statement import-from-r1 term 1 then accept user@switch# set policy-options policy-statement import-from-r2 term 1 from instance r2 user@switch# set policy-options policy-statement import-from-r2 term 1 then accept
结果
检查配置结果:
user@switch> show configuration interfaces { ge-0/0/1 { unit 0 { family inet { address 10.11.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 10.12.1.1/24; } } } ge-1/0/3 { vlan-tagging; unit 0 { vlan-id 1030; family inet { address 10.1.1.1/24; } } unit 1 { vlan-id 1031; family inet { address 10.1.1.1/24; } } } } policy-options { policy-statement import-from-r1 { term 1 { from instance r1; then accept; } } policy-statement import-from-r2 { term 1 { from instance r2; then accept; } } } routing-instances { r1 { instance-type virtual-router; interface ge-0/0/1.0; interface ge-0/0/3.0; routing-options { instance-import import-from-r2; } } r2 { instance-type virtual-router; interface ge-0/0/2.0; interface ge-0/0/3.1; routing-options { instance-import import-from-r1; } } } } }
验证
要确认配置工作正常,请执行以下任务:
验证是否已创建路由实例
目的
验证是否已在交换机上正确创建虚拟路由实例。
操作
show route instance
使用以下命令:
user@switch> show route instance Instance Type Primary RIB Active/holddown/hidden master forwarding inet.0 6/0/0 iso.0 1/0/0 inet6.0 2/0/0 ... r1 virtual-router r1.inet.0 7/0/0 r2 virtual-router r2.inet.0 7/0/0
意义
将显示创建的每个路由实例及其类型、有关其是否处于活动状态的信息及其主路由表。
验证虚拟路由实例是否在 EX 系列交换机上工作
目的
创建虚拟路由实例后,请确保其设置正确。
操作
使用
show route instance
命令列出所有路由实例及其属性:user@switch> show route instance Instance Type Primary RIB Active/holddown/hidden master forwarding inet.0 3/0/0 __juniper_private1__ forwarding __juniper_private1__.inet.0 1/0/3 __juniper_private2__ forwarding instance1 forwarding r1 virtual-router r1.inet.0 1/0/0 r2 virtual-router r2.inet.0 1/0/0
使用
show route forwarding-table
命令查看每个路由实例的转发表信息:user@switch> show route forwarding-table Routing table: r1.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif default perm 0 rjct 539 2 0.0.0.0/32 perm 0 dscd 537 1 10.1.1.0/24 ifdn 0 rslv 579 1 ge-0/0/3.0 10.1.1.0/32 iddn 0 10.1.1.0 recv 577 1 ge-0/0/3.0 10.1.1.1/32 user 0 rjct 539 2 10.1.1.1/32 intf 0 10.1.1.1 locl 578 2 10.1.1.1/32 iddn 0 10.1.1.1 locl 578 2 10.1.1.255/32 iddn 0 10.1.1.255 bcst 576 1 ge-0/0/3.0 233.252.0.1/32 perm 0 233.252.0.1 mcst 534 1 255.255.255.255/32 perm 0 bcst 535 1
意义
输出确认虚拟路由实例已创建且链路已启动,并显示路由表信息。