サービス プロバイダー ネットワークでマルチキャスト トラフィックを伝送するには、PIM などのマルチキャスト プロトコルを展開し、サービス プロバイダー コアで転送パスを設定する必要があります。ただし、MPLS バックボーン ネットワークの場合、サービス
プロバイダーは ip トンネリングではなくラベル カプセル化を使用できます。この方式は、サービス プロバイダー コアの制御トラフィックのオーバーヘッドを減らすのに役立ちます。また、MPLS トラフィック エンジニアリングおよび保護機能を活用できます。
ラベルのカプセル化は、ポイントツーマルチポイント(P2MP)ラベル スイッチド パス(LSP)か、マルチポイントツーマルチポイント(MP2MP)LSP のどちらかになります。マルチキャスト LSP を作成する場合は、RSVP-TE プロトコル拡張を使用できます。RSVP-TE
プロトコルは、MPLS ネットワーク全体で P2MP LSP をシグナリングするように拡張されています。P2MP-TE 機能により、P2MP-TE トンネルを使用した、PIM フリー サービス プロバイダー コア経由でのマルチキャスト トラフィックの伝送が可能になります。
次の図は、この機能で使用されるトポロジについて説明しています。
図 2. PIM フリー LSP コア
この図では次の用語を使用しています。
ヘッド:TE トンネルが設定されているルータ。
テール:TE トンネルの終端となるルータ。
ミッド:TE トンネルが通過するルータ。
マルチキャスト VPN(mVPN)プロファイルは、グローバル コンテキストに対して、または VRF ごとに設定されます。マルチキャスト ストリームをどこに転送する必要があるかに応じて、異なる mVPN プロファイルを適用できます。
P2MP-TE 機能では、次の mVPN プロファイルがサポートされています。
制約事項および使用上の注意事項
この機能には次の制約事項と注意事項が適用されます。
Source-Specific Multicast(SSM)トラフィックのみがサポートされます。
プロファイル 8 で は、IPv4 と IPv6 の両方がサポートされます。
プロファイル 10 では、IPv4 のみがサポートされます。
P2MP-TE トンネルの Fast Reroute(FRR)はサポートされません。
BVI インターフェイスはサポートされません。
設定例:P2MP-TE プロファイル 8
この例は、プロファイル 8 の P2MP-TE 設定を示しています。P2MP トンネルで、ヘッド、ミッド、テールの各ルータを設定する必要があります。
ヘッド ルータの設定は次のようになります。この設定には、IGP、MPLS-TE トンネル、およびマルチキャストの設定が含まれます。この機能を設定する際には、LDP と RSVP も設定する必要があります。
RP/0/RP0/CPU0:router(config)# router ospf 1
RP/0/RP0/CPU0:router(config-router)# area 0
RP/0/RP0/CPU0:router(config-ospf-ar)# mpls traffic-eng
RP/0/RP0/CPU0:router(config-ospf-ar-mpls-te)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface Loopback0
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface TenGigE0/0/0/0
RP/0/RP0/CPU0:router(config-ospf-ar-if)# cost 1
RP/0/RP0/CPU0:router(config-ospf-ar-if)# network point-to-point
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface TenGigE0/0/0/2
RP/0/RP0/CPU0:router(config-ospf-ar-if)# cost 1
RP/0/RP0/CPU0:router(config-ospf-ar-if)# network point-to-point
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# exit
RP/0/RP0/CPU0:router(config-ospf)# mpls traffic-eng router-id loopback 0
RP/0/RP0/CPU0:router(config)# interface tunnel-mte 2
RP/0/RP0/CPU0:router(config-if)# ipv4 unnumbered Loopback0
RP/0/RP0/CPU0:router(config-if)# destination 10.2.2.2
RP/0/RP0/CPU0:router(config-if-p2mp-dest)# path-option 1 dynamic
RP/0/RP0/CPU0:router(config-if-p2mp-dest)# exit
RP/0/RP0/CPU0:router(config)# multicast-routing
RP/0/RP0/CPU0:router(config-mcast)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface tunnel-mte 2
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# mdt source Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface all enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# accounting per-prefix
RP/0/RP0/CPU0:router(config)# router igmp
RP/0/RP0/CPU0:router(config-igmp)# interface tunnel-mte 2
RP/0/RP0/CPU0:router(config-igmp-if)# static-group 232.0.0.2 10.0.0.100
RP/0/RP0/CPU0:router(config-igmp)# interface TenGigE0/0/0/0
RP/0/RP0/CPU0:router(config-igmp-if)# version 3
RP/0/RP0/CPU0:router(config)# router pim
RP/0/RP0/CPU0:router(config-pim)# address-family ipv4
RP/0/RP0/CPU0:router(config-pim-default-ipv4)# interface tunnel-mte 2
RP/0/RP0/CPU0:router(config-pim-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-pim-default-ipv4-if)# exit
ヘッド ルータの実行コンフィギュレーションは次のようになります。
interface Loopback0
ipv4 address 10.1.1.1 255.255.255.255
!
interface TenGigE0/0/0/0
ipv4 address 10.0.0.1 255.255.255.0
!
interface TenGigE0/0/0/2
ipv4 address 10.2.0.1 255.255.255.0
!
router ospf 1
area 0
mpls traffic-eng
!
interface Loopback0
interface TenGigE0/0/0/0
cost 1
network point-to-point
interface TenGigE0/0/0/2
cost 1
network point-to-point
!
mpls traffic-eng router-id Loopback0
!
rsvp
interface TenGigE0/0/0/2
bandwidth percentage 100
!
!
mpls traffic-eng
interface TenGigE0/0/0/2
!
mpls ldp
discovery
targeted-hello interval 10
!
router-id 10.1.1.1
address-family ipv4
discovery targeted-hello accept
!
interface TenGigE0/0/0/2
!
!
!
interface tunnel-mte2
ipv4 unnumbered Loopback0
destination 10.2.2.2
path-option 1 dynamic
!
!
!
multicast-routing
address-family ipv4
interface Loopback0
enable
!
interface tunnel-mte2
enable
!
mdt source Loopback0
interface all enable
accounting per-prefix
!
!
!
router igmp
interface tunnel-mte2
static-group 232.0.0.2 10.0.0.100
!
interface TenGigE0/0/0/0
version 3
!
!
router pim
address-family ipv4
interface tunnel-mte2
enable
!
!
!
ミッド ルータには、MPLS-TE、RSVP、および OSPF などの IGP の設定のみ必要です。ミッド ルータの実行コンフィギュレーションは次のようになります。
interface Loopback0
ipv4 address 10.5.5.5 255.255.255.255
interface TenGigE0/0/0/2
ipv4 address 10.10.0.5 255.255.255.0
interface TenGigE0/0/0/3
ipv4 address 10.13.0.5 255.255.255.0
router ospf 1
area 0
mpls traffic-eng
interface Loopback0
interface TenGigE0/0/0/2
cost 1
network point-to-point
interface TenGigE0/0/0/3
cost 1
network point-to-point
mpls traffic-eng router-id Loopback0
rsvp
interface TenGigE0/0/0/2
bandwidth percentage 100
interface TenGigE0/0/0/3
bandwidth percentage 100
mpls traffic-eng
interface TenGigE0/0/0/2
interface TenGigE0/0/0/3
mpls ldp
discovery
targeted-hello interval 10
router-id 10.5.5.5
address-family ipv4
discovery targeted-hello accept
interface TenGigE0/0/0/2
interface TenGigE0/0/0/3
!
!
テール ルータの設定は次のようになります。この設定には、IGP、MPLS-TE トンネル、およびマルチキャストの設定が含まれます。ヘッド ルータと同様に、この機能を設定する際には RSVP と LDP も設定する必要があります。
RP/0/RP0/CPU0:router(config)# router ospf 1
RP/0/RP0/CPU0:router(config-router)# area 0
RP/0/RP0/CPU0:router(config-ospf-ar)# mpls traffic-eng
RP/0/RP0/CPU0:router(config-ospf-ar-mpls-te)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface Loopback0
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface TenGigE0/0/0/3
RP/0/RP0/CPU0:router(config-ospf-ar-if)# cost 1
RP/0/RP0/CPU0:router(config-ospf-ar-if)# network point-to-point
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# exit
RP/0/RP0/CPU0:router(config-ospf)# mpls traffic-eng router-id loopback 0
RP/0/RP0/CPU0:router(config)# interface tunnel-mte 2
RP/0/RP0/CPU0:router(config-if)# ipv4 unnumbered Loopback0
RP/0/RP0/CPU0:router(config-if)# destination 10.2.2.2
RP/0/RP0/CPU0:router(config-if-p2mp-dest)# path-option 1 dynamic
RP/0/RP0/CPU0:router(config-if-p2mp-dest)# exit
RP/0/RP0/CPU0:router(config)# multicast-routing
RP/0/RP0/CPU0:router(config-mcast)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# mdt source Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# core-tree-protocol rsvp-te
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# static-rpf 10.0.0.100 32 mpls 1.1.1.1
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# rate-per-route
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface all enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# accounting per-prefix
RP/0/RP0/CPU0:router(config)# router igmp
RP/0/RP0/CPU0:router(config-igmp# interface TenGigE0/0/0/3
RP/0/RP0/CPU0:router(config-igmp-if)# version 3
RP/0/RP0/CPU0:router(config)# router pim
RP/0/RP0/CPU0:router(config-pim)# address-family ipv4
RP/0/RP0/CPU0:router(config-pim-default-ipv4)# interface TenGigE0/0/0/3
RP/0/RP0/CPU0:router(config-pim-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-pim-default-ipv4-if)# exit
テール ルータの実行コンフィギュレーションは次のようになります。
!
interface Loopback0
ipv4 address 10.2.2.2 255.255.255.255
!
interface TenGigE0/0/0/3
ipv4 address 10.3.0.2 255.255.255.0
!
interface TenGigE0/0/0/6
ipv4 address 10.6.0.2 255.255.255.0
!
router ospf 1
area 0
mpls traffic-eng
interface Loopback0
!
interface TenGigE0/0/0/3
cost 1
network point-to-point
!
!
mpls traffic-eng router-id Loopback0
!
rsvp
interface TenGigE0/0/0/3
bandwidth percentage 100
!
!
mpls traffic-eng
interface TenGigE0/0/0/3
!
mpls ldp
discovery
targeted-hello interval 10
!
router-id 10.2.2.2
address-family ipv4
discovery targeted-hello accept
!
interface TenGigE0/0/0/3
!
!
multicast-routing
address-family ipv4
interface Loopback0
enable
!
mdt source Loopback0
core-tree-protocol rsvp-te
static-rpf 10.0.0.100 32 mpls 10.1.1.1
rate-per-route
interface all enable
accounting per-prefix
!
!
!
router igmp
!
interface TenGigE0/0/0/6
version 3
!
!
router pim
!
address-family ipv4
interface TenGigE0/0/0/6
enable
!
!
!
設定例:P2MP-TE プロファイル 10
この例は、プロファイル 10 の P2MP-TE 設定を示しています。ヘッド、ミッド、テールの各ルータを設定する必要があります。
ヘッド ルータの設定は次のようになります。この設定には、IGP、L3VPN、およびマルチキャストの設定が含まれます。この機能を設定する際には、MPLS-TE、LDP、および RSVP も設定する必要があります。
RP/0/RP0/CPU0:router(config)# router ospf 1
RP/0/RP0/CPU0:router(config-router)# area 0
RP/0/RP0/CPU0:router(config-ospf-ar)# mpls traffic-eng
RP/0/RP0/CPU0:router(config-ospf-ar-mpls-te)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface Loopback0
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface TenGigE0/0/0/2
RP/0/RP0/CPU0:router(config-ospf-ar-if)# cost 1
RP/0/RP0/CPU0:router(config-ospf-ar-if)# network point-to-point
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# exit
RP/0/RP0/CPU0:router(config-ospf)# mpls traffic-eng router-id loopback 0
RP/0/RP0/CPU0:router(config-ospf)# exit
RP/0/RP0/CPU0:router(config)# vrf vpn_2
RP/0/RP0/CPU0:router(config-vrf)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-vrf-af)# import route-target 100:2
RP/0/RP0/CPU0:router(config-vrf-af)# export route-target 120:2
RP/0/RP0/CPU0:router(config)# interface TengigE0/0/0/0
RP/0/RP0/CPU0:router(config-if)# vrf vpn_2
RP/0/RP0/CPU0:router(config-if-vrf)# ipv4 address 10.0.0.1 255.255.255.0
RP/0/RP0/CPU0:router(config)# route-policy pass-all
RP/0/RP0/CPU0:router(config)# pass
RP/0/RP0/CPU0:router(config)#router bgp 1
RP/0/RP0/CPU0:router(config-bgp)# bgp router-id 10.1.1.1
RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config-bgp)# neighbor 10.2.2.2
RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 1
RP/0/RP0/CPU0:router(config-bgp-nbr)# update-source Loopback0
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config-bgp)# vrf vpn_2
RP/0/RP0/CPU0:router(config-bgp-vrf)#rd 100:2
RP/0/RP0/CPU0:router(config-bgp-vrf)#address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#label mode per-prefix
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#redistribute connected
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#exit
RP/0/RP0/CPU0:router(config-bgp-vrf)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config)# multicast-routing
RP/0/RP0/CPU0:router(config-mcast)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# mdt source Loopback0
RP/0/RP0/CPU0:router(config-mcast)# vrf vpn_2
RP/0/RP0/CPU0:router(config-mcast-vpn_2)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# mdt source loopback0
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# rate-per-route
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# interface all enable
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# bgp auto-discovery p2mp-te
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4-bgp-ad)# mdt static p2mp-te tunnel-mte2
RP/0/RP0/CPU0:router(config)# router igmp
RP/0/RP0/CPU0:router(config-igmp)# vrf vpn_2
RP/0/RP0/CPU0:router(config-igmp-vpn_2)# interface tunnel-mte2
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# static-group 239.0.0.1 100.0.0.100
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# exit
RP/0/RP0/CPU0:router(config-igmp-vpn_2)# interface TenGigE0/0/0/0
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# version 3
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# exit
RP/0/RP0/CPU0:router(config-igmp-vpn_2)#
RP/0/RP0/CPU0:router(config)# router pim
RP/0/RP0/CPU0:router(config-pim)# vrf vpn_2
RP/0/RP0/CPU0:router(config-pim-vpn_2)# address-family ipv4
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4)# interface tunnel-mte2
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4)# interface TenGigE0/0/0/0
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4-if)# enable
ヘッド ルータの実行コンフィギュレーションは次のようになります。
!
interface Loopback0
ipv4 address 10.1.1.1 255.255.255.255
!
interface TenGigE0/0/0/2
ipv4 address 10.2.0.1 255.255.255.0
!
router ospf 1
area 0
mpls traffic-eng
!
interface Loopback0
!
interface TenGigE0/0/0/2
cost 1
network point-to-point
!
mpls traffic-eng router-id Loopback0
!
rsvp
interface TenGigE0/0/0/2
bandwidth percentage 100
!
!
mpls traffic-eng
interface TenGigE0/0/0/2
!
mpls ldp
discovery
targeted-hello interval 10
!
router-id 10.1.1.1
address-family ipv4
discovery targeted-hello accept
!
interface TenGigE0/0/0/2
!
!
vrf vpn_2
address-family ipv4 unicast
import route-target
100:2
export route-target
100:2
interface TenGigE0/0/0/0
vrf vpn_2
ipv4 address 10.0.0.1 255.255.255.0
route-policy pass-all
pass
end-policy
router bgp 1
bgp router-id 10.1.1.1
address-family ipv4 unicast
address-family vpnv4 unicast
address-family ipv4 mvpn
neighbor 10.2.2.2
remote-as 1
update-source Loopback0
address-family ipv4 unicast
route-policy pass-all in
route-policy pass-all out
address-family vpnv4 unicast
route-policy pass-all in
route-policy pass-all out
address-family ipv4 mvpn
vrf vpn_2
rd 100:2
address-family ipv4 unicast
label mode per-prefix
redistribute connected
address-family ipv4 mvpn
hostname head
!
multicast-routing
address-family ipv4
interface Loopback0
enable
!
mdt source Loopback0
!
vrf vpn_2
address-family ipv4
mdt source Loopback0
rate-per-route
interface all enable
bgp auto-discovery p2mp-te
!
mdt static p2mp-te tunnel-mte2
!
!
!
router igmp
vrf vpn_2
interface tunnel-mte2
static-group 239.0.0.1 100.0.0.100
!
interface TenGigE0/0/0/0
version 3
!
!
router pim
vrf vpn_2
address-family ipv4
interface tunnel-mte2
enable
!
interface TenGigE0/0/0/0
enable
!
!
!
ミッド ルータには、MPLS-TE、RSVP、および IGP の設定のみ必要です。ミッド ルータの実行コンフィギュレーションは次のようになります。
interface Loopback0
ipv4 address 10.5.5.5 255.255.255.255
interface TenGigE0/0/0/2
ipv4 address 10.0.0.5 255.255.255.0
interface TenGigE0/0/0/3
ipv4 address 10.3.0.5 255.255.255.0
router ospf 1
area 0
mpls traffic-eng
interface Loopback0
interface TenGigE0/0/0/2
cost 1
network point-to-point
interface TenGigE0/0/0/3
cost 1
network point-to-point
mpls traffic-eng router-id Loopback0
rsvp
interface TenGigE0/0/0/2
bandwidth percentage 100
interface TenGigE0/0/0/3
bandwidth percentage 100
mpls traffic-eng
interface TenGigE0/0/0/2
interface TenGigE0/0/0/3
mpls ldp
discovery
targeted-hello interval 10
router-id 10.5.5.5
address-family ipv4
discovery targeted-hello accept
interface TenGigE0/0/0/2
interface TenGigE0/0/0/3
!
!
テール ルータの設定は次のようになります。この設定には、L3VPN、マルチキャスト、および IGP の設定が含まれます。ヘッド ルータと同様に、この機能を設定する前に MPLS-TE と RSVP も設定する必要があります。
RP/0/RP0/CPU0:router# configure
RP/0/RP0/CPU0:router(config)# router ospf 1
RP/0/RP0/CPU0:router(config-router)# area 0
RP/0/RP0/CPU0:router(config-ospf-ar)# mpls traffic-eng
RP/0/RP0/CPU0:router(config-ospf-ar-mpls-te)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface Loopback0
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# interface TenGigE0/0/0/3
RP/0/RP0/CPU0:router(config-ospf-ar-if)# cost 1
RP/0/RP0/CPU0:router(config-ospf-ar-if)# network point-to-point
RP/0/RP0/CPU0:router(config-ospf-ar-if)# exit
RP/0/RP0/CPU0:router(config-ospf-ar)# exit
RP/0/RP0/CPU0:router(config-ospf)# mpls traffic-eng router-id loopback 0
RP/0/RP0/CPU0:router(config-ospf)# exit
RP/0/RP0/CPU0:router(config)# vrf vpn_2
RP/0/RP0/CPU0:router(config-vrf)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-vrf-af)# import route-target 100:2
RP/0/RP0/CPU0:router(config-vrf-af)# export route-target 120:2
RP/0/RP0/CPU0:router(config)# interface TengigE0/0/0/6
RP/0/RP0/CPU0:router(config-if)# vrf vpn_2
RP/0/RP0/CPU0:router(config-if-vrf)# ipv4 address 10.0.0.1 255.255.255.0
RP/0/RP0/CPU0:router(config)# route-policy pass-all
RP/0/RP0/CPU0:router(config)# pass
RP/0/RP0/CPU0:router(config)# end-policy
RP/0/RP0/CPU0:router(config)# router bgp 1
RP/0/RP0/CPU0:router(config-bgp)# bgp router-id 10.2.2.2
RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config-bgp)# neighbor 10.1.1.1
RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 1
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config)# multicast-routing
RP/0/RP0/CPU0:router(config-mcast)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# interface Loopback0
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# enable
RP/0/RP0/CPU0:router(config-mcast-default-ipv4-if)# exit
RP/0/RP0/CPU0:router(config-mcast-default-ipv4)# mdt source Loopback0
RP/0/RP0/CPU0:router(config-mcast)# vrf vpn_2
RP/0/RP0/CPU0:router(config-mcast-vpn_2)# address-family ipv4
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# mdt source loopback0
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# core-tree-protocol rsvp-te
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# rate-per-route
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# interface all enable
RP/0/RP0/CPU0:router(config-mcast-vpn_2-ipv4)# bgp auto-discovery p2mp-te
RP/0/RP0/CPU0:router(config)# router igmp
RP/0/RP0/CPU0:router(config-igmp)# vrf vpn_2
RP/0/RP0/CPU0:router(config-igmp-vpn_2)# interface TenGigE0/0/0/6
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# version 3
RP/0/RP0/CPU0:router(config-igmp-vpn_2-if)# exit
RP/0/RP0/CPU0:router(config)# router pim
RP/0/RP0/CPU0:router(config-pim)# vrf vpn_2
RP/0/RP0/CPU0:router(config-pim-vpn_2)# address-family ipv4
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4)# interface TenGigE0/0/0/6
RP/0/RP0/CPU0:router(config-pim-vpn_2-ipv4-if)# enable
RP/0/RP0/CPU0:router(config)#router bgp 1
RP/0/RP0/CPU0:router(config-bgp)# bgp router-id 192.168.1.2
RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-af)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config-bgp)# neighbor 192.168.1.1
RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family vpnv4 unicast
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all in
RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy pass-all out
RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 mvpn
RP/0/RP0/CPU0:router(config-bgp)# vrf vpn_2
RP/0/RP0/CPU0:router(config-bgp-vrf)#rd 100:2
RP/0/RP0/CPU0:router(config-bgp-vrf)#address-family ipv4 unicast
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#label mode per-prefix
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#redistribute connected
RP/0/RP0/CPU0:router(config-bgp-vrf-af)#exit
RP/0/RP0/CPU0:router(config-bgp-vrf)# address-family ipv4 mvpn
テール ルータの実行コンフィギュレーションは次のようになります。
interface Loopback0
ipv4 address 10.2.2.2 255.255.255.255
!
interface TenGigE0/0/0/3
ipv4 address 10.3.0.2 255.255.255.0
!
router ospf 1
area 0
mpls traffic-eng
interface Loopback0
!
interface TenGigE0/0/0/3
cost 1
network point-to-point
!
!
mpls traffic-eng router-id Loopback0
!
rsvp
interface TenGigE0/0/0/3
bandwidth percentage 100
!
!
mpls traffic-eng
interface TenGigE0/0/0/3
!
mpls ldp
discovery
targeted-hello interval 10
!
router-id 10.2.2.2
address-family ipv4
discovery targeted-hello accept
!
interface TenGigE0/0/0/3
!
! vrf vpn_2
address-family ipv4 unicast
import route-target
100:2
export route-target
100:2
interface TenGigE0/0/0/6
vrf vpn_2
ipv4 address 10.6.0.2 255.255.255.0
route-policy pass-all
pass
end-policy
router bgp 1
bgp router-id 10.2.2.2
address-family ipv4 unicast
address-family vpnv4 unicast
address-family ipv4 mvpn
neighbor 10.1.1.1
remote-as 1
update-source Loopback0
address-family ipv4 unicast
route-policy pass-all in
route-policy pass-all out
address-family vpnv4 unicast
route-policy pass-all in
route-policy pass-all out
address-family ipv4 mvpn
vrf vpn_2
rd 100:2
address-family ipv4 unicast
label mode per-prefix
redistribute connected
address-family ipv4 mvpn
!
multicast-routing
address-family ipv4
interface Loopback0
enable
!
mdt source Loopback0
!
vrf vpn_2
address-family ipv4
mdt source Loopback0
core-tree-protocol rsvp-te
rate-per-route
interface all enable
bgp auto-discovery p2mp-te
!
!
router igmp
vrf vpn_2
interface TenGigE0/0/0/6
version 3
!
!
router pim
vrf vpn_2
address-family ipv4
interface TenGigE0/0/0/6
enable
!
!
!
検証:P2MP-TE
次に、show mrib vrf vpn_2 route
コマンドを使用して、ヘッド ルータでのマルチキャスト制御の状態が正しいかどうかを確認する例を示します。
RP/0/RP0/CPU0:router# show mrib vrf vpn_2 route
(10.0.0.100,232.0.0.1) RPF nbr: 10.0.0.100 Flags: RPF
Up: 00:00:38
Incoming Interface List
TenGigE0/0/0/0 Flags: A, Up: 00:00:38
Outgoing Interface List
Tunnel-mte2 Flags: F NS LI LVIF, Up: 00:00:38
また、テール ルータでのマルチキャスト制御の状態を確認することもできます。
RP/0/RP0/CPU0:router# show mrib vrf vpn_2 route
(10.0.0.100,232.0.0.1) RPF nbr: 10.1.1.1 Flags: RPF
Up: 00:03:55
Outgoing Interface List
TenGigE0/0/0/6 Flags: F NS LI, Up: 00:03:55
次に、show mpls traffic-eng tunnels p2mp コマンドを使用して、ヘッド ルータで TE トンネルが確立されているかどうかを確認する例を示します。
RP/0/RP0/CPU0:router# show mpls traffic-eng tunnels p2mp 2
Name: tunnel-mte2
Signalled-Name: head_mt2
Status:
Admin: up Oper: up (Up for 00:09:37)
Config Parameters:
Bandwidth: 0 kbps (CT0) Priority: 7 7 Affinity: 0x0/0xffff
Interface Bandwidth: 0 kbps
Metric Type: TE (global)
Fast Reroute: Not Enabled, Protection Desired: None
Record Route: Not Enabled
Reoptimization after affinity failure: Enabled
Destination summary: (1 up, 0 down, 0 disabled) Affinity: 0x0/0xffff
Auto-bw: disabled
Destination: 10.2.2.2
State: Up for 00:09:37
Path options:
path-option 1 dynamic [active]
Current LSP:
lsp-id: 10002 p2mp-id: 2 tun-id: 2 src: 10.1.1.1 extid: 10.1.1.1
LSP up for: 00:09:37 (since Fri May 25 22:32:03 UTC 2018)
Reroute Pending: No
Inuse Bandwidth: 0 kbps (CT0)
Number of S2Ls: 1 connected, 0 signaling proceeding, 0 down S2L Sub LSP: Destination 2.2.2.2 Signaling Status: connected
S2L up for: 00:09:37 (since Fri May 25 22:32:03 UTC 2018)
Sub Group ID: 1 Sub Group Originator ID: 10.1.1.1
Path option path-option 1 dynamic (path weight 2)
Path info (OSPF 1 area 0)
10.0.0.5
10.0.0.2
10.2.2.2
Reoptimized LSP (Install Timer Remaining 0 Seconds):
None
Cleaned LSP (Cleanup Timer Remaining 0 Seconds):
None
Displayed 1 (of 101) heads, 0 (of 0) midpoints, 0 (of 0) tails
Displayed 1 up, 0 down, 0 recovering, 0 recovered heads
次に、show mpls forwarding p2mp コマンドを使用して、ヘッド ルータでのラベルの割り当てを確認する例を示します。
RP/0/RP0/CPU0:router# show mpls forwarding p2mp
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
64106 64008 P2MP TE: 2 TenGigE0/0/0/2 10.0.0.5 0