はれてる！？事件

<p data-sourcepos="2:1-2:129">この記事はシスコの有志による Cisco Systems Japan Advent Calendar 2024 の 11日目として投稿しています。</p>
</div>
</div>
<p data-sourcepos="4:1-12:69">2017年版: <a href="https://qiita.com/advent-calendar/2017/cisco" class="autolink">https://qiita.com/advent-calendar/2017/cisco</a><br>
2018年版: <a href="https://qiita.com/advent-calendar/2018/cisco" class="autolink">https://qiita.com/advent-calendar/2018/cisco</a><br>
2019年版: <a href="https://qiita.com/advent-calendar/2019/cisco" class="autolink">https://qiita.com/advent-calendar/2019/cisco</a><br>
2020年版 1枚目: <a href="https://qiita.com/advent-calendar/2020/cisco" class="autolink">https://qiita.com/advent-calendar/2020/cisco</a><br>
2020年版 2枚目: <a href="https://qiita.com/advent-calendar/2020/cisco2" class="autolink">https://qiita.com/advent-calendar/2020/cisco2</a><br>
2021年版 1枚目<a href="https://qiita.com/advent-calendar/2021/cisco" class="autolink">https://qiita.com/advent-calendar/2021/cisco</a><br>
2021年版 2枚目<a href="https://qiita.com/advent-calendar/2021/cisco2" class="autolink">https://qiita.com/advent-calendar/2021/cisco2</a><br>
2022年版(1,2): <a href="https://qiita.com/advent-calendar/2022/cisco" class="autolink">https://qiita.com/advent-calendar/2022/cisco</a><br>
2023年版: <a href="https://qiita.com/advent-calendar/2023/cisco" 
class="autolink">https://qiita.com/advent-calendar/2023/cisco</a><br>
2024年版: <a href=https://qiita.com/advent-calendar/2024/cisco class="autolink">https://qiita.com/advent-calendar/2024/cisco</a>&lt;---こちら</p>



<H1>前書き

Cisco SD-WANの技術仕様やトラブルシューティング手法について架空人物の会話を通してお届けいたします。

<H1>プロローグ

　目を疑うとはまさにこういう光景だった。
　液晶画面を凝視していた男は愕然として目を見開いたまま固まった。

　想定外の事象を目の当たりにした男は、衝撃のあまりに心の中で呟くつもりの言葉を思わず声に出してしまった。

　この無意識に発された一言は廊下を挟んで向かい側の部屋に伝わり一連の推理劇を引き起こすことを、男はこの時点で知る由もなかった。
* * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * 

<H1>第一章　安楽椅子探偵

　毎週一番楽しみにしている時間なのに、<b>今回で最後になると思うとやはり寂しくなるね。</b>兎麗莎（とれいさ）は検証センターの221B室こと「ネットワーク＆ミステリー研究室」に入室して読書中の女性に視線を向けながら心の中で嘆いた。

　彼女の名前は詩須子（しすこ）、約1年前から兎麗莎のOJTメンターを務めてきており、兎麗莎の憧れの先輩だ。

　「あっ、兎麗莎ちゃん、お疲れ！今はさ、めっちゃ安楽椅子探偵をやってみたい気分だな〜」と、詩須子が読みかけの<b>『The Nine Mile walk』</b>を机に置いて軽く背伸びをしながら兎麗莎に向かって興奮気味に言った。
　
　「お疲れ様です。あっ、読書の邪魔をしたようですみません。」

　「ううん、ちょうどよかった。ねぇ、なんか簡単な、たとえば20文字くらいの言葉を言ってみて！思いもかけなかった論理的な推論を私が引き出してみせるから！」

　「えっ？あっ、はい！」兎麗莎が頷きながら、どうしようかなと思索を巡らし始めるちょうどその時に、廊下の向こう側から悲鳴（？）のような声が入ってきた。


　<b>「えっはれてる！？暗黙のACL(アクル)は仕事しろよ！」</b>

と兎麗莎には確かにこう聞こえた。
* * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * 

<H1>第二章　推理編

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/22bc4c63-e4b7-bace-a2dd-75d7897e3381.png)
 <font color=white>「えっはれてる！？暗黙のACL(アクル)は仕事しろよ！」はいかがでしょうか？ 

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6c4562c2-6988-b679-4653-4e544f84b20e.png)
 <font color=white>おお、なんか神秘な感じね。文字数もちょうどよかったし。うん、これにしよう！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/1e9f691a-780a-ae55-c60c-f853de14d5cc.png)
