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
11k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
知っているようで知らないことの多いDNS。ちょっとだけ詳しくなるためのDNSの仕組み講座から最近のDNS事情までをまるっと紹介する30分です。
takipone
April 11, 2023
Tweet
Share
More Decks by takipone
See All by takipone
OJTに夢を見すぎていませんか? ロールプレイ研修の試行錯誤/tryanderror-in-roleplaying-training
takipone
1
240
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
680
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.4k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.2k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
990
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
760
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2.1k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3.1k
日本🇯🇵でAWS Direct Connect を利用する話/akiba-aws-dx
takipone
1
2.4k
Other Decks in Technology
See All in Technology
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
200
extension 現場で使えるXcodeショートカット一覧
ktombow
0
200
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
240
stupid jj tricks
indirect
0
7.8k
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
150
AWSにおけるTrend Vision Oneの効果について
shimak
0
120
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
動画データのポテンシャルを引き出す! Databricks と AI活用への奮闘記(現在進行形)
databricksjapan
0
140
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
From Prompt to Product @ How to Web 2025, Bucharest, Romania
janwerner
0
110
履歴 on Rails: Bitemporal Data Modelで実現する履歴管理/history-on-rails-with-bitemporal-data-model
hypermkt
0
2k
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
930
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
Raft: Consensus for Rubyists
vanstee
139
7.1k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
890
Building an army of robots
kneath
306
46k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Fireside Chat
paigeccino
40
3.7k
Site-Speed That Sticks
csswizardry
11
880
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クライアントの暗号化はプライバシー周辺の話題