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
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
Search
takipone
April 11, 2023
Technology
2
10k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
知っているようで知らないことの多いDNS。ちょっとだけ詳しくなるためのDNSの仕組み講座から最近のDNS事情までをまるっと紹介する30分です。
takipone
April 11, 2023
Tweet
Share
More Decks by takipone
See All by takipone
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
460
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.2k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.1k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
880
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
680
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3k
日本🇯🇵でAWS Direct Connect を利用する話/akiba-aws-dx
takipone
1
2.3k
CMブートキャンプ(社内勉強会) DNS 第4回 AWSのDNSサービス /cm-dnsstudy-4
takipone
2
19k
Other Decks in Technology
See All in Technology
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
170
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
270
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
160
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
130
私なりのAIのご紹介 [2024年版]
qt_luigi
1
120
UI State設計とテスト方針
rmakiyama
2
600
社内イベント管理システムを1週間でAKSからACAに移行した話し
shingo_kawahara
0
190
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
330
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
460
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
810
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
220
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Code Review Best Practice
trishagee
65
17k
The World Runs on Bad Software
bkeepers
PRO
65
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
How to Ace a Technical Interview
jacobian
276
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Transcript
DNSにちょっとだけ詳しくなりたい人に贈る少し 突っ込んだDNSの話 2023/4/11 DevelopersIO BASECAMPディレクター 大瀧隆太 / takipone
2 誰 • 名前: 大瀧隆太 @takipone • お仕事: 事業開発 •
好きな技術: ◦ Amazon Route 53, CloudFront ◦ SORACOM ◦ Tailscale ◦ Starlink
3 DevelopersIO BASECAMP(デベキャン)第1期完走!
4 聴講者のターゲット • ITエンジニア ◦ フロントエンド、バックエンド、クラウドインフラ ◦ プリセールス、PM、PdM • DNSの学び方
◦ 現場で叩き上げ ◦ 学校で習った DNSにちょっと詳しくなるためのTips集を紹介する30分
5 事前リサーチ(社内アンケート)
6 お品書き 1. DNS概説 2. DNSちょっと詳しくなる1: 勉強方法とデバッグ 3. DNSちょっと詳しくなる2: Amazon
Route 53 4. DNSちょっと詳しくなる3: DNS over なにか
7 DNS概説 DNS(Domain Name System)は名前解決の手段のひとつ 名前解決は通信相手のホスト名をIPアドレスに変換する仕 組み yakiniku.local ホスト名 192.168.1.1
IPアドレス
8 DNS概説 DNSはシンプルなクライアント/サーバシステム DNSクライアント スマホやPC DNSサーバー ルーターやクラウド リクエスト レスポンス
9 DNS概説 簡素な分散システムとキャッシュ クライアント (リゾルバ) キャッシュサーバ (スタブリゾルバ) コンテンツサーバ (ドメインによる 階層化と委譲)
10 DNS概説 今日のTCP/IPネットワーク、インターネットの根幹 ありとあらゆるクライアントが、ありとあらゆるTCP/IP通信の 前段としてDNSサーバにリクエストを送りまくる DNSサーバは基本的につらい役回り 落ちるとすごく怒られるし、攻撃で狙われる
11 ここからは ちょっとだけ詳しくなる足がかりを DNSちょっと詳しくなる1: 勉強方法とデバッグ
12 勉強方法とデバッグ インターネット技術なので公開 情報が豊富 • JPRSのWebサイト • RFC: https://jprs.jp/tech/index.html #dns-rfc-info
書籍もたくさん出てる • 「DNSをはじめよう」
13 勉強方法とデバッグ digコマンド: DNSの通信をほぼダンプしてくれる cURLみたいなコマンド % dig classmethod.jp ; <<>>
DiG 9.10.6 <<>> classmethod.jp ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28062 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 9 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;classmethod.jp. IN A ;; ANSWER SECTION: トラブルシューティングには ヘッダ情報が大事 メッセージボディはセクションに分類される
14 勉強方法とデバッグ Amazon VPC内などを除き公開サー ビスなので手元からデバッグできる 実際の動きを追いやすいのがDNS のいいところ 便利なクエリオプションがたくさんあ るので頑張ってmanを見よう %
dig +short @8.8.8.8 . NS f.root-servers.net. a.root-servers.net. k.root-servers.net. h.root-servers.net. i.root-servers.net. j.root-servers.net. m.root-servers.net. l.root-servers.net. g.root-servers.net. b.root-servers.net. d.root-servers.net. c.root-servers.net. e.root-servers.net. %
15 勉強方法とデバッグ digコマンドのエラー • NXDOMAIN : HTTP 404 NotFound •
SERVFAIL : HTTP 5XX Server Error • NOERROR : HTTP 2XX OK NOERRORでもANSWER SECTIONが空っぽなど問題があ る場合も
16 DNSちょっと詳しくなる2: Amazon Route 53
↓ 大規模DNSマネージドサービスの登場 • キャッシュサーバ • コンテンツサーバ 17 Amazon Route 53
- 大規模DNSサービスを知ろう DNSサーバは運用が大変 ここで説明するのはコンテンツサーバ ※ Route 53は両方の機能を持つことに 注意
18 大規模DNSサービスの特徴 古典的な冗長化はプライマリ/セカンダリの2台構成 プライマリサーバ セカンダリサーバ ゾーン転送 これに代わるIP Anycastによる大規模な分散構成
19 IP Anycastとは • 複数ホストに同じグローバルIPアドレスを割り当て • インターネットのルータの構成で最寄りのホストを 向ける X.X.X.X X.X.X.X
X.X.X.X
20 IP Anycastとは DNS専用の仕組みではなく、インターネットの様々なサービ スで活用されている • Amazon Global Accelerator •
Cloudflare • Google Cloud CDN 検証にはEC2が便利(リージョン選び放題はありがたい)
21 多彩なDNSルーティングポリシー 単一のリソースレコードに対してフェイルオーバー (障害検出と振り替え)やロードバランス(負荷分散)などロジッ クを持たせる プライマリの サーバ セカンダリの サーバ Route
53 死活監視
22 多彩なDNSルーティングポリシー • フェイルオーバー • 位置情報 • 地理的近接性 • レイテンシー
• IPベース • 複数値回答 • 加重 • EDNS0 Client Subnet
23 DNSちょっと詳しくなる3 : DNS over なにか
24 DNS over なにか DNSクライアント周りの最近の話題 DNSは非暗号化プロトコル ISPでクエリーログが収集されてしまうリスク ISPのキャッシュサーバ
25 DNS over なにか 日本は法律で保護されるなど国によって状況はさまざま プライバシーに敏感なインターネットユーザー層 ※ コンテンツサーバー側はDNSSECという別の技術
26 DNSトラフィックの暗号化 実装はたくさん • DNS over TLS • DNS over
HTTPS • DNS over HTTP/3 Android Private DNSはover TLS だけど今後over HTTP/3に移るかも (iOSにもある)
27 まとめ • RFCと書籍、digコマンドでDNSをお友達にしよう • 大規模DNSマネージドサービスはIP Anycast • DNSクライアントの暗号化はプライバシー周辺の話題