<font color=white>廊下の向こうから届いた声のようなので、サーバ研究室、クラウド研究室、データベース研究室のいずれかの部屋で検証作業とかをやっている人の声だったかもしれませんね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f7bd999a-2763-3f79-73f9-6592637534ac.png)
<font color=white>そうかもね。あっ、こういうメタ推理のところからスタートするのではなくて、あくまでも言葉に着目して推理した方が楽しいよ。たとえば、声の主は明らかに何か想定外のことに遭遇して驚いたね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f914dd77-23f8-8cac-d625-4dc17c5b4e89.png)
<font color=white>確かに喋り方というか、このように伝わってきましたね。「はれてる」という部分に驚いたと思いますけど、何がはれているのでしょうかね？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6ab6c391-4b27-bdaf-f03a-675842a52e74.png)
<font color=white>IPsecやGREなどのトンネルか、OSPFやBGPなどのダイナミックルーティングのネイバーと思う。要は、トンネルが張れているか、ネイバーが張れているという意味の「張れてる」と思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/20df9971-03ad-527a-f8e5-cabfd7f862af.png)
<font color=white>なぜですか？向こう側の研究室はどちらかというとサーバ系で、ネットワーク系ではないと思いますけど。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d169f649-dfbf-a7f2-9e2c-bd30211b2bf9.png)
<font color=white>あっ、くどいようでごめん。でも、やはりメタ推理はあまり好きではないので、言葉に着目して推理したのね。特に後半の「暗黙のACL(アクル)は仕事しろよ」のACL、つまりAccess Control Listね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/59e751c8-0ef3-95cc-3744-ba9c9da438c2.png)
<font color=white>確かにAccess Control Listが出てくると、「怪我で腫れている」の「腫れてる」でもなく、「天気が晴れている」の「晴れてる」でもないと思いますが、Access Control List自体もいろんな意味があり、ネットワーク系以外の可能性もありますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3e425849-b19d-33c9-1126-dea9d3d195f3.png)
<font color=white>その可能性はすでに考えた。確かにAccess Control Listだけを見ると、Linux系のファイルシステムのAccess Control List、Windows Active DirectoryのAccess Control List、OracleデータベースのAccess Control ListやAWSのS3 Access Control Listなど色々ネットワーク以外のAccess Control Listの可能性もあるね。ただし、Access Control Listの略称である ACLを「アクル」と呼ぶのはほぼネットワークエンジニアしかないと思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/571155e3-77aa-19fc-72b7-3a96c1b1f07d.png)
<font color=white>あっ、言われてみれば確かに！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/1279a123-ee9c-188c-d87a-513b3819945a.png)
<font color=white>もちろん、ネットワークエンジニアがサーバ系の作業を行っている可能性もあるけど。その場合でも「張れてる」という用語を自然に使える対象はやはりGREやIPsecのトンネルか、ルーティングプロトコルのネイバーくらいしかないと思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/26ec21bf-3320-c9df-0c58-b2a0ec1eb641.png)
<font color=white>なるほど、納得です！ってことは、声の主は想定外のトンネルが張れている事象、あるいは想定外のルーティングプロトコルのネイバーが張れている事象を見て、驚いたということですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3a8262dd-74ea-29a4-1901-6a44f57fd405.png)
<font color=white>はい、そうだね。つまり、声の主は本来トンネルかネイバーが絶対「張れない」と想定していたけど、実際にトンネルかネイバーが「張れてる」事象に気付いて驚いた。さらに、声の主はすぐこの想定外の「張れてる」事象は、ACL（アクル）、つまり  Access Control Listのせいと断定して、怒っていたと推察できる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4adce92a-1f06-b72d-a0e0-0d85c8aa24d7.png)
<font color=white>ACLのせいというのは、トンネルかネイバーが「張れない」ように何かの特定のACLを設定したけど、そのACLがうまく機能しなかったということでしょうか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/db0e6f39-4871-234a-d1ae-49a63a193efd.png)
<font color=white>いや、多分、トンネルかネイバーが「張れない」ようにわざわざ設定したACLが動作しなかったのではなく、元々何も設定しなくても動作するはずのACLが動作しなかったことに怒りを覚えたと思うね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2c7da355-4b9f-a342-62ff-43252d3c1ca9.png)
<font color=white>あっ、そうか。「暗黙のACL(アクル)は仕事しろよ」の「暗黙」の部分を忘れました。確かに、暗黙のACLは文字通りに、設定しなくても動作するACLのことですね。えっと、ということはACLの最後の全部Denyの処理がうまく機能しなかったということでしょうか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/df3a9d01-e9ad-ebaa-1aa4-f7dfcb3b0b71.png)
<font color=white>いや、ACLの最後の暗黙のDenyではないと思うよ。なぜなら、状況的にはあの一言は声の主が咄嗟に発した言葉だったので、普段から使い慣れている言葉が自然に口から飛び出たと思う。そう考えると、もしACLの最後の暗黙のDenyのせいであれば、「暗黙のDenyは仕事しろよ」とか、あるいは単に「ACLは仕事しろよ」という表現を使っていたと思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/08617ad7-7411-e4d6-98fc-2b16af5a7ee5.png)
<font color=white>確かに、違和感がありますね。そうなると、「暗黙のACL」は、声の主が何か使い慣れているシステム・機器に存在する仕組みで、それはちゃんと機能すれば、トンネルかネイバーが張れないのに、なんらかの理由でうまく機能しなかったということになりますね。結局、その「暗黙のACL」とは何でしょうね？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4ba7f033-5b8c-4b46-e0c5-ff927be1d9af.png)
<font color=white>ここからはやや大胆な推理になるけど、トンネルかネイバーが張れるか張れないかといった文脈で考えると、その「暗黙のACL」が存在するシステム・機器はルータである可能性が高いと思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/182ee99a-7c91-1fc5-e8a2-1bdaf7971305.png)
<font color=white>確かに、合理性がありますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/742aa0f6-96e7-7943-7036-b13c459eb8e0.png)
<font color=white>そして、「暗黙のACL」という表現はどう考えても英語から訳された言葉で、原文はおそらく「Implicit ACL」と思う。試しに、「Router」と「Implicit ACL」の両方をキーワードにしてGoogleで検索してみたら、システム・機器の正体がわかるはずよ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d215c1dd-d36b-895c-f2df-fcbfbe032cf5.png)
<font color=white>早速検索してみよう！あっ、出た、上位の検索結果は全部Cisco社のSD-WANルータですね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ef5ddbc3-093f-f8e0-18c6-f16d7c262430.png)
<font color=white>やはりそうだね。システム・機器の正体はCisco SD-WANルータと仮定すると、例の「張れてる」の対象はトンネルではなく、OSPFかBGPのネイバーだね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7c1ba570-fb20-c638-af61-4a10ed67b9d6.png)
<font color=white>えっと、それはどうやってわかったのですか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4b4471b6-7382-8407-097e-6897a93cb738.png)
<font color=white>Cisco SD-WANルータの「暗黙のACL」はallow-serviceとも呼ばれており、仕様的に以下のサービスの制御しかできない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/bbc76f55-047d-602f-86b6-f97db94a1afe.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7fc0a0a9-34cb-9a9e-0011-3f7bc5cb50c1.png)
<font color=white>つまり、基本的にCisco SD-WANルータの「暗黙のACL」の設定だけでは、SD-WANトンネルを阻害することができない。OSPF、BGPは「暗黙のACL」のサービスに含まれているので、「暗黙のACL」の設定次第で、OSPFやBGPのネイバー張れないようにすることができるね。ちなみに、デフォルトでは「暗黙のACL」のOSPFもBGPも無効となっているため、特に何も設定しなくてもOSPFやBGPのネイバーが張れない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e6ea5756-e9df-0070-d4a5-bc8caada1aa6.png)
<font color=white>確かに！あっ、でも、SD-WANトンネルの死活監視は確かにBFDを使っているので、「暗黙のACL」のBFDサービスを無効にしたらSD-WANトンネルが張れなくなるのではないのでしょうか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/bdb4027a-c50b-a41b-cc5e-1d4753870ad2.png)
<font color=white>あっ、ちょっと紛らわしいけど、「暗黙のACL」のBFDサービスはSD-WANトンネルのBFDではなく、ルーティングプロトコルの高速切り替え用のBFDだね。機能名でいうと、「BFD for Routing Protocols in Cisco Catalyst SD-WAN」だね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/13284899-2d4d-14ff-ddf7-fc2dac9e26c8.png)
<font color=white>なるほど、確かに「暗黙のACL」のBFDサービスはデフォルトで無効ですしね。あっ、でも、トンネルといっても、別にSD-WANトンネルだけでなく、標準IPsec/GREトンネルという可能性もありますよね。これらのトンネルの張れるか張れないかは「暗黙のACL」によって制御できるかは考慮しておく必要がありますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d74adefd-7926-c0be-b3ff-8b4ffd4c096d.png)
<font color=white>その可能性はすでに考えた。「暗黙のACL」の仕様では、コンフィグで明示的に設定された標準IPsec/GREトンネルは自動的に許可されているね。言い換えれば、「暗黙のACL」は明示的に設定されている標準IPsec/GREトンネルを阻害できない。Cisco社のSD-WAN Black Beltトレーニング座学資料の「暗黙のACL」の解説スライドにも記載されているね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6cb8be1f-5cc1-7e53-e743-bb95425dc3ac.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2e5098cc-e0b9-3996-078e-011e39f15548.png)
<font color=white>確かにそうでした！Cisco社のSD-WAN Black Beltトレーニング受講時の記憶が蘇った気がしますw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/17f4d7fc-e09e-94b7-2f92-571d8602d307.png)
<font color=white>一旦状況を整理してみよう。
　声の主はCisco SD-WANルータで何らかの検証を実施している時に、暗黙のACLのallow-service BGPかallow-service OSPFを無効にしているにもかかわらず、Transport VPN側のBGPかOSPFルータとネイバーが張れている事に気付いて、暗黙のACLが効いていないと思い、「えっはれてる！？暗黙のACL(アクル)は仕事しろよ！」と例の言葉を発した。
　今までの推理で分かったのは、これくらいかしらね。

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/1d13330d-48a8-ff29-0b5c-cac1f3ac4450.png)
<font color=white>あの一言からここまで論理的に分析できたのはすごい！
　でも、なんで「張れてる」のでしょう？やはり暗黙のACLの不具合でしょうか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/55c851a2-f034-e743-d56e-04b548b2fbd8.png)
<font color=white>暗黙のACLの不具合か。。不具合が原因だったらちょっと興醒めだけどねw　せっかくのミステリーなのに。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7e2d4086-6bf5-8753-5631-f910478f63be.png)
<font color=white>あっ！ひょっとすると、声の主は暗黙のACLはTransport VPNでしか機能しないことを知らずに、Service VPN側のBGPかOSPFネイバーが張れないように制御しようとしたという可能性は？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/43be4b9c-8fc9-1f60-1534-92c4e35bc316.png)
<font color=white>その可能性はすでに考えた。声の主はBGPかOSPFのネイバーが想定外に張れている事象に気付いた直後に、暗黙のACLが機能していないと判断し、さらに咄嗟に「えっはれてる！？暗黙のACL(アクル)は仕事しろよ！」という言葉を発したので、Cisco SD-WANにそれなりに詳しい人物と見て問題ないでしょう。
　そもそもあの驚きぶりからすると、多分直前までBGPかOSPFのネイバーが張れないことを検証等で確認済み、暗黙のACLの設定をいじっていないのに、突然にネイバーが張れるようになったというシチュエーションの可能性も低くないと思う。

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/8c780338-6681-a2ba-d9ce-bc7d95f1f834.png)
<font color=white>確かにそうですね。うーむ、謎が深まりましたね。やはり、暗黙のACLがサボっていたのかな。あー、声の主と同じ気持ちになりそうです。
　というか、せめてルーティングプロトコルはBGPかOSPFか特定できればいいのになぁ。そうすると検証もやりやすくなりますね。
　あー、早速検証環境を構築してこの謎を再現してみたくなっちゃう気持ちです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/bb003b7b-c5b7-691a-967c-fd008e0ce449.png)
<font color=white>BGPかOSPFか。。
<font color=white>（Cisco SD-WAN Black Beltトレーニングの座学資料を凝視しつつしばらく思索に耽る）
<font color=white>あっ、わかった！兎麗莎ちゃん、グッジョブ！
<font color=white>謎は全て解けた！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d195b404-c1ac-d1af-7953-07beafc08063.png)
<font color=white>えっ？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e314bad8-691c-953a-feaf-ba62335ac67d.png)
<font color=white>真犯人はこの中にいる！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/860f04d6-2701-593e-9efa-078fe829d800.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ed16399f-1de8-b9c5-4f13-fa3096307060.png)
<font color=white>こちらは先ほど見せてもらった暗黙のACLを説明するスライドですね。つまり、やはり真犯人は暗黙のACLということでしょうか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/914ffc39-0516-9b98-ab41-acca5998f1c6.png)
<font color=white>いや、暗黙のACLは無実だ。暗黙のACLはただ仕様通りに動作していただけだと思う。真犯人の名前（と手口）は、このスライドに記載されているという意味で、「真犯人はこの中にいる！」と言ったのよ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/0f3aff86-3b13-4302-3daa-acc22efdfc6e.png)
<font color=white>えっ、どういうこと？焦らさないで、教えてください！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/32de8b28-bafd-4595-d275-67e9b4357bff.png)
<font color=white>はい。
<font color=white>（ちょっと大袈裟にカッコつけてから、スライドのある文字列にビシッと指を突きつける）
<font color=white>真犯人はあんただ！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/cc30f551-dc83-0f72-9482-91086392ae37.png)
* * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * 

