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
91
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
600
20150904 君のキャッシュDNSサーバが出すクエリを君は本当に理理解しているか?あ、でもそのうちそうなっちゃうかも?〜~QNAME Minimisation の話〜~
rt4716
0
91
20170927 続:AS-PATH アップデート
rt4716
0
140
20200729 BGP 概説
rt4716
0
260
20131010 90分で理解するSDNの基礎
rt4716
0
47
20171130 権威DNSサービスのダイバーシティ
rt4716
0
74
20180223 DNSのトランスポート暗号化に関する調査2018
rt4716
0
51
20150716 Summary of Layer-2 Technology for Data Center Network
rt4716
0
19
20170217 ロードバランサ再入門
rt4716
5
560
Other Decks in Technology
See All in Technology
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
24
4.8k
TransitGatewayの基礎
toru_kubota
0
230
レガシーをぶっ壊せ。AEONで始めるDevRelの話 / Qiita Night 2024-2-22
aeonpeople
3
110
Amplify Gen2を 拡張してみよう JAWS-UG北陸新幹線 ( 福井開催 ) 2024-04-06/Let's extend Amplify Gen2
fossamagna
0
280
「共通基盤」を超えよ! 今、Platform Engineeringに取り組むべき理由
jacopen
25
5.7k
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
0
170
Aurora MySQL v3(MySQL8.0互換)の オンラインDDLの罠挙動を全バージョンで検証した
yutakikai
0
150
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
0
220
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
190
アプリがつくるNOT A HOTELブランド
hokuts
0
450
AIQ株式会社 エンジニア向け会社紹介資料
aiqlab
0
360
AWS パートナー企業でテクニカルサポートに従事して2年経ったので思うところをまとめてみた
kazzpapa3
3
1.3k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
224
17k
Become a Pro
speakerdeck
PRO
9
4.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Raft: Consensus for Rubyists
vanstee
131
6.2k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
Teambox: Starting and Learning
jrom
128
8.4k
A better future with KSS
kneath
230
16k
Code Review Best Practice
trishagee
54
15k
Designing Experiences People Love
moore
135
23k
Stop Working from a Prison Cell
hatefulcrawdad
265
19k
Designing for humans not robots
tammielis
247
25k
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!