Upload
toshiki-tsuboi
View
1.393
Download
0
Embed Size (px)
Citation preview
4
確かに、疎通できるようになったが、OSPF面に全ルータを収容する構成では、ルータ毎にIPv4プレフィックスの全経路情報を共有してしまうため、スケール性が乏しい
OSPF面
宛先 送信元
192.168.103.2192.168.201.1
CE3CE1
OSPF設定してみて…
エリア分割による経路計算量の肥大化防止は 可能だが、本質的な解決策にはならない
5
そもそも、通信したい相手のIPv4プレフィックスのみルーティング情報として保持できればよくて、途中区間のIPv4プレフィックスを保持したいわけではない
宛先
送信元
設定の簡便性、スケール性、 障害時収束を考慮した改善が必要
構成改善に向けて…
6
NW拡張1「BGPルーティングの活用」
宛先
送信元
通信したい相手を限定し、不要な途中経路のルーティングを保持しないように、BGPルーティングを有効にして、双方向で疎通確認できるネットワーク環境を構築する
BGPルーティング活用による スケール対応
7OSPF面
CE3CE1
BGP面
・BGPピア間の通信経路は、OSPFにより解決 ・BGPピア数の肥大化防止を目的に、リフレクターを配備(Option)
▪️C-Planeの特徴
RR RR CE3CE1
BGP/OSPF面による階層化構造を構成
BGP4
Native IPv4 (OSPF)
Native IPv4 (OSPF)
BGP4
8
CE3#show bgp ipv4 unicast BGP table version is 10, local router ID is 10.10.10.3 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path *> 10.10.10.1/32 192.168.103.1 0 65000 9598 65001 ? *> 10.10.10.2/32 192.168.103.1 0 65000 9598 65002 ? *> 10.10.10.3/32 0.0.0.0 0 32768 ? *> 192.168.101.0/30 192.168.103.1 0 65000 9598 65001 ? *> 192.168.102.0/30 192.168.103.1 0 65000 9598 65002 ? *> 192.168.103.0/30 0.0.0.0 0 32768 ? *> 192.168.201.0 192.168.103.1 0 65000 9598 65001 ? *> 192.168.202.0 192.168.103.1 0 65000 9598 65002 ? *> 192.168.203.0 0.0.0.0 0 32768 ?
▪️BGPテーブルでの経路情報
11
なんと、pingが失敗する..??
宛先
×Drop!!
送信元
CE3#ping 192.168.201.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.201.1, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
CE3#traceroute 192.168.201.1 Type escape sequence to abort. Tracing the route to 192.168.201.1 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.103.1 28 msec 24 msec 28 msec 2 172.100.1.1 180 msec 60 msec 72 msec 3 192.168.0.1 84 msec 96 msec 100 msec 4 * * * 5 * * * ..(snip)
12
IPv4バックボーンのコアルータでは、BGP4によるIPv4プレフィックスが伝搬されないので、IPルーティングの経路学習を行わないためだった。
宛先
×Drop!!
送信元BGPピアとなるエッジルータでのみ、経路学習を実施
ping失敗の原因は..
IPv4バックボーンのコアルータでも、BGP4によるIPv4プレフィックスが伝搬されるように、BGPピアに参加する
解決策1:コアルータでのBGPピア参加
14図中では、RouteReflectorとのiBGPピア関係のみを記載
Native IPv4 (OSPF)
Native IPv4 (OSPF)
IPv4バックボーンのエッジルータにて、BGP4によるIPv4プレフィックス情報をOSPFルーティングに変換してコアルータに配布する
解決策2:エッジルータでのプロトコル変換
15
router ospf 9598 redistribute connected subnets redistribute bgp 9598 subnets !
router ospf 9598 redistribute bgp 9598 subnets !
IPv4バックボーン内で、LDPv4によるMPLSパスを有効にして、コアルータでのIPv4プレフィックスのルックアップ処理が不要になるようにする。(エッジルータ間データプレーン転送では、IPルーティングによるマルチホップをさせない。)
解決策3:MPLSバックボーン化
16
LDPLDP
LDP LDP
LDP
LDP
BGP Free Coreとして実績豊富(採用!!)
18
NW拡張2「 MPLSバックボーン化」
宛先
送信元
LDP活用によるMPLSバックボーン化して、双方向で疎通確認できるネットワーク環境を構築する
MPLS-BB (OSPF, LDP)
MPLS-BB (OSPF, LDP)
BGPルーティング活用による スケール対応
19LDP(OSPF)面
CE3CE1
BGP面
・BGPピア間の通信経路は、OSPFにより解決 ・BGPのNEXTHOPへの到達性がシングルホップで対応できるよう LDPによるMPLSトンネルを自動生成
▪️C-Planeの特徴
RR RR CE3CE1
BGP/LDP面による階層化構造を構成
BGP4
MPLS-BB MPLS-BBBGP4
20
CE3#show bgp ipv4 unicast BGP table version is 10, local router ID is 10.10.10.3 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path *> 10.10.10.1/32 192.168.103.1 0 65000 9598 65001 ? *> 10.10.10.2/32 192.168.103.1 0 65000 9598 65002 ? *> 10.10.10.3/32 0.0.0.0 0 32768 ? *> 192.168.101.0/30 192.168.103.1 0 65000 9598 65001 ? *> 192.168.102.0/30 192.168.103.1 0 65000 9598 65002 ? *> 192.168.103.0/30 0.0.0.0 0 32768 ? *> 192.168.201.0 192.168.103.1 0 65000 9598 65001 ? *> 192.168.202.0 192.168.103.1 0 65000 9598 65002 ? *> 192.168.203.0 0.0.0.0 0 32768 ?
▪️BGPテーブルでの経路情報
宛先
送信元22
CE3#ping 192.168.201.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.201.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 184/244/284 ms
CE3#traceroute 192.168.201.1 Type escape sequence to abort. Tracing the route to 192.168.201.1 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.103.1 8 msec 36 msec 28 msec 2 172.100.1.1 48 msec 28 msec 96 msec 3 192.168.0.1 200 msec 148 msec 124 msec 4 * * * 5 172.16.1.1 244 msec 144 msec 200 msec 6 192.168.101.1 [AS 65001] 252 msec 168 msec *
実際、ping通信してみると..成功するようになった
MPLS-BB MPLS-BB
24
AS65001側のIPv4プレフィックス情報が、AS65003に経路広告される様子と、ASBR3で保持している経路情報(採用されたNextHopアドレス)を確認してみた。 さらに、データプレーン転送の様子も確認してみた。
”BGP4”を用いたIPv4プレフィックス経路広告 の振る舞い調査
BGP4
データプレーン
192.168.103.2
192.168.201.1
25
BGP4通信(PE1-> ASBR3)RouteReflector経由
調査1
router bgp 9598 bgp log-neighbor-changes neighbor 10.0.0.7 remote-as 9598 neighbor 10.0.0.7 update-source Loopback0 neighbor 192.168.0.2 remote-as 65000 ! address-family ipv4 neighbor 10.0.0.7 activate neighbor 10.0.0.7 next-hop-self neighbor 192.168.0.2 activate exit-address-family
PE1 ASBR3
ASBR3側で取得したBGP4(UPDATE)通信キャプチャ
ASBR3#show mpls forwarding-table Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or Tunnel Id Switched interface 16 Pop Label 10.0.0.6/32 823 Fa1/1 172.16.7.2 17 16 10.0.0.5/32 272 Fa1/0 172.16.2.1 18 21 10.0.0.4/32 0 Fa1/0 172.16.2.1 19 Pop Label 10.0.0.2/32 0 Fa1/0 172.16.2.1 20 25 10.0.0.1/32 0 Fa1/0 172.16.2.1 21 Pop Label 172.16.8.0/30 0 Fa1/0 172.16.2.1 22 18 172.16.3.0/30 0 Fa1/0 172.16.2.1 23 Pop Label 172.16.4.0/30 0 Fa1/1 172.16.7.2 24 23 172.16.5.0/30 0 Fa1/0 172.16.2.1 25 Pop Label 172.16.6.0/30 0 Fa1/0 172.16.2.1 26 Pop Label 172.16.1.0/30 0 Fa1/0 172.16.2.1 27 24 10.0.0.7/32 351 Fa1/0 172.16.2.1
26
NextHopに、シングルホップで到達できるように、LDPラベル[25]が挿入される
Native IPv4 (OSPF, LDP)
Native IPv4 (OSPF, LDP)
27
データプレーン通信(CE3->CE1)調査2
192.168.103.2
192.168.201.1データプレーン
LDP 送信元
宛先
ASBR3#show bgp ipv4 unicast BGP table version is 10, local router ID is 10.0.0.3 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path *>i 10.10.10.1/32 10.0.0.1 0 100 0 65001 ? *>i 10.10.10.2/32 10.0.0.4 0 100 0 65002 ? *> 10.10.10.3/32 192.168.0.2 0 65000 65003 ? *>i 192.168.101.0/30 10.0.0.1 0 100 0 65001 ? *>i 192.168.102.0/30 10.0.0.4 0 100 0 65002 ? *> 192.168.103.0/30 192.168.0.2 0 65000 65003 ? *>i 192.168.201.0 10.0.0.1 0 100 0 65001 ? *>i 192.168.202.0 10.0.0.4 0 100 0 65002 ? *> 192.168.203.0 192.168.0.2 0 65000 65003 ?
ASBR3#show mpls forwarding-table Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or Tunnel Id Switched interface 16 Pop Label 10.0.0.6/32 823 Fa1/1 172.16.7.2 17 16 10.0.0.5/32 272 Fa1/0 172.16.2.1 18 21 10.0.0.4/32 0 Fa1/0 172.16.2.1 19 Pop Label 10.0.0.2/32 0 Fa1/0 172.16.2.1 20 25 10.0.0.1/32 0 Fa1/0 172.16.2.1 21 Pop Label 172.16.8.0/30 0 Fa1/0 172.16.2.1 22 18 172.16.3.0/30 0 Fa1/0 172.16.2.1 23 Pop Label 172.16.4.0/30 0 Fa1/1 172.16.7.2 24 23 172.16.5.0/30 0 Fa1/0 172.16.2.1 25 Pop Label 172.16.6.0/30 0 Fa1/0 172.16.2.1 26 Pop Label 172.16.1.0/30 0 Fa1/0 172.16.2.1 27 24 10.0.0.7/32 351 Fa1/0 172.16.2.1
データプレーン転送時、NextHopに、 シングルホップで到達できるように、 LDPラベル[25]が挿入される
CE3
CE1
30
NW拡張3「 MPLS-VPN化」
宛先
送信元
mp-BGP活用によるMPLS-VPN化して、同一VRFユーザでの各拠点間で、双方向で疎通確認できるネットワーク環境を構築する
MPLS-BB (OSPF, LDP)
MPLS-BB (OSPF, LDP)
CustomerA
CustomerA
CustomerB
VRF VRF
VRF
31
▪️C-Planeの特徴
・mp-BGPによるvpnv4プレフィックス/VPNラベル配布 ・VRFへのルーティング情報の注入可否は、Route-Targetで判定
mp-BGP/LDP面による階層化構造を構成
LDP(OSPF)面
CE3CE1
mp-BGP面
RR RR CE3CE1
32
CE3#show bgp ipv4 unicast BGP table version is 7, local router ID is 10.10.10.3 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path *> 10.10.10.1/32 192.168.103.1 0 65000 9598 65001 ? *> 10.10.10.3/32 0.0.0.0 0 32768 ? *> 192.168.101.0/30 192.168.103.1 0 65000 9598 ? * 192.168.103.0/30 192.168.103.1 0 0 65000 ? *> 0.0.0.0 0 32768 ? *> 192.168.201.0 192.168.103.1 0 65000 9598 65001 i *> 192.168.203.0 0.0.0.0 0 32768 i
BGP4
BGP4mp-BGP4 BGP4
mp-BGP
BGP4 MPLS-BB MPLS-BB
▪️BGPテーブルでの経路情報 AS65002からの経路情報は 保持していない!!
CustomerA
CustomerA
CustomerB
宛先
CE3#ping 192.168.201.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.201.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 140/189/272 ms
CE3#traceroute 192.168.201.1 Type escape sequence to abort. Tracing the route to 192.168.201.1 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.103.1 24 msec 44 msec 68 msec 2 172.100.1.1 [MPLS: Label 25 Exp 0] 264 msec 268 msec 232 msec 3 192.168.0.1 [MPLS: Label 31 Exp 0] 308 msec 236 msec 168 msec 4 172.16.2.1 [MPLS: Labels 16/30 Exp 0] 280 msec 196 msec 216 msec 5 192.168.101.2 [AS 9598] [MPLS: Label 30 Exp 0] 212 msec 120 msec 112 msec 6 192.168.101.1 [AS 9598] 272 msec 244 msec *
送信元34
実際、ping通信してみると..想定とおり成功した
36
AS65001側のIPv4プレフィックス情報が、AS65003に経路広告される様子と、ASBR3で保持している経路情報(採用されたNextHopアドレス)を確認してみた。 さらに、データプレーン転送の様子も確認してみた。
”mp-BGP”を用いたvpnv4プレフィックス経路広告 の振る舞い調査
データプレーン
192.168.103.2
192.168.201.1
BGP4
BGP4mp-BGP
MPLS-BB (OSPF, LDP)
MPLS-BB (OSPF, LDP)
37
mp-iBGP通信(PE1-> ASBR3)RouteReflector経由
調査1
router bgp 9598 bgp log-neighbor-changes no bgp default route-target filter neighbor 10.0.0.7 remote-as 9598 neighbor 10.0.0.7 update-source Loopback0 neighbor 192.168.0.2 remote-as 65000 ! address-family vpnv4 neighbor 10.0.0.7 activate neighbor 10.0.0.7 send-community extended neighbor 10.0.0.7 next-hop-self neighbor 192.168.0.2 activate neighbor 192.168.0.2 send-community extended exit-address-family
router bgp 9598 bgp log-neighbor-changes neighbor 10.0.0.7 remote-as 9598 neighbor 10.0.0.7 update-source Loopback0 ! address-family vpnv4 neighbor 10.0.0.7 activate neighbor 10.0.0.7 send-community extended neighbor 10.0.0.7 next-hop-self exit-address-family ! address-family ipv4 vrf customerA redistribute connected neighbor 192.168.101.1 remote-as 65001 neighbor 192.168.101.1 activate neighbor 192.168.101.1 as-override exit-address-family VRFを保持する設定は不要!
PE1 ASBR3
ASBR3側で取得したmp-iBGP(UPDATE)通信キャプチャ
38
NextHopに、シングルホップで到達できるように、LDPラベルが挿入される
vpnv4プレフィックスに対応したVPNラベルが挿入される
Route Targetに該当するVRFテーブルを 保持している場合には、vpnv4プレフィックスを、VRFテーブルに注入を許可される
39
データプレーン通信(CE3->CE1)調査2
192.168.103.2
192.168.201.1データプレーン
LDP
宛先
ASBR3#sh bgp vpnv4 unicast all labels Network Next Hop In label/Out label Route Distinguisher: 9598:101 10.10.10.1/32 10.0.0.1 29/28 10.10.10.3/32 192.168.0.2 35/29 192.168.101.0/30 10.0.0.1 30/29 192.168.103.0/30 192.168.0.2 36/30 192.168.201.0 10.0.0.1 31/30 192.168.203.0 192.168.0.2 37/31 Route Distinguisher: 9598:102 10.10.10.2/32 10.0.0.4 32/28 192.168.102.0/30 10.0.0.4 33/29 192.168.202.0 10.0.0.4 34/30
ASBR3#show mpls forwarding-table Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or Tunnel Id Switched interface 16 Pop Label 192.168.0.2/32 0 Fa2/0 192.168.0.2 17 Pop Label 10.0.0.6/32 3043 Fa1/1 172.16.7.2 18 19 10.0.0.5/32 640 Fa1/0 172.16.2.1 19 20 10.0.0.4/32 0 Fa1/0 172.16.2.1 20 Pop Label 10.0.0.2/32 0 Fa1/0 172.16.2.1 21 16 10.0.0.1/32 0 Fa1/0 172.16.2.1 22 Pop Label 172.16.8.0/30 0 Fa1/0 172.16.2.1 23 Pop Label 172.16.4.0/30 0 Fa1/1 172.16.7.2 24 22 172.16.3.0/30 0 Fa1/0 172.16.2.1 25 17 172.16.5.0/30 0 Fa1/0 172.16.2.1 26 Pop Label 172.16.6.0/30 0 Fa1/0 172.16.2.1 …(snip)
データプレーン転送時、NextHopに、シングルホップで到達できるように、LDPラベル[16]が挿入される
データプレーン転送時、 VPNラベル[30]が挿入される
送信元CE3
CE1