<H1>第三章　解決編

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/774c8eca-2865-ddd2-83da-c930795da971.png)
<font color=white>「フローエントリに一致するリターンパケット（DIA 対応）」は真犯人？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ace27df8-fb0d-fb48-4994-fc754970b0af.png)
<font color=white>はい。より正確にいうと、真犯人はDIA NATで、手口は「フローエントリに一致するリターンパケット」だ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/16b9cabe-022f-9575-34c7-967727f2bc8a.png)
<font color=white>えっ、ちょっと意外性がある真犯人ですね。どうやってわかったのですか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/c1b96c40-b98a-4f6e-f9c1-a964b02be1b9.png)
<font color=white>兎麗莎ちゃんのヒントのおかげよw　 
　　「せめてルーティングプロトコルはBGPかOSPFか特定できれば」と兎麗莎ちゃんが呟いたじゃん。それを聞いて、暗黙のACLにフォーカスしすぎて、そもそも大事な「被害者特定」はまだやっていないなってことに気づいたの。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d1b4250e-d3ff-16fd-c87a-c6d7458901d2.png)
<font color=white>被害者特定？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2645949b-e921-963a-72ce-7cccfce2ccad.png)
<font color=white>想定外の「張れてる！？」は事件とみなせば、被害を受けたのはネイバーが張れないはずなのに張れてしまった「BGPかOSPF」、あるいはその両方になるよね。けど、Transport VPN側のルーティングでBGPとOSPFの両方を同時に使用する構成は滅多にないし、そもそも状況的に声の主はBGPとOSPF両方の想定外の「張れてる」事象に同時に気づいて例の言葉を発したとも考えにくいので、「被害者」はBGPとOSPFの両方ではなく、BGPとOSPFのどちらかのみ、という可能性が高いと判断しても問題なさそうね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4668b8b5-f5f5-386d-b4fe-40783671f73b.png)
<font color=white>なるほど！確かに私も無意識にBGPかOSPFのどちらか一方だけが使用されていると認識して、あの再現試験をやりたくなる話を呟きましたね。でもBGPかOSPFの特定はできますか？手がかりが少なく無理な感じですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2ca54e16-f6c8-e101-86fb-131dcae1bbc5.png)
<font color=white>そこは、例のCisco SD-WAN Black Beltトレーニングの座学資料のスライドと、かの名探偵の名言のおかげで、被害者の特定ができ、さらに真犯人も同時に特定できたの！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4f3bde0d-c2b6-29e0-f565-b574bf26f666.png)
<font color=white>かの名探偵の名言って？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b0a170e6-ab3a-b140-dae8-0b6b74aef509.png)
<font color=white>「When you have eliminated the impossible, whatever remains, however improbable, must be the truth.」
日本語に訳すと、「不可能なものを消去し、最後に残ったのは如何に奇妙なものであっても、それが真実なんだ。」

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d0fc9a72-dbd2-99b2-af8b-d8dd2d87706f.png)
<font color=white>あっ、シャーロック・ホームズの名言ですね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7785bc75-5f64-ee8e-1182-3b3fa0beba1f.png)
<font color=white>はい、まずは例のCisco SD-WAN Black Beltトレーニングの座学資料のスライドをもう一度確認しよう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/454bf13f-2460-9508-a139-73a7af7e8701.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/28bbeb1d-73c4-5309-1b74-7eac7fea7d77.png)
<font color=white>このスライドに、暗黙のACLが許可できる通信および条件が記載されているのね。Allow-serviceのBGPもOSPFも無効に設定されている場合、BGPやOSPFの通信は暗黙のACLを通せるか？という観点を踏まえて、一旦表の形に整理すると、以下のようになる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b6451648-277e-bfd7-ec97-1fa3d08f859e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/58040c5e-92c0-77c4-bf48-114a1a6dd7e9.png)
<font color=white>では、①〜⑦の順番で確認していこう。確認するポイントは、A)設定済みのTransport側のBGPかOSPFのネイバーを阻害もしくは許可する効果があるか、B)BGP、OSPFのネイバー確立への影響は異なるか。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ce67ce6e-1be4-0f91-a19c-5f60549f3ba4.png)
<font color=white>①はコントローラのDTLS/TLSの許可なので、明らかにA)もB)も×

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4d597344-0dde-36ba-567b-18bb5ca5a091.png)
<font color=white>②はSD-WANルータ間のSD-WANトンネルの許可なので、明らかにA)もB)も×

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e86c2524-d889-6059-c61a-b6762e196a25.png)
<font color=white>③はSSE等との標準IPsec/GREトンネルなので、明らかにA)もB)も×

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/503d872d-bc57-a199-b4aa-97691e27995d.png)
<font color=white>④はDIA NAT、つまりローカルブレイクアウトのトラフィックの戻りのパケットの許可なので、通常はサービスVPNのトラフィックにしか適用されないため、A)は×と思われる。ただし、B)は○だね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/24d71b26-bc50-1afd-c607-c639c25cf81d.png)
<font color=white>ちょっと待って！なんで④のB)は○なんですか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/60b6cf48-c11b-66f8-7212-710dbff01616.png)
<font color=white>例えば、不具合や謎の仕様により、万が一Transport VPN側SD-WANルータの自発パケットはDIA NATによりNAT変換された場合、SD-WANルータからピアに送信されるBGPかOSPFのトラフィックの戻りのパケットが④の仕組みにより、暗黙のACL（allow-service BGP/OSPF無効）を突破して戻って来られる可能性があるよね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/bb463702-ee16-a0d0-cf13-be3e2fd5e6be.png)
<font color=white>不具合や謎の仕様はなんか怖いけど、はい、そうなりますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/c58b2bf9-ccde-979c-9b8b-4ee1e478f33f.png)
<font color=white>仮にこうなったとしても、BGPはネイバーが張れるが、OSPFはネイバーが張れない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/518d11b4-3bc6-5ec1-e3d2-e6a5344f5bfd.png)
<font color=white>それはなぜですか？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/22967ba9-767e-7ce2-d855-06544400fee1.png)
<font color=white>そろそろOJT卒業する兎麗莎ちゃんなら、BGPやOSPFのネイバー確立の基本についてもうちょっと考えてみると理由がわかると思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/eea5ce9e-dcdd-fb7c-822b-968c64b326e3.png)
<font color=white>あっ、はい！
　えっと、BGPはTCPポート179番で通信して、ピアとTCPコネクションを確立してからBGPセッションのやり取りを行い、ネイバーを確立します。
　OSPFはIPプロトコル番号の89番を使用して、マルチキャスト（224.0.0.5）でネイバーを検出・確立します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/c11c32bb-0322-597f-22d2-de3375a3ef61.png)
<font color=white>あっ、わかりました！仮になんらかの理由でSD-WAN ルータがピアに送信したBGPかOSPFのパケットがDIA NATによりNAT変換されて、さらに戻りのパケットを許可するNATセッションが作成されたとして、TCPコネクションベースのBGPならBGPネイバー確立ができるが、特定のマルチキャストのIPアドレスで通信するOSPFはNATを突破できず、ネイバー確立ができないという理屈ですね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/da6558a8-2b09-7b96-6f0b-a331c35b91ad.png)
<font color=white>お見事！その通りよ。
　　残りの容疑者も見ていこう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7fb8b6b1-2e1f-7f72-f616-281faa9b60f8.png)
<font color=white>⑤、⑥は前提条件となるallow-serviceのBGP、OSPF無効であるため、A)もB)もN/A

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/799ceae5-08c7-c58d-bf34-9e87fc0f28f9.png)
<font color=white>⑦はDHCP、DNS、ICMP、HTTPS、SSH、NETCONF、NTP、STUN、SNMP、BFDといった関係のないallow-serviceであるため、明らかにA)もB)も×

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/671eaf0f-daca-dac4-bb12-145bfdfb1fe9.png)
<font color=white>一旦整理の結果を表に反映しよう。なお、④のA)の×判定は他の容疑者と比べると弱いため、ちょっとはてなをつけたね。こんな感じになるかな。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e8ec049e-7e61-9e6c-082e-92cadc7b4d70.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/36d99646-408c-1dd1-fb64-d00feb2e0060.png)
<font color=white>この表を見ると、明らかに④番の容疑者は怪しいのですね。でも、SD-WANルータの自発パケット、しかもTransport VPN側の自発パケットは、本当にブレイクアウト用のDIA NATによりNAT変換されるのですかね。にわかに信じがたいのですね。
　そして、④のDIA NAT戻り許可と⑤のallow-service BGP/OSPF無効はどちらがもっと強いかについても疑問が残りますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/072d0e68-825a-a17e-85bd-965efbcf99b8.png)
<font color=white>そうね。不具合だったら興醒めなので、先ほど「謎仕様であってくれ！」と変な期待をしつつ、Cisco社のドキュメントを調べたのね。
　そうしたら、こんなのが見つかった。

