08/25の通信障害概説
Matsuzaki ‘maz’ Yoshinobu<maz@iij.ad.jp>

maz@iij.ad.jp

1

観測されている概要• 2017/08/25 12:22JST頃• AS15169が他ASのIPv4経路をトランジット開始• ⽇頃流通しない細かい経路が⼤量に広報• これによりトラヒックの吸い込みが発⽣• 国内の各ASで通信障害を検知• 2017/08/25 12:33JST頃• AS15169がトランジットしていた経路を削除

maz@iij.ad.jp

2

観測された問題のBGP経路概要• 経路数• 全体で約11万経路 (⽇本分が約25000経路)• /10から/24まで幅広い経路(半数程度が/24)• 通常流れていない細かい経路が多かった• AS PATHは概ね “701 15169 <本来のAS PATH>”• 広報元AS番号は正しそう• 各ASが直接AS15169と張っているBGP接続では今回の経路広報は観測されていない• 対象AS• 全体で約7000 AS程度 (⽇本分が約89 AS)
BGPは観測点によって⾒える情報が異なるのでご注意
maz@iij.ad.jp3その他、AS15169の広報経路• 期間中、AS15169が経路⽣成元となる、⽇頃⾒えない経路が追加で広告されていた• Google関連• AS15169とその配下ネットワークの細かな経路• 654経路• 世界中のIXPで使われていると思われるsegment• 78経路• その他、まだ判別できていないsegment• 2経路
BGPは観測点によって⾒える情報が異なるのでご注意
maz@iij.ad.jp4

概要図１: 平常時
Verizon
AS701

該当経路を受信したAS

平常時の通信経路

意図せずトランジットされたAS

GoogleAS15169

maz@iij.ad.jp5

概要図２: 誤トランジット発⽣
Verizon
AS701

該当経路を受信したAS

BGP経路の伝搬

意図せずトランジットされたAS

GoogleAS15169

maz@iij.ad.jp6

概要図３: 障害期間中の通信
Verizon
AS701

該当経路を受信したAS

選択された
通信経路

意図せずトランジットされたAS

GoogleAS15169

maz@iij.ad.jp

7

障害や影響の推定• 広報された宛先向けの通信が⽶国経由になった• 遅延の発⽣• 経路上に⼗分な帯域がない場合は輻輳の発⽣• ⼤量の経路広報を受信した• 負荷上昇でルータが不安定になった• RIB/FIB溢れでルータが不安定になった• IXP越しの通信が意図しない経路に迂回したかも• 発⽣条件• 内部的にIXPセグメントのIPアドレスをNEXTHOPに利⽤• 外部から今回広報されたIXPセグメントの経路を受信• しかも内部で優先されてしまう• prefix⻑が⼀緒だと⼀般に Connected > EBGP > IBGP な優先度

maz@iij.ad.jp8輻輳箇所と影響
通信元ASが701を経由する、全ての通信が⼤きな影響を受ける

該当経路を受信したAS

Verizon
AS701

遅延の発⽣

GoogleAS15169

maz@iij.ad.jp

意図せずトランジットされたAS

今回広報された細かな経路向け通信のみで⼤きな影響を受ける

9

⼤量の経路追加
通常65万経路+10万経路通常65万経路+10万経路

上流
1

2
IBGP

IBGP

3+20万経路 = 150万経路• 現状DFZに約65万経路• 何もしていないと内部のRT3は65万x2で130万経路• 今回、10万x2追加で150万経路受信していたかも• 構成によっては更に多い場合も
maz@iij.ad.jp10経路削減を適⽤してても• ⾮⼒なルータで運⽤するため国内経路のみを内部ルータに渡している場合• AS PATH(_4713_ 等)で国内経路を識別していた場合、追加で約25000経路

通常65万経路+10万経路IBGP: 国内経路のみ
通常数千経路+25000経路• 構成によってはもっと多い• 通常時の5倍から10倍の経路数が追加された可能性がある• これら⾮⼒なルータが過負荷になるなどの障害が発⽣した可能性がある
maz@iij.ad.jp

