第 3 层 VPN 上的 IPv6 流量
了解 IPv6 3 层 VPN
第 3 层 VPN 的 PE 客户边缘路由器之间的接口可配置为承载 IP 版本 6 (IPv6) 流量。IP 允许不同网络上多个节点无缝互操作。IPv4 当前用于内部网、专用网以及互联网。IPv6 是 IPv4 的后继者,主要基于 IPv4。
在 IPv6 瞻博网络实施中,服务提供商实施MPLS IPv4 骨干网,为 IPv6 客户提供 VPN 服务。PE 路由器同时具有 IPv4 和 IPv6 功能。它们维护其 IPv6 站点 IPv6 的 IPv6 VPN 路由和转发 (VRF) 表,然后在 MPLS 帧中封装 IPv6 流量,随后MPLS核心网络。基于 MPLS 的 IPv6 VPN 路由也称为 6VPE。
第 3 层 VPN 的 IPv6 受 BGP和静态路由支持。
RFC 4659、 BGP-MPLS IP 虚拟专用网 (VPN) IPv6 VPN扩展 中介绍了第 3 层 VPN 的 IPv6。
配置第 3 层 VPN 以承载 IPv6 流量
您可以在第 3 层 VPN 的 PE 和 客户边缘 路由器之间配置 IP 版本 6 (IPv6)。使用 语句配置会话时,PE 路由器BGP PE 路由器到 PE family inet6-vpn
路由器。路由器客户边缘必须能够接收 IPv6 信息流。您可以在 PE BGP路由器之间配置路由或客户边缘路由。
以下部分介绍如何在 PE 路由器之间配置 IPv6 VPN:
在 PE 路由器上配置 IPv6
要配置 PE 路由器与路由器之间的 IPv6 客户边缘,在 PE 路由器上的配置中包括 family inet6-vpn
语句:
family inet6-vpn { (any | multicast | unicast) { aggregate-label community community-name; prefix-limit maximum prefix-limit; rib-group rib-group-name; } }
有关可配置此语句的层次结构级别列表,请参阅此语句的语句汇总部分。
您还必须包含 ipv6-tunneling
语句:
ipv6-tunneling;
您可以在以下层次结构级别中包括此语句:
[edit protocols mpls]
[edit logical-systems logical-system-name protocols mpls]
配置 PE 路由器与路由器客户边缘连接
要支持 IPv6 路由,您必须为 BGP 3 层 VPN 中的 客户边缘 OSPF 路由器之间的连接配置 IS-IS、IS-IS 或静态路由。您可以配置BGP来仅处理 IPv6 路由或 IP 版本 4 (IPv4) 和 IPv6 路由。
有关此配置IS-IS 示例:配置IS-IS,
以下部分介绍如何配置BGP和静态路由:
在 PE BGP上配置路由器以处理 IPv6 路由
要BGP 3 层 VPN 路由实例中配置路由器以处理 IPv6 路由,请添加 bgp
以下语句:
bgp { group group-name { local-address IPv6-address; family inet6 { unicast; } peer-as as-number; neighbor IPv6-address; } }
您可以在以下层次结构级别中包括此语句:
[edit routing-instances routing-instance-name protocols]
[edit logical-systems logical-system-name routing-instances routing-instance-name protocols]
在 PE BGP IPv4 和 IPv6 路由上配置路由选项
要BGP第 3 层 VPN 路由实例中的路由来同时处理 IPv4 和 IPv6 路由,请 bgp
添加 语句:
bgp { group group-name { local-address IPv4-address; family inet { unicast; } family inet6 { unicast; } peer-as as-number; neighbor address; } }
您可以在以下层次结构级别中包括此语句:
[edit routing-instances routing-instance-name protocols]
[edit logical-systems logical-system-name routing-instances routing-instance-name protocols]
[edit logical-systems]
层次结构级别不适用于 ACX 系列路由器。
在 PE OSPF上配置版本 3
要配置 OSPF 3 层 VPN 路由实例中的第 3 版以处理 IPv6 路由,请 ospf3
添加语句:
ospf3 { area area-id { interface interface-name; } }
您可以在以下层次结构级别中包括此语句:
[edit routing-instances routing-instance-name protocols]
[edit logical-systems logical-system-name routing-instances routing-instance-name protocols]
[edit logical-systems]
层次结构级别不适用于 ACX 系列路由器。
在 PE 路由器上配置静态路由
要配置到第 3 层 VPN 路由实例客户边缘路由器的静态路由,请添加 routing-options
语句:
routing-options { rib routing-table.inet6.0 { static { defaults { static-options; } } } }
您可以在以下层次结构级别中包括此语句:
[edit routing-instances routing-instance-name]
[edit logical-systems logical-system-name routing-instances routing-instance-name]
[edit logical-systems]
层次结构级别不适用于 ACX 系列路由器。
在接口上配置 IPv6
您需要将 PE 路由器接口上的 IPv6 配置为 客户边缘 路由器,在 pe 路由器客户边缘接口上配置 IPv6。
要配置用于处理 IPv6 路由的接口,请包含 family inet6
语句:
family inet6 { address ipv6-address; }
您可以在以下层次结构级别中包括此语句:
[edit interfaces interface-name unit unit-number]
[edit logical-systems logical-system-name interfaces interface-name unit unit-number]
[edit logical-systems]
层次结构级别不适用于 ACX 系列路由器。
如果将第 3 层 VPN 配置为同时处理 IPv4 和 IPv6 路由,请配置接口以同时处理 IPv4 和 IPv6 路由,请 unit
添加 语句:
unit unit-number { family inet { address ipv4-address; } family inet6 { address ipv6-address; } }
您可以在以下层次结构级别中包括此语句:
[edit interfaces interface-name]
[edit logical-systems logical-system-name interfaces interface-name]
[edit logical-systems]
层次结构级别不适用于 ACX 系列路由器。
示例:使用 IBGP 和独立域通过 IPv4 核心建立隧道 3 层 VPN IPv6 孤岛
此示例展示如何配置网络Junos OS第 3 层 VPN IPv4 网络来隧道 IPv6。内部 BGP (IBGP) 在客户边缘 (客户边缘) 和提供商边缘 (PE) 设备之间使用,如互联网草案 draft-marques-ppvpn-ibgp-version.txt 中所述 ,RFC2547bis网络使用内部 BGP 作为 PE-客户边缘 协议,而不是更典型的外部 BGP (EBGP) PE-客户边缘 连接。
要求
配置此示例之前,不需要除设备初始化之外的特殊配置。
参与第 3 层 VPN 并在其配置中具有语句的所有 PE 路由器必须运行 Junos OS independent-domain
6.3 或更高版本。
概述
此示例显示了使路由器能够参与客户 VPN 自治系统 (AS) 域和通过 3 层 VPN 透明交换路由信息的方法,客户网络属性对运营商网络不可见,并且客户网络不会看到运营商网络属性。
作为一项附加要求,此示例中的客户网络基于 IPv6,而提供商网络则使用 IPv4。
如果客户的路由属性需要跨 VPN 网络透明地转发,甚至没有服务提供商 (SP) 的路由路径AS,此功能 independent-domain
将会很有用。在典型的第 3 层 VPN 中,路由属性(例如发起方 ID、群集列表、路由度量和 AS 路径从一个 客户边缘 设备到另一个路由客户边缘透明。
例如,假设您有一个客户 VRF,其AS 1。客户通过 BGP(IBGP 或 EBGP)将路由通告您。您的核心网络(主路由实例)使用第 3 AS个。如果未 independent-domain
配置,如果客户通过 BGP 将 10.0.0.0/24 通告您,则前缀在 AS 路径中包含客户的 AS 1。要跨核心将通告传输至其他 PE 设备,AS 3 通过多协议协议 (MP-BGP BGP) 添加到 AS 路径中。当前AS 3 1当前缀从核心通告回远程 PE 设备的第 3 层 VPN 中时,将再次添加第 3 层 VPN AS 1,使 AS 路径 1 3 1(这是一个 AS 环路)。该语句可确保在环路检测期间仅检查路由实例中的 AS,并且不会考虑主要路由实例(核心的 independent-domain
AS 3)。这是通过使用属性 128(属性集)(可选可传递属性)完成。属性集可隐藏路由的AS路径、本地优先级等,以便这些不会在环路检查期间显示。
在 Junos OS 10.4 及更高版本中,您可以指定 选项,使 Junos OS 无需使用属性 no-attrset
128(属性集)执行路由实例 AS 的环路检查,而不考虑 MP-BGP 中使用的核心 independent-domain
AS。如果您使用该功能,并且仅希望配置独立域以保持路由实例中本地 AS 的独立,并且仅对路由实例中的指定本地 AS 执行 BGP 环路检测,则这会非常有用。 local-as
在这种情况下,您可以禁用属性集消息。
配置
CLI快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,然后将命令复制并粘贴到 层次结构级别的 CLI 中 [edit]
。
设备 CE1
set interfaces ge-1/2/1 unit 0 family inet6 address ::10.1.1.1/126 set interfaces ge-1/2/1 unit 0 family mpls set interfaces lo0 unit 0 family inet6 address ::192.0.2.1/32 set protocols bgp group toPE1 type internal set protocols bgp group toPE1 family inet6 unicast set protocols bgp group toPE1 export send-direct set protocols bgp group toPE1 neighbor ::10.1.1.2 set policy-options policy-statement send-direct from protocol direct set policy-options policy-statement send-direct then accept set routing-options router-id 192.0.2.1 set routing-options autonomous-system 64510
设备 CE2
set interfaces ge-1/2/4 unit 0 family inet6 address ::10.1.1.14/126 set interfaces ge-1/2/4 unit 0 family mpls set interfaces lo0 unit 0 family inet6 address ::192.0.2.5/32 set protocols bgp group toPE2 type internal set protocols bgp group toPE2 family inet6 unicast set protocols bgp group toPE2 export send-direct set protocols bgp group toPE2 neighbor ::10.1.1.13 set policy-options policy-statement send-direct from protocol direct set policy-options policy-statement send-direct then accept set routing-options router-id 192.0.2.5 set routing-options autonomous-system 64510
设备 PE1
set interfaces ge-1/2/1 unit 0 family inet6 address ::10.1.1.2/126 set interfaces ge-1/2/2 unit 0 family inet address 10.1.1.5/30 set interfaces ge-1/2/2 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.0.2.2/32 set protocols mpls ipv6-tunneling set protocols mpls interface ge-1/2/2.0 set protocols bgp group toPE2 type internal set protocols bgp group toPE2 local-address 192.0.2.2 set protocols bgp group toPE2 family inet6-vpn unicast set protocols bgp group toPE2 neighbor 192.0.2.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-1/2/2.0 set protocols ldp interface ge-1/2/2.0 set protocols ldp interface lo0.0 set routing-instances red instance-type vrf set routing-instances red interface ge-1/2/1.0 set routing-instances red route-distinguisher 64512:1 set routing-instances red vrf-target target:64512:1 set routing-instances red routing-options router-id 192.0.2.2 set routing-instances red routing-options autonomous-system 64510 set routing-instances red routing-options autonomous-system independent-domain set routing-instances red protocols bgp group toCE1 type internal set routing-instances red protocols bgp group toCE1 family inet6 unicast set routing-instances red protocols bgp group toCE1 neighbor ::10.1.1.1 set routing-options router-id 192.0.2.2 set routing-options autonomous-system 64512
设备 P
set interfaces ge-1/2/2 unit 0 family inet address 10.1.1.6/30 set interfaces ge-1/2/2 unit 0 family mpls set interfaces ge-1/2/3 unit 0 family inet address 10.1.1.9/30 set interfaces ge-1/2/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.0.2.3/32 set protocols mpls interface all set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface all set protocols ldp interface all set routing-options router-id 192.0.2.3
设备 PE2
set interfaces ge-1/2/3 unit 0 family inet address 10.1.1.10/30 set interfaces ge-1/2/3 unit 0 family mpls set interfaces ge-1/2/4 unit 0 family inet6 address ::10.1.1.13/126 set interfaces lo0 unit 0 family inet address 192.0.2.4/32 set protocols mpls ipv6-tunneling set protocols mpls interface ge-1/2/3.0 set protocols bgp group toPE1 type internal set protocols bgp group toPE1 local-address 192.0.2.4 set protocols bgp group toPE1 family inet6-vpn unicast set protocols bgp group toPE1 neighbor 192.0.2.2 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-1/2/3.0 set protocols ldp interface ge-1/2/3.0 set protocols ldp interface lo0.0 set routing-instances red instance-type vrf set routing-instances red interface ge-1/2/4.0 set routing-instances red route-distinguisher 64512:1 set routing-instances red vrf-target target:64512:1 set routing-instances red routing-options router-id 192.0.2.4 set routing-instances red routing-options autonomous-system 64510 set routing-instances red routing-options autonomous-system independent-domain set routing-instances red protocols bgp group toCE2 type internal set routing-instances red protocols bgp group toCE2 family inet6 unicast set routing-instances red protocols bgp group toCE2 neighbor ::10.1.1.14 set routing-options router-id 192.0.2.4 set routing-options autonomous-system 64512
配置设备 PE1
逐步过程
以下示例要求您在配置层次结构中导航各个级别。有关导航指南CLI,请参阅 CLI 用户指南 中的 在配置模式下CLI 编辑器。
要配置设备 PE1:
配置接口。
[edit interfaces] user@PE1# set ge-1/2/1 unit 0 family inet6 address ::10.1.1.2/126 user@PE1# set ge-1/2/2 unit 0 family inet address 10.1.1.5/30 user@PE1# set ge-1/2/2 unit 0 family mpls user@PE1# set lo0 unit 0 family inet address 192.0.2.2/32
在MPLS上配置配置接口。
[edit protocols mpls] user@PE1# set ipv6-tunneling user@PE1# set interface ge-1/2/2.0
配置 BGP。
[edit protocols bgp group toPE2] user@PE1# set type internal user@PE1# set local-address 192.0.2.2 user@PE1# set family inet6-vpn unicast user@PE1# set neighbor 192.0.2.4
配置内部网关协议 (IGP)。
[edit protocols ospf area 0.0.0.0] user@PE1# set interface lo0.0 passive user@PE1# set interface ge-1/2/2.0
配置信号协议。
[edit protocols] user@PE1# set ldp interface ge-1/2/2.0 user@PE1# set ldp interface lo0.0
配置路由实例。
[edit routing-instances red] user@PE1# set instance-type vrf user@PE1# set interface ge-1/2/1.0 user@PE1# set route-distinguisher 64512:1 user@PE1# set vrf-target target:64512:1 user@PE1# set routing-options router-id 192.0.2.2 user@PE1# set protocols bgp group toCE1 type internal user@PE1# set protocols bgp group toCE1 family inet6 unicast user@PE1# set protocols bgp group toCE1 neighbor ::10.1.1.1
在路由实例中,包括AS网络的序列号,并包括
independent-domain
该语句。[edit routing-instances red routing-options] user@PE1# set autonomous-system 64510 user@PE1# set autonomous-system independent-domain
在主实例中,配置路由器 ID 和AS编号。
[edit routing-options] user@PE1# set router-id 192.0.2.2 user@PE1# set autonomous-system 64512
结果
在配置模式下,输入 、 和 show interfaces
命令 show protocols
以确认 show routing-instances
您的 show routing-options
配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。
user@PE1# show interfaces interfaces { ge-1/2/1 { unit 0 { family inet6 { address ::10.1.1.2/126; } } } ge-1/2/2 { unit 0 { family inet { address 10.1.1.5/30; } family mpls; } } lo0 { unit 0 { family inet { address 192.0.2.2/32; } } } }
user@PE1# show protocols mpls { ipv6-tunneling; interface ge-1/2/2.0; } bgp { group toPE2 { type internal; local-address 192.0.2.2; family inet6-vpn { unicast; } neighbor 192.0.2.4; } } ospf { area 0.0.0.0 { interface lo0.0 { passive; } interface ge-1/2/2.0; } } ldp { interface ge-1/2/2.0; interface lo0.0; }
user@PE1# show routing-instances red { instance-type vrf; interface ge-1/2/1.0; route-distinguisher 64512:1; vrf-target target:64512:1; routing-options { router-id 192.0.2.2; autonomous-system 64510 independent-domain; } protocols { bgp { group toCE1 { type internal; family inet6 { unicast; } neighbor ::10.1.1.1; } } } }
user@PE1# show routing-options router-id 192.0.2.2; autonomous-system 64512;
如果完成设备配置,请从配置 commit
模式输入 。
验证
确认配置工作正常。
验证客户边缘设备是否具有连接性
目的
确保隧道正在运行。
行动
在操作模式下,输入 ping
命令。
user@CE1> ping ::192.0.2.5 PING6(56=40+8+8 bytes) ::10.1.1.1 --> ::192.0.2.5 16 bytes from ::192.0.2.5, icmp_seq=0 hlim=63 time=1.943 ms 16 bytes from ::192.0.2.5, icmp_seq=1 hlim=63 time=1.587 ms ^C --- ::192.0.2.5 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/std-dev = 1.587/1.765/1.943/0.178 ms
user@CE2> ping ::192.0.2.1 PING6(56=40+8+8 bytes) ::10.1.1.14 --> ::192.0.2.1 16 bytes from ::192.0.2.1, icmp_seq=0 hlim=63 time=2.097 ms 16 bytes from ::192.0.2.1, icmp_seq=1 hlim=63 time=1.610 ms ^C --- ::192.0.2.1 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/std-dev = 1.610/1.853/2.097/0.244 ms
意义
IPv6 客户边缘设备可通过核心 IPv4 网络进行通信。
检查AS路径
目的
确保提供商的AS编号不会显示在客户边缘路由表中。
行动
在操作模式下,输入 show route protocol bgp detail
命令。
user@CE1> show route protocol bgp detail inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) ::192.0.2.5/32 (1 entry, 1 announced) *BGP Preference: 170/-101 Next hop type: Indirect Address: 0x9514354 Next-hop reference count: 6 Source: ::10.1.1.2 Next hop type: Router, Next hop index: 924 Next hop: ::10.1.1.2 via ge-1/2/1.0, selected Session Id: 0x500001 Protocol next hop: ::10.1.1.2 Indirect next hop: 0x971c000 262147 INH Session ID: 0x500002 State: <Active Int Ext> Local AS: 64510 Peer AS: 64510 Age: 50:58 Metric2: 0 Validation State: unverified Task: BGP_64510.::10.1.1.2+45824 Announcement bits (2): 0-KRT 2-Resolve tree 2 AS path: I Accepted Localpref: 100 Router ID: 192.0.2.2 ::10.1.1.12/126 (1 entry, 1 announced) *BGP Preference: 170/-101 Next hop type: Indirect Address: 0x9514354 Next-hop reference count: 6 Source: ::10.1.1.2 Next hop type: Router, Next hop index: 924 Next hop: ::10.1.1.2 via ge-1/2/1.0, selected Session Id: 0x500001 Protocol next hop: ::10.1.1.2 Indirect next hop: 0x971c000 262147 INH Session ID: 0x500002 State: <Active Int Ext> Local AS: 64510 Peer AS: 64510 Age: 50:58 Metric2: 0 Validation State: unverified Task: BGP_64510.::10.1.1.2+45824 Announcement bits (2): 0-KRT 2-Resolve tree 2 AS path: I Accepted Localpref: 100 Router ID: 192.0.2.2
user@CE2> show route protocol bgp detail inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) ::192.0.2.1/32 (1 entry, 1 announced) *BGP Preference: 170/-101 Next hop type: Indirect Address: 0x9514354 Next-hop reference count: 6 Source: ::10.1.1.13 Next hop type: Router, Next hop index: 914 Next hop: ::10.1.1.13 via ge-1/2/4.0, selected Session Id: 0x400001 Protocol next hop: ::10.1.1.13 Indirect next hop: 0x971c000 262150 INH Session ID: 0x400002 State: <Active Int Ext> Local AS: 64510 Peer AS: 64510 Age: 50:41 Metric2: 0 Validation State: unverified Task: BGP_64510.::10.1.1.13+59329 Announcement bits (2): 0-KRT 2-Resolve tree 2 AS path: I Accepted Localpref: 100 Router ID: 192.0.2.4 ::10.1.1.0/126 (1 entry, 1 announced) *BGP Preference: 170/-101 Next hop type: Indirect Address: 0x9514354 Next-hop reference count: 6 Source: ::10.1.1.13 Next hop type: Router, Next hop index: 914 Next hop: ::10.1.1.13 via ge-1/2/4.0, selected Session Id: 0x400001 Protocol next hop: ::10.1.1.13 Indirect next hop: 0x971c000 262150 INH Session ID: 0x400002 State: <Active Int Ext> Local AS: 64510 Peer AS: 64510 Age: 50:41 Metric2: 0 Validation State: unverified Task: BGP_64510.::10.1.1.13+59329 Announcement bits (2): 0-KRT 2-Resolve tree 2 AS path: I Accepted Localpref: 100 Router ID: 192.0.2.4
意义
输出显示,对于 BGP 设备上客户边缘路由,AS 路径属性不包括提供商 AS 64512。