https://www.cisco.com/c/en/us/td/docs/routers/sdwan/configuration/policies/ios-xe-17/policies-book-xe/localized-policy.html#id_117143
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ad4cb69d-d8ef-5413-4e43-5f021b6a9daf.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d2392c27-c9a9-ea9e-c2a5-b1a57f4330ef.png)
<font color=white>うわぁぁっ！「If a connection is initiated from a device, and if NAT is enabled on the device (for example, Direct Internet Access (DIA) is configured), return traffic is allowed by the NAT entry even if the implicit ACL has been configured as no allow-service .」と丁寧に記載されていますね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ae75b5bb-9225-7cdc-f724-effa1c6a9e90.png)
<font color=white>「If a connection is initiated from a device, and if NAT is enabled on the device」の部分は、特にService VPNかTransport VPNを明言していないから、ルータのTransport VPN側の自発のパケットもDIA NATによりNAT変換される可能性がありますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d92a64f4-b000-c800-a656-a154c96156bc.png)
<font color=white>そして、「return traffic is allowed by the NAT entry even if the implicit ACL has been configured as no allow-service 」の記載通り、DIA NATの戻り許可はallow-serviceの拒否より強いということですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/1c784979-424d-8027-4f8e-e55b77fe7f4d.png)
<font color=white>これで犯人確定ですね！さすが詩須子さん！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/70723a23-7fdb-4775-a303-b1ec6115f343.png)
<font color=white>推理の課題としては、確かにこれでQ.E.D（証明終了）となったかもね。
　けど、ミステリー小説や漫画によくあるパターンとしては、真犯人はなかなか罪を認めず、巧みに詭弁したりするよね。
　やはり、事件の完全解決のためには、動かぬ証拠の提示は必要不可欠だね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/98bc7239-3f1b-7332-8ed2-cfe36a64745a.png)
<font color=white>動かぬ証拠？あっ、再現試験ということですね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b10a7537-a433-1f3c-f8c8-95fc134debcf.png)
<font color=white>はい、その通りよ！
　兎麗莎ちゃんはそろそろOJT卒業＆遠方赴任の予定になっているから、多分研究室の活動は今回で最後になるよね。その集大成として、Cisco SD-WANの環境構築から、事件再現、証拠採取まで一通りやってもらえないかな。

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3b4d230d-b10b-c8a3-89d7-527457ad1f41.png)
<font color=white>はい、喜んで！

* * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * *

<H1>第四章　証拠編

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/988de148-3078-ae21-c74c-0fc307240d61.png)
<font color=white>今回の再現試験の環境は最低限コントローラ系とSD-WANルータ１台、レガシールータ１台というシンプルな環境でできるので、Cisco SD-WAN Black Beltトレーニングのハンズオンを全クリアした兎麗莎ちゃんなら、すぐ構築できるね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/a0c82739-f3f8-3f87-704c-95496a44d9af.png)
<font color=white>はい、もちろん！既存のオンプレのコントローラ環境を使ってすでに構築完了しました！再現試験関連の部分にフォーカスすると、こんな感じの環境ですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/bfef00ab-8f2c-f077-244d-57f5df6688fd.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/aa553842-5170-a0e8-29d3-ea577c1ee57f.png)
<font color=white>SJCはSD-WANルータで、INT1はレガシールータです。
　SD-WANルータ（SJC）のVPN0、つまりTransport VPN側でレガシールータ（INT1）とBGPネイバーを確立するための設定を入れています。暗黙のACLはデフォルトの設定のままで、つまりAllow-service BGPは無効となっています。VPN0のインターフェースにNATも設定していません。
　この設定であれば、BGPは想定通りに張れないことは確認しました。

SD-WANルータ（SJC）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/dd98eee9-18cd-aebb-da15-e3d1adcde610.png)

レガシールータ（INT1）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/72c35ca8-6721-f9cd-9e01-41eeddb1bb86.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/631a03b0-3c8a-d9b6-251c-a7afa3bfe4ae.png)
<font color=white>ちょっと待って。そのあとは多分NATを入れて、showコマンド等でBGPはどうなるか確認する予定と思うけど、showコマンドの結果だけなら多分弱いので、動かぬ証拠にならないと思う。さて、どうする？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/08c05bb6-67d1-7b00-9251-4420477719ca.png)
<font color=white>そこは、ご心配なく！私は、大好きなあのツールを使って事件を再現しつつ動かぬ証拠を採取しますからw
　　そうですね、特殊設定系ミステリー小説風にいうと、死者を蘇らせて事件の全貌をステップごとに再現、いや、追体験する「降霊術」に匹敵する強力なツールを使いますね！


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/dddf830f-7c65-7fd7-9c1f-e89f5caedbbb.png)
<font color=white>（わざとらしい様子で）おお、そんな便利で強力なツールは世の中にあるとはね！
　（さらにわざとらしく）当ててみようかなw
　SD-WANということで、あの名高いNWPI (Network Width Path Insight)かな？例の、ほら、パケットになった気分でルータの中の各プロセス・機能を探検して細かく可視化すると言われているツール。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3898b082-21c8-2d7e-79f6-fe593d631650.png)
<font color=white>今のは「釣り」でしょうw　引っかかりませんよ！w
　NWPIは確かに強力な可視化・トラブル解析のツールですが、VPN0、つまりTransport VPNのトラフィックをサポートしていないため、今回の「張れてる！？事件」の追跡に使えません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/98f24ce7-14ee-af72-ccca-82f90774f485.png)
<font color=white>ほー、なるほどねw　では、どんなツールかしらw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e2321bd0-bd42-db3e-69eb-35168b833038.png)
<font color=white>それは、みんな大好きなIOS-XE Datapath Packet Trace機能、通称Packet Trace ですね！
<font color=white>指定した条件を満たしたパケットになったつもりで、ルータの各機能・プロセスをそのパケットがどう通って、どのように処理されたかをトレースして、細かい結果を報告してくれるツールです。まぁ、ツールといっても、IOS-XEの標準機能の一つですけどね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/089d2126-b000-0da2-9b90-e6f5c6402a6f.png)
<font color=white>詳細については以下のガイドをご参照いただけます。
https://www.cisco.com/c/en/us/support/docs/content-networking/adaptive-session-redundancy-asr/117858-technote-asr-00.html

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/a8f900c6-2fb1-9229-c5f0-2974e54da5a6.png)