11トランジットされちゃったAS• 世界でおよそ7000 AS程度
• 内、⽇本(JPNIC管轄)のものが 89 AS• 広報されたprefix数のAS別順位• OCN/AS4713が⼤きな影響を受けている
AS番号

prefix数

4713/OCN

24381

7029/WINDSTREAM

7837

8151/UNINET

4639

9121/Turk Telecom

4606

1659/TANet

3106

9394/CTTNET

2137

BGPは観測点によって⾒える情報が異なるのでご注意

124713が⽣成している経路
平常時(内78prefixが影響)

今回、追加で流通した経路

prefix長/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24

prefix長/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24

prefix数
137961238
1155151121967

BGPは観測点によって⾒える情報が異なるのでご注意

prefix数

11329101579868
1764
30352432
16594
13

RIPE Atlas Probe• RIPE NCCのプロジェクト• 世界にProbeを配っていて、エンドユーザ視点での計測が可能• AS4713のprobeを抽出し、宛先別に影響を推定• OCN内で通信が完結する宛先: k.root-servers.net• 国内で今回の影響を受けた宛先: m.root-servers.net• 海外で今回の影響を受けた宛先: ctr-ams02.atlas.ripe.net

maz@iij.ad.jp

14

RIPE Atlasで⾒る: OCN内Probe28818

Probe26837
IPv4IPv4

IPv6IPv6

maz@iij.ad.jp

15

RIPE Atlasで⾒る: OCNと国内
Probe28818

Probe26837
IPv4IPv4

IPv6

IPv6

maz@iij.ad.jp

16

RIPE Atlasで⾒る: OCNと海外
Probe28818

Probe26837
IPv4IPv4

IPv6

IPv6

maz@iij.ad.jp

17

RIPE Atlasから⾒えること• 該当Probeでは国内、海外のIPv4通信に遅延の増加やパケットロスを観測• IPv6へ直接の影響はほとんどなかった模様• IPv4のBGP経路が対象であったため• probe26837ではIPv4/IPv6で宛先に寄らずパケットロスが観測されているためProbe近傍のどこかで輻輳が発⽣していたかもしれない• Probeから2ホップ以内ではパケットロスを観測せず• AS701向け輻輳の影響はまだ不明• 残念ながらAS701経由の良い計測が⾒つけられていない
maz@iij.ad.jp18

事象の推定• 12:22JST頃• AS701向けのピアで経路広報ポリシを何か変更• 内部経路が全てAS701に漏れ出す• 本来はEBGPに広報しない経路• 他のEBGPピアから聞いた経路• AS15169内部⽤途な経路• 12:33JST頃• 問題のあったピアで経路ポリシを修正、もしくは該当ピアをshutdown• ^701 15169$な追加のBGP UPDATEが⾒えているので、何らかAS701内部で⾒えるBGP属性値が変更になっているはず
maz@iij.ad.jp

19

対策案１：経路フィルタ
1. AS701がAS15169向けに受信の経路フィルタ
やってれば良かった• IRRで!gAS15169引いたら、結構しびれるオブジェク
ト群だね• AS PATHベースのフィルタでも⼤丈夫だったかも

2. AS15169が多段の安全策を持っていれば良かった？
• ⾃動管理になればなるほど、多段の安全策もさくっと通り抜けるかもね

maz@iij.ad.jp20

対策案２：Secure BGP?
1. Secure BGPでPath Validationできていれば良かった？
• 今回、広報の隣接関係⾃体は正当。トランジット対
象かどうかみたいな検証ってPath Validationでできる予定なんだっけ？ -> できなさそう

2. RPKIのROAを使ったOrigin ValidationでMaximum Length値を厳密に設定して検証できていれば良かった？
• 今回、Origin側が細かい経路を特定のピア(AS15169)にだけは広報していたとすると、そもそもMaximum Length値もそれに合せて緩やかにしないといけない気がするので、やっぱり駄⽬だったかも
maz@iij.ad.jp

21

対策案３：経路制御ポリシ
1. 特定のピアだけ細かい経路でトラヒック制御するのがイケてない？
• みんなが全ピアに同じポリシで経路広告していれば恐らく影響はかなり限定的だったはず

maz@iij.ad.jp22