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
20161201 コンテンツプロバイダから見た権威DNSサーバ
Search
Ryuichi Takashima
May 25, 2022
Technology
0
120
20161201 コンテンツプロバイダから見た権威DNSサーバ
Internet Week 2016 D3 DNS DAY
で話したネタ。
コンテンツプロバイダにおける権威DNS/GSLB 運用について簡単に説明した資料。
Ryuichi Takashima
May 25, 2022
Tweet
Share
More Decks by Ryuichi Takashima
See All by Ryuichi Takashima
DNS によるservice discovery 関連の RFC/I-D のまとめ
rt4716
2
770
20150904 君のキャッシュDNSサーバが出すクエリを君は本当に理理解しているか?あ、でもそのうちそうなっちゃうかも?〜~QNAME Minimisation の話〜~
rt4716
0
110
20170927 続:AS-PATH アップデート
rt4716
0
180
20200729 BGP 概説
rt4716
0
400
20131010 90分で理解するSDNの基礎
rt4716
0
64
20171130 権威DNSサービスのダイバーシティ
rt4716
0
85
20180223 DNSのトランスポート暗号化に関する調査2018
rt4716
0
64
20150716 Summary of Layer-2 Technology for Data Center Network
rt4716
0
27
20170217 ロードバランサ再入門
rt4716
6
950
Other Decks in Technology
See All in Technology
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
600
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.8k
TypeScript、上達の瞬間
sadnessojisan
48
14k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
420
A Tour of Anti-patterns for Functional Programming
guvalif
0
390
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
570
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
【LT】ソフトウェア産業は進化しているのか? #Agilejapan
takabow
0
120
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
340
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
130
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
670
Featured
See All Featured
Designing the Hi-DPI Web
ddemaree
280
34k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
440
Rails Girls Zürich Keynote
gr2m
94
13k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Building an army of robots
kneath
302
43k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Statistics for Hackers
jakevdp
796
220k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Documentation Writing (for coders)
carmenintech
65
4.4k
Transcript
コンテンツプロバイダから見た 権威DNSサーバ 2016年12月1日 株式会社DMM.comラボ 高嶋隆一 Internet Week 2016 D3 DNS
DAY Version 12/01
権威DNSサーバの運用における ✓ 想定されるユースケース ✓ ユースケース毎に用いられる実装 ✓ ユースケース毎の注意点 を、コンテンツプロバイダの視点から説明し、議論する事! 1 本セッションの目的
2 自己紹介 イマココ →
3 サービス提供用ドメイン名 の利用のされ方から考えてみる
4 よくあるwebサービスのアーキテクチャ www.example.com の権威DNSサーバ =GSLB(*1) www.example.com のSLB(*2) www.example.com の実サーバ セッション振分け
セッション振分け セッション振分け example.com の権威DNSサーバ (*1)GSLB=Global Server Load Balancing:クライアントによって返すA/AAAAの内容を変 える事により、複数の実サーバを持たせる負荷分散、冗長化の仕組み (*2)SLB=Server Load Balancing:UDP/TCP等のセッションを複数の実サーバに振分ける 負荷分散、冗長化の仕組み 所謂普通の権威DNSサーバ。 GSLBを使うため、このケースでは wwwのNSをGSLBに移譲 wwwの負荷分散、冗長を行う為、 A/AAAAに複数のレコードを登録 障害時に切り外す為、A/AAAA の TTLが短いのは許してorz NS移譲 A/AAAA振分け
5 名前解決の動き キャッシュDNS www.example.com の権威DNSサーバ =GSLB www.example.com のSLB www.example.com の実サーバ
セッション振分け セッション振分け セッション振分け www.example.com のIPアドレスは? 1 www.example.com のIPアドレスは? 3 www.example.com の権威DNSを教える 2 www.example.com のSLBのうち、どれかを A/AAAAとして返答 4 example.com の権威DNSサーバ
6 よくあるwebサービスのアーキテクチャ www.example.com の権威DNSサーバ =GSLB www.example.com のSLB www.example.com の実サーバ セッション振分け
セッション振分け セッション振分け example.com の権威DNSサーバ 今回ユースケース紹介対象
7 ユースケースその1: example.com の権威DNSサーバ
自社データセンタ 8 example.comの権威DNSサーバ よくあった(?)ちょっと昔のケース ゾーン転送 ゾーン 情報 キャッシュDNS admin #
vi example.com.zone # rndc reload slave master ns1.example.com ns2.example.com ゾーン 情報
自社データセンタ 9 example.comの権威DNSサーバ ns1.example.com ゾーン転送 ゾーン 情報 キャッシュDNS admin #
vi example.com.zone # rndc reload オリジナルデータを持つ サーバが直接クエリにも 答える為メンテしづらい 基本的には admin(root) がゾーン情 報を編集する事になり、権限分割す るにはサブドメインを切るしかない SLB等の冗長化を未使用 の為、1台のNSのメンテ、 障害がクライアント待ち 時間増加に繋がる オ ン プ レ だ と DoS/DDoS が 怖い ns2.example.com ゾーン 情報 slave master
10 example.comの権威DNSサーバ 解決しようとするとこんな感じ shadow master slave SLB ゾーン転送 ns1.example.com ns2.example.com
実サーバが一台落ちてもダウ ンタイムが無い構成。 ある程度のDoS/DDoSも防御 冗長、負荷分散を考慮した複 数の実サーバ クエリに答えるサーバとデー タを編集するサーバを分離し、 後者は隠蔽 権限分割を可能にする為の仕 組みやそれらを容易にするAPI、 やUIを具備
今時のハードウェアアプライアンスならどれで もよいが、Source IPアドレス毎のTCP/UDPの レートリミットができるとなおよい 複数の実装(例:BIND9+NSD)にしておく。負荷 に応じてスケールアウトできる様な構成にして おくとなおよい 権限分離、API、UIが必要な為、選択肢としては ✓ PowerDNS等の作り込みを自作でがんばる
✓ 売り物のアプライアンスを買う の2択。後者はこの用途であればVM版でもよい のでコストはある程度抑えられる。 11 example.comの権威DNSサーバ 実装 shadow master slave SLB
権威DNSサーバの機能まるごとを Route53、AzureDNS、Akamai Fast DNS等 のサービスを買ってしまうのも手。 自然とDDoS対策も入ってくる。 ただ、クラウドDNSサービスやクラウドその ものがDDoS/不具合等で落ちる事例もあるの で、NS毎にバラす等の考慮も必要 ゾーン編集機能も、
権限分離、API、UI等豊富に提供されている。 12 example.comの権威DNSサーバ 今時の(?)実装 shadow master slave SLB
13 ユースケースその2: www.example.com の 権威DNSサーバ=GSLB
自社DC#A 14 GSLB 昔ながらのケース キャッシュDNS ns1-www.example.com ns2-www.example.com 自社DC#B 自社DC#C SLB+実サーバ
GSLB
自社DC#A 15 GSLB 最近は... キャッシュDNS ns1-www.example.com ns2-www.example.com 自社DC#B SLB+実サーバ GSLB
クラウド#A
16 GSLB 最近は... キャッシュDNS ns1-www.example.com ns2-www.example.com SLB+実サーバ GSLB クラウド#A
17 GSLB こういうのもなくはないです。 キャッシュDNS ns1-www.example.com ns2-www.example.com 自社DC#B 自社DC#C SLB+実サーバ GSLB
昔ながらのハードウェアプライアンスLBを利用 した形。最近はベアメタル版やVM版もある為、 スペックが絞れればリーズナブルにもなる。 gdnsdはDNS負荷分散、ヘルスチェックを含め た実装として最近hot。 一般的な権威DNSサーバとヘルスチェックを自 己実装して連携してできなくもない。 Amazon Route53、Akamai Global
Traffic Management、Azure Traffic Manager等、各社 出揃ってきている。 WebフロントをクラウドやCDNで使う場合には 連携が強力でステキ。 18 GSLB実装 実装 クラウドサービス LBアプライアンス オープンソース
19 Thank you!