<font color=white>さすが兎麗莎ちゃん、いや、わたしのワトソンくんw
　では、黙ってお手並み拝見としようかな。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/5d450fa5-ff60-8b87-6a84-f57049d52d46.png)
<font color=white>はい！では、まずはどのようなパケットを追跡するか、つまりPacket Traceの追跡条件を指定する標準ACLを設定しますね。
　はい、こんな感じで設定しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f89bba1e-df99-c503-f8a9-b8f5e998bc97.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/fa2c72bd-228e-cc7e-5aa6-ccbbfec40b24.png)
<font color=white>次は、この追跡条件を指定するACLをPacket Traceに適用します。
debug platform condition ipv4 access-list 143 both bidirection
<font color=white>さらに、追跡するパケット数を指定します。1024個パケットを追跡してから止まると設定しますね
debug platform packet-trace packet 1024 fia-trace

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f4a9c5f1-b265-1b25-bdc7-c172e18e4a5a.png)
<font color=white>一旦、show debuggingで設定したPacket Traceの内容を確認しましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6fd2b085-bb43-eb90-371f-705d4a6d256b.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/412ae17e-ef00-7a7f-7918-305f2fe338fa.png)
<font color=white>いい感じですね。
では、debug platform condition startを実行して追跡をスタートします！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e331af0d-543a-bfad-d99f-fa43736fc08b.png)
<font color=white>（しばらく待ってから）
　　色々追跡の結果が出ていると思うので、一旦show platform packet-trace summaryを実行して、現状の追跡サマリーを確認しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/9c55ed28-b562-d6c6-c4ae-d0fc23cdec1b.png)
  
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/edb9b79f-7813-730f-fec0-0571989e8c22.png)
<font color=white>いい感じに時系列で追跡の結果が出ていますね。
<font color=white>0番のパケットはInputがINJ.2となっているので、ルータ自発のパケットでピア向けに送信されたBGPのパケットですね。おそらくは最初のTCP Synと思いますけどね。そして無事に送信（FWD）ができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/88b5a1b5-7a05-9f94-f607-63fa5de732b6.png)
<font color=white>1番のパケットはおそらくピアから送信されてきたBGPパケットですね。Gi1で着信した後、期待通りに暗黙のACLによりドロップされましたね。Reasonのところに「SdwanImplicitAclDrop」と親切に記載されているのでわかりやすいのですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b287a794-31b3-e2e9-9874-b26d60488896.png)
<font color=white>サマリー情報だけでも色々わかりますけど、パケット番号を指定すると、このパケットはどんな処理をされてきたか全部詳細に確認できます。今回の「張れてる！？事件」の文脈で言うと、いわゆる犯行（？）の追体験ですねw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/0027429d-f257-b80e-7c82-c28f3dd35a4c.png)
<font color=white>まずは、show platform packet-trace packet 0コマンドで0番のパケットを確認します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d537ca04-8d18-b132-5024-8526c1a0fccd.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/158ea180-3db9-c129-198d-e17dfd615602.png)
<font color=white>Inputはinternal0/0/rp:0なので、ルータ自発のパケットですね。ピア向けにTCP宛先ポート179番で送信されたので、BGPですね。TCP送信元ポートはランダムに割り当てられた13983となっているところに注目しておきましょう。
このパケットはその後も色々機能で処理されて、最終的に無事にGi1から送出されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/81c9854b-4f96-d364-a45f-eb764bd74f1f.png)
<font color=white>次はshow platform packet-trace packet 1コマンドで1番のパケットを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b18e1827-face-97bd-9e6b-9db85fa4722a.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2448a3f0-7920-8269-8f96-3f32f6ff1d97.png)
<font color=white>このパケットはピアが0番パケットを受信した後、SD-WANルータに対して送ってきた戻りのパケットですね。TCP宛先ポートは0番パケットのTCP送信元ポートである13983となっていますし、TCP送信元ポートはもちろん179となっていますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7583e097-b5fe-f7a7-691a-fe97b75f2390.png)
<font color=white>もうちょっと後続の処理を見てみると、以下の通り、やはりこのパケットはSD-WANルータの暗黙のACLによりドロップされたことがわかりますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d1436f73-0331-eae8-ffcd-d5783f01e3ef.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/84bf81d1-4f23-a52b-f22e-7c4d0196194e.png)
<font color=white>ドロップの理由については、サマリーより詳細に記載されていますね。暗黙のACLのallow-service BGPは無効（DISALLOW）となっていると。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/72df6065-b41b-741b-03de-a3c4fb548f62.png)
<font color=white>さすが兎麗莎ちゃん、Packet Traceに慣れていますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/5096ff94-b9d8-8bda-f440-e4378a5662e3.png)
<font color=white>はい、ありがとうございます！では、こんな要領でどんどん進めていきますね。次はGi1のNATを有効にすると、どうなるか見ていきましょう！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/1d7b0dc7-7e19-18de-708d-988d92e0f12b.png)
<font color=white>今回の「張れてる！？事件」と言う文脈では、いよいよ犯行の一部始終を再現してみるって感じですね。なんかワクワクしてきましたw。
  予想ではこんな動作になりますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e1e62544-1a04-40de-9e2c-1d5f94b30d03.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/09308851-f8d7-be80-8c4a-8a3a8450f1d1.png)
