Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ツカコの知らないインターネットの世界 -Facebook障害に学ぶ DNS と BGP の仕組み
Search
つっかー/TechDo
October 27, 2021
Technology
0
130
ツカコの知らないインターネットの世界 -Facebook障害に学ぶ DNS と BGP の仕組み
2021/10/25 のゆる Web 会@札幌 Online #15 の発表資料
つっかー/TechDo
October 27, 2021
Tweet
Share
More Decks by つっかー/TechDo
See All by つっかー/TechDo
資料ないけどノリで発表するよ_.pdf
daktu32
0
19
技術発信のモチベーションをあげるコツ
daktu32
1
130
20230712_HappyHackingSauna_1.pdf
daktu32
1
110
猫でもわかるアジャイル開発
daktu32
0
310
ライフシフト 人生をサバイブするためのリスクマネジメント術
daktu32
0
170
AWS CDK に「ふまんがあります」
daktu32
2
1.1k
私のバイブル~人生を変えたエモいN冊~
daktu32
4
390
リーグオブ情シス 第一回 スーパーリーグ #LoI
daktu32
0
3.2k
Other Decks in Technology
See All in Technology
怖くない!はじめてのClaude Code
shinya337
0
330
Github Copilot エージェントモードで試してみた
ochtum
0
140
AI専用のリンターを作る #yumemi_patch
bengo4com
5
3.7k
Geminiとv0による高速プロトタイピング
shinya337
0
220
Beyond Kaniko: Navigating Unprivileged Container Image Creation
f30
0
120
KiCadでPad on Viaの基板作ってみた
iotengineer22
0
260
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
220
MUITにおける開発プロセスモダナイズの取り組みと開発生産性可視化の取り組みについて / Modernize the Development Process and Visualize Development Productivity at MUIT
muit
1
10k
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
120
Tech-Verse 2025 Global CTO Session
lycorptech_jp
PRO
0
1.4k
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
220
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 完全版 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming - Expanded
tomzoh
4
3.4k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
42
7.6k
How to train your dragon (web standard)
notwaldorf
94
6.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Six Lessons from altMBA
skipperchong
28
3.9k
Being A Developer After 40
akosma
90
590k
Building Applications with DynamoDB
mza
95
6.5k
How STYLIGHT went responsive
nonsquared
100
5.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Statistics for Hackers
jakevdp
799
220k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Transcript
ツカコの知らない インターネットの世界 Facebook 障害に学ぶ DNS と BGP の仕組み 2021/10/25 ゆる
Web 会#15 つっかー/TechDo ∀ 。 。
DX と 仮想通貨に振り回され サウナと VR で心を癒す ビジネス浮気男 つ っ か
ー IT なんでも屋 プロフィール 北海道 札幌市 職 業 出 身 AWS 認定試験 5冠(SAP / DOP / SAA / DVA / SCS)、情報処理安全確保支援士、その他 IPA テクニカルエン ジニア資格いくつか。経済産業省認定高度デジタル人材(令和三年度)。 次に欲しい資格は Google ストリートビュー認定フォトグラファーとサウナ・スパ健康アドバイザー。 略歴 資格等 SIer→ITコンサル→事業会社の情シスを経て現在 2 社でコンサルや開発 PM 等に従事。コードも書ける インフラ屋。最近リストラが怖くて自分の会社設立。サウナ x VR x ワーケーションで一山当てたい。 趣味 食べ歩き、読書(SF)、ゲーム( Fallout / Outer Wilds / Beat Saber)、サウナ、ワーケーショ ン、チェアリング Twitter: https://twitter.com/daktu32 note: https://note.com/daktu32 SNS等
Facebook Outage 2021/10/4 • 2021/10/4 16:44 発生。 • Facebook, Instagram
など Facebook 社の主力サービスに 6時間アクセス不能。 • 経済損失 約 178 億円 • 世界規模のサービス全停止は GAFAM で観測史上初。 歴史に残る大災害
原因 Facebook のエンジニアブログより https://engineering.fb.com/2021/10/05/networking-traffic/outage-details/ 1. オペミスでFacebook のバックボーンネットワークに高負荷をかけてしまい、 データセンターがインターネットから切り離される 2. DNS
サーバがデータセンターにアクセスできなくなる 3. DNS サーバが BGP で経路情報を世界中の DNS サーバに拡散、世界規模 でアクセス不可 なるほど、よくわからん
本 LT の目的 以下のキーワードを頼りに障害発生のメカニズムをなんとなく理解する。 インターネットルーティング DNS BGP
本 LT の参考文献 インターネットの仕組みとISPの構造 Internet Week 2014 「初めての人のためのインターネットルーティング」より https://www.slideshare.net/taijitsuchiya5/isp-55698799 DNS再入門
DNS Summer Days 2014 チュートリアル資料。 https://www.slideshare.net/ttkzw/dnstudy-01-dnsprimer 興味をもった方はぜひ一読を。
そもそもインターネットってなんだっけ? インターネット・プロトコル・スイートを使用し、複数のコンピュータネットワークを相互接続した、地球規模の情報通信 網のことである。 Wikipedia 日本語版「インターネット」 • Inter(~の間)+Network ◦ インターナショナル = Inter
+ National(複数の国家が参加する大会や組織など) ◦ インターステート=Inter + State (アメリカの州間高速道路) • 複数のネットワーク同士が接続して構成されるネットワーク 複数の組織が運営するネットワーク同士を相互接続
一般人のインターネットのイメージ 出典:https://jpn.nec.com/kotohajime/meet03.html
ネットワークエンジニアのインターネットのイメージ 出典:https://www.slideshare.net/taijitsuchiya5/wakamonog6-tsuchiya-public
インターネットは誰が運営しているの? • インターネット全体を包括的に運営する組織はいない ◦ 責任主体はインターネットを構成する個々のネットワークの運営組織 • 勘違いされがちな「調整組織」 ◦ ICANN:ドメイン名、IPアドレス、AS 番号(後述)の調整、DNSルートサーバの調整
◦ IETF: 通信技術仕様の研究と発表 ◦ W3C: 情報の形式の研究と標準化 インターネットはみんなの力をあわせて成立 (語彙力)
AS(Autonomous System)
インターネットルーティング ルーティング(経路制御)とは? →異なるネットワークにパケットを送信するときに最適な配達経路を決めること 出典:https://network.yamaha.com/knowledge/routing
インターネットルーティング 出典:https://www.slideshare.net/taijitsuchiya5/wakamonog6-tsuchiya-public
ルーティングポリシー 出典:https://www.slideshare.net/taijitsuchiya5/wakamonog6-tsuchiya-public
ルーティングプロトコル • 経路情報をルーター同士で交換する際の通信規約 ◦ 特定の経路で障害があった場合に、代替経路を伝達(動的ルーティング) ◦ 可用性向上 • 大きく2種類に分類 ◦
IGP(Interior Gateway Protocol):AS 内のネットワークで経路制御を行うために利用 ◦ EGP(Exterior Gateway Protocol):AS 間のネットワークで経路制御を行うために利用 • EGP はほぼ BGP で統一
BGP(Border Gateway Protocol) 時間が足りないので省略 気になる人は↓のスライドを読んでね♪ https://www.slideshare.net/taijitsuchiya5/wakamonog6-tsuchiya-public
話は変わってDNS インターネット上のホスト名や電子メールのアドレスに使われる ドメイン名と、IPアドレスとの対応づけ(正引き、 逆引き)を管理するために使用されているシステム Wikipedia 日本語版「Domain Name System」 出典:https://www.soumu.go.jp/main_sosiki/joho_tsusin/security_previous/juyogijutsu/dnssec01.htm
出典:https://jprs.jp/glossary/index.php?ID=0157
DNSサーバの可用性 • DNSルートサーバーは世界中に分散配置 • IP Anycast ◦ ひとつの IP アドレスに複数のサーバーが割り当て、一番「
近い」サーバーに振り分ける方式
DNS サーバ間の IP anycast の情報伝播 BGP を用いて Anycast 情報を AS
間で伝播
Facebook 障害の原因(再掲) Facebook のエンジニアブログより https://engineering.fb.com/2021/10/05/networking-traffic/outage-details/ ・オペミスでFacebook のバックボーンネットワークに高負荷をかけてしまい、データセンターがインター ネットから切り離される ・DNS サーバがデータセンターにアクセスできなくなる
・DNS サーバが BGP で経路情報を世界中の DNS サーバに拡散、世界規模でアクセス不可 なるほど、わかった! (気がする)
まとめ • Facebook 障害を題材にインターネットルーティング、BGP、DNS について解説し た。 • ネットワークは面白い • ソフトウェアアーキテクチャとは違うインフラアーキテクチャの世界に興味をもってい
ただければ幸いです。