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
110
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
680
20150904 君のキャッシュDNSサーバが出すクエリを君は本当に理理解しているか?あ、でもそのうちそうなっちゃうかも?〜~QNAME Minimisation の話〜~
rt4716
0
98
20170927 続:AS-PATH アップデート
rt4716
0
160
20200729 BGP 概説
rt4716
0
350
20131010 90分で理解するSDNの基礎
rt4716
0
49
20171130 権威DNSサービスのダイバーシティ
rt4716
0
78
20180223 DNSのトランスポート暗号化に関する調査2018
rt4716
0
55
20150716 Summary of Layer-2 Technology for Data Center Network
rt4716
0
22
20170217 ロードバランサ再入門
rt4716
6
770
Other Decks in Technology
See All in Technology
How to Think Like a Performance Engineer
csswizardry
4
590
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
190
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
コンテナ・K8s研修 - 後半 Kubernetes 基礎&ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
1
120
What if...? 처음부터 다시 LLM 어플리케이션을 개발한다면
huffon
0
1k
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
150
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
技術負債による事業の失敗はなぜ起こるのか / Why do business failures due to technical debt occur?
i35_267
0
190
AutomatedLabを使って内部ペンテストを勉強しよう! -やられ社内ネットワークの自動構築-
n_etupirka
1
610
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
35
4.4k
Become a Pro
speakerdeck
PRO
15
4.8k
Why Our Code Smells
bkeepers
PRO
332
56k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
26
1.6k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
Building Applications with DynamoDB
mza
89
5.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
79
5.1k
The Invisible Customer
myddelton
117
13k
A Modern Web Designer's Workflow
chriscoyier
689
190k
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!