<font color=white>真犯人登場ということで、少しクローズアップw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6def71e2-35be-79da-70b3-2cc943c08c4c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/14510e1c-0159-9064-b095-df3fd2d356ae.png)
<font color=white>コンフィグ差分はこんな感じですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/dee0ed8a-b8ee-6fd4-ad93-f031f27c8359.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/8a7fef6c-5591-7c41-41d3-bcf793b559b2.png)
<font color=white>あっ、ちょっと待って。Gi1のNATを有効にするだけで、本当に犯行（= 張れてる！？事件）の再現ができるのかな？ローカルブレイクアウトの設定、例えば、NATルートやデータポリシーのNAT VPNも合わせて入れないと、BGPのパケットはブレイクアウトできなかったりするとか。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/64345968-58f5-cf01-9308-9a4084115dca.png)
<font color=white>それも考えましたけど、多分Gi1のNATを有効にするだけで事象の再現ができると思います。
　例のCisco社の公式ドキュメントに「If a connection is initiated from a device, and if NAT is enabled on the device」と記載されていますので、NATを有効にさえすれば、ルータ自発のパケットはNAT変換されると理解しています。私はいつもCisco社のドキュメントを信用していますからw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3cf19bda-1099-2c6d-99ae-9fc243b23e81.png)
<font color=white>確かにドキュメントの記載を信用すれば、 NAT有効化だけでルータ自発のパケットはNAT変換されてしまうのね。口を挟んでごめんね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/51cb6547-0d9f-f337-4f5b-9fdedf2eb952.png)
<font color=white>ううん、詩須子さんのツッコミはいつも勉強になります！では、Gi1のNAT有効化を適用しますね。
　はい、適用完了です！
　早速BGPの状態を確認しよう。
　あっ、BGPネイバーが張れるようになった！

SD-WANルータ（SJC）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/16cd5ec5-e842-06d4-48c8-83b1fcce0450.png)

レガシールータ（INT1）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/7edee258-912e-19d5-8285-21b5ffa8078f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f4bdbd13-fc7c-0002-979a-91e3622f7cf9.png)
<font color=white>これは例の声の主が見た「張れてる！？」事象だったね。確かに驚きの光景だな。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/0d4739f3-58a6-ebea-c608-3b1fe43e7daa.png)
<font color=white>では、Packet Traceで証拠を採取しますね。
<font color=white>あっ、その前に気になるNATテーブルを確認しますね

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/261e06ca-b567-3cb2-1cca-259f33b18f38.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/9bdc4550-8045-567f-40ac-2c287099bb25.png)
<font color=white>うわぁ、ルータ自発のBGPパケットは本当にNATされていますね！ TCP送信元ポートは11563から5062に変換されていますね。念の為、メモしておきましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/32aebe8f-640b-573b-ca20-1e3fb17875ec.png)
<font color=white>続きまして、Packet Traceのサマリーを確認しましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/96045f37-c3d4-8832-501a-7d876d55b85e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/5468a024-2401-9b09-976d-7350eb4bedf6.png)
<font color=white>0番のパケットはルータ自発のパケットでピア向けに送信されたBGPのパケットですね。前回同様、無事に送信（FWD）ができました。
1番のパケットはピアから送信されてきたBGPパケットですね。Gi1で着信した後、前回は「SdwanImplicitAclDrop」でドロップだったが、今回は「PUNT」で無事にルータ自身宛に届いたようですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/674c8856-9d5d-ebaf-0910-b34ab29edeec.png)
<font color=white>次は、show platform packet-trace packet 0コマンドで0番のパケットを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b484385b-5806-c425-c101-251cd151fd3c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/dabfdd92-ae9f-c20c-ba88-c1989dff8ac5.png)
<font color=white>0番のパケットはSD-WANルータがピアに送信したBGPパケットですね。TCP送信元ポートは先ほどのNATテーブルでメモしたNAT変換前の11563と同じですね。
もうちょっと0番のパケットの続きを確認してみると、以下のようにNAT変換されていることがわかりますね。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/27da033a-aa88-c64b-5d63-21ee5bb74c08.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/423eed26-6545-e5e3-aa0a-40e031ce51bf.png)
<font color=white>次は、show platform packet-trace packet 1コマンドで1番のパケットを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/666d87c5-2ef8-5ed0-2bd0-078d5e43f740.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/fc8408ba-00f5-60fb-eb2d-dc2a9172b16b.png)
<font color=white>このパケットはピアが0番パケットを受信した後、SD-WANルータに対して送ってきた戻りのパケットですね。TCP宛先ポートは0番パケットのNAT変換後のTCP送信元ポートである5062となっていますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/c9f8b12e-b52d-c879-f015-3ef219b01fed.png)
<font color=white>もうちょっと後続の処理を見てみると、以下の通り、このパケットはDIA NATの戻りパケットということで、SD-WANルータの暗黙のACLを突破しましたね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d66c6d73-4eb4-5951-f258-b99f9c7bbd58.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/0983fbbe-acf3-d109-e836-6f76a393add1.png)
<font color=white>Actionの「ALLOW」のReasonにはっきりと「SDWAN_NAT_DIA」と記されているのは、NAT犯人説の決定的な証拠ですね！
　さすが詩須子さん、いや、私のホームズさん！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/9bc02142-5755-7c77-429d-b3d8fbdb0cac.png)
<font color=white>ありがとうw  じゃ、ホームズさんからワトソンくんへいきなりクイズです！
　「張れてる！？事件」の犯人が分かったけど、何か犯行を止める方法、つまり、NAT有効でもBGPネイバーが張れないようにする方法があるかな？

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/92a28949-32bc-25a1-7b50-950a27805b86.png)
<font color=white>うーむ、今回の「張れてる！？事件」の一番核心の部分は、いうまでもなくDIA NATの戻りパケットが暗黙のACLを突破できる仕様ですね。
　それ自体は暗黙のACLの仕様であれば、暗黙のACLよりさらに強い何かの仕組みを使えば、その効果を上書きすることができますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/710a2312-880a-9b46-ce54-f6db1492c32b.png)
<font color=white>あっ、わかりました！明示のACLです！明示のACLを使用して通したくないパケットをドロップすることができると思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e303076f-9379-b1c8-9182-109a167f03a7.png)
<font color=white>はい、ご名答！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/0fca5031-0352-fa1c-4f6e-ae9be4cf49f5.png)
<font color=white>ちょうど検証は物足りなかったので、続いて明示の　ACLを設定して検証をやります！
　えっと、明示のACLを入れると、多分以下のような動作になりますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b6425b4e-cb6f-d787-e0d4-5dd78e6377b1.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/574bb448-3cf5-054e-d55a-e2da83ff7370.png)
<font color=white>Block_BGPという明示のACLを作成しました。こんな感じですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/01f4190e-8d8f-b1f4-b8a7-0d813ccbd21c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/a70e3730-c5a0-ab0a-2dfe-ce094bffc2f1.png)
<font color=white>それをGi1のinの方向に適用します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4a14c950-1817-493b-604a-577281803406.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f2d87dd8-fd6a-4c3d-f4eb-7fa19bb03370.png)
<font color=white>やはり、BGPネイバーが張れなくなりましたね！

SD-WANルータ（SJC）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/defdb83a-6071-7f08-f19e-3db4c1116cf8.png)

レガシールータ（INT1）の<I>show ip bgp neighbor</I>の結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d4ebfa06-8039-dc14-d414-561617b3404a.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/98c4d6b2-b059-4aa7-cb62-59e516d09220.png)
<font color=white>次は、Packet Traceで詳細を色々確認しますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/f9b4b830-d6a4-3692-e6c5-e619870b73cb.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/75e58eb4-d739-dc5b-6a2b-003adc6f1c6c.png)
<font color=white>0番のパケットはルータ自発のパケットでピア向けに送信されたBGPのパケットですね。今まで同様、無事に送信（FWD）ができました。
1番のパケットはピアから送信されてきたBGPパケットですね。Gi1で着信した後、前回は「PUNT」で無事にルータ自身宛に届いたが、今回は「SdwanAclDrop」、つまり明示のACLによりドロップされたことがわかりますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/26310fb3-1f9b-c210-450c-dc76e634e3a6.png)
<font color=white>次は、show platform packet-trace packet 0コマンドで0番のパケットを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/980b56b5-0e75-98d9-df98-b8ea6072e42f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/c58693f6-967e-9563-6ed9-5d76a772864c.png)
<font color=white>SD-WANルータがピア向けに送信したBGPパケットは、今まで通りに無事に送出されましたね。
<font color=white>次は、show platform packet-trace packet 1コマンドで1番のパケットを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/400c2e0b-0e46-3133-859c-e3e7274fae20.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/4f603b57-4574-19dd-0784-45ffcafbb32a.png)
<font color=white>このパケットはピアが0番パケットを受信した後、SD-WANルータに対して送ってきた戻りのパケットですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/762dc33d-56af-0cd4-befc-d939526f2df2.png)
<font color=white>もうちょっと後続の処理を見てみると、以下の通り、このパケットはSD-WANルータの明示のACLによりドロップされましたね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d1a5cd54-3e08-5b15-bbc5-d974aed21e0f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b346d6e0-386c-9ff5-4105-eb91d0c39e6a.png)
<font color=white>対象の明示のACLの名前 ― Block_BGPも確認できますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b1f2fa91-d5db-fdb6-b990-5d45bf5897cf.png)
<font color=white>明示のACLはNATの犯行を阻止できることも実証済みということで、
<font color=white>（少し深呼吸して）
<font color=white>「張れてる！？事件」は完全解決を迎えたことをここに宣言しますw！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/37ee065c-77fa-875a-8667-98cfd9d4a0e0.png)
<font color=white>（パチパチと拍手）お見事！さすが我が愛弟子！
<font color=white>おかげさまで、Cisco SD-WANの新しい知識を得たし、安楽椅子探偵気分も満喫できたわ。
<font color=white>OJTメンター冥利に尽きるなぁ〜

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/98e1abb7-ae7f-4dd0-16bd-bf89549224d3.png)
<font color=white>こちらこそ、大変お世話になりました！
<font color=white>詩須子さんのおかげで、一人前のネットワークエンジニアに成長できたし、何より詩須子さんと一緒にいる時間はいつも充実して楽しかったです♡！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/3ff4e289-6748-a6fd-948f-60b5d06f3eec.png)
<font color=white>ありがとう！こう言ってもらえるととても嬉しい♡
<font color=white>（しばらく沈黙）
<font color=white>今回で最後になると思うとなんか寂しいね。OJT卒業した後はなかなか会えないと思うけど、よろしければこれからもワトソンくんとホームズさんの関係でいようね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/eeb138d7-6961-fe5a-80f4-2b30b5a3cac3.png)
<font color=white>はい、もちろんです！
<font color=white>（鼻の奥にツーンと痛みを感じながらも笑顔で）
<font color=white>だって、詩須子さんが大好きだから！！

* * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * *

<H1>エピローグ</H1>

都内某所のレストランで<a href="https://qiita.com/wenjiewise/items/441bdcb594ab3e3e2b88" class="autolink">恋人同士</a>が食事している

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/eb4c4325-679b-1be5-be95-a72cf19787fb.png)
<font color=white>ここのステーキはうまいな！
<font color=white>あっそうそう、例のクリスマス特別チケットは抽選でゲットしたよ！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/d123f240-ba87-399b-3ecd-185241d96343.png)
<font color=white>やった！ありがとう♡  さすが豪運の流宇太ね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/86275946-0c74-2b21-b525-6555e90722cc.png)
<font color=white>いや、最近は時々不運に見舞われたりするよねw

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/fdbfb0a5-8cc4-4089-b086-0bb1faa480b9.png)
<font color=white>不運って、何があったの？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6192d729-e25b-d423-d4e9-9bb59430afa4.png)
<font color=white>このあいだ話した、俺が最近ハマったゲームって覚えている？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/6ee83622-e645-6691-e70f-891bafcec30d.png)
<font color=white>うん、覚えているよ。なんか妖怪を集めて戦うやつでしょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/b038435e-cabd-b613-4f15-acff1a72322e.png)
<font color=white>そうそう！今日はさ、時間限定のイベントがあってね、５連勝だと超レアなアイテムがもらえるよね。タイミングを逃したくないから、休憩時間はこっそり検証センターのトイレ個室にこもってこのイベントにチャレンジしたけどさ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/79124c7a-8dc5-e3d7-eae1-3efc812c0bed.png)
<font color=white>へぇ、検証センターに来てたんだね。って、結局惜しくも5連勝ができなかった？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/e072b290-af80-058a-7306-a96839211f92.png)
<font color=white>うん、超悔しかった。


<a href="https://japanese.visitkorea.or.kr/svc/whereToGo/locIntrdn/rgnContentsView.do?vcontsId=74104" class="autolink">安木（アンモク）</a>という場所で見つけた<a href="https://ja.wikipedia.org/wiki/%E6%82%AA%E6%A8%93" class="autolink">悪樓（あくる）</a>という水系の妖怪を連れて戦っていた。悪樓がいると、常に雨天になり、そして俺が極めた水系の魔法のダメージが倍になるよね。それで４連勝したけど、5戦目の時に、なぜか悪樓がサボり出して、いきなり晴天になったから、それで負けたのよ！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/2d378369-8240-00f1-bf9c-3b2bbebd8647.png)
<font color=white>すごく驚いたので、トイレの個室で思わず大きな声で「えっ晴れてる！？安木（アンモク）の悪樓（あくる）は仕事しろよ！」と叫んでしまった。今考えるとちょっと恥ずかしかったな。。あははっ！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927754/ba9b0fe5-5919-3fdc-959c-c6d46152b069.png)
<font color=white>あはは。。