Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ディレクター デザイナー向け DNS入門 / yapodu_dns_study
Search
r.tamura
April 26, 2018
Technology
270
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ディレクター デザイナー向け DNS入門 / yapodu_dns_study
yapodu_dns_study
r.tamura
April 26, 2018
Other Decks in Technology
See All in Technology
継続的なAIコスト最適化
bgpat
1
350
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
730
DBについての基礎説明(MySQL編) - コロプラ 2026年度 新卒研修
colopl
0
100
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
hackers_champloo_2026_tidb
makocchi
0
170
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
180
Refining Active Record
shugo
0
160
USB PDを使ってスマホを労わりたい
raspython3
0
180
パッチ更新でterraform initが落ちた日
grimoh
1
140
AI コーディングと人間の認知スループット / CTO Night & Day 2026 Morning Session / AI Coding and Human Cognitive Throughput
prog893
4
1.2k
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
170
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
280
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
Making Projects Easy
brettharned
120
6.8k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
We Are The Robots
honzajavorek
0
400
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Producing Creativity
orderedlist
PRO
348
41k
Optimizing for Happiness
mojombo
378
71k
Transcript
ディレクター デザイナー 向け DNS 入門
あんた誰? ・田村 亮 ・@launcher_test ・株式会社ヤポドゥ (一人親方) ・主にインフラ系 ・異教徒のため林檎教の 素晴らしさが理解できません ・デザインホントワカラナイ
• 本スライドはDNSの入門として概要レベルの知識を学ぶことを 想定してます。 • そこまで詳しくはないので更に学びたい人は後半に紹介する書 籍,リンクもしくはスライド内の [豆知識] をご覧ください。 始める前に…
とりあえず ブラウザのDisable cache(キャッシュ無効)と Remote Address (IP)を確認するクセをつければ無駄な確認が減ります。 今日みんなに伝えたいこと
インターネットの原型 ARPAnet の話 (1970年代) (Advanced Research Projects Agency:米国国防総省高等研究計画局) 山田にメッセージを送りたい 佐藤のサーバファイルを見たい
山田のサーバ IP : 198.51.100.50 佐藤のサーバ IP : 203.0.113.60 ※TCP/IP登場以前の時代ですが 理解しやすくするためIPで表現してます。
接続方法 山田にメッセージを送りたい 佐藤のサーバファイルを見たい 山田のサーバ IP : 198.51.100.50 佐藤のサーバ IP :
203.0.113.60 198.51.100.50 にメッセージを送れ 203.0.113.60 のファイルを表示しろ
できるけど・・・ こんな数字の羅列覚えられない 俺、数字は4649(夜露四苦)と830(矢沢)が 入ってないと使わねーから 何とかしなければ…
数字じゃ覚えられない… 名前で接続できればいいかも IPと名前を紐づければ行けるぞ!
HOSTSの誕生 yamadaはIP 198.51.100.50だ! satoはIP 203.0.113.60だ! hosts hosts これは [名前解決 ]
と呼ばれている
HOSTS参照での接続 山田にメッセージを送りたい 佐藤のサーバファイルを見たい 山田のサーバ IP : 198.51.100.50 佐藤のサーバ IP :
203.0.113.60 yamada にメッセージを送れ sato のファイルを表示しろ
ARPAnet の HOSTSの管理運用 hosts 申請され接続された端末名/IPを hostsファイルに登録して、 みんなが取得すれば便利だし間違いない yamada 198.51.100.50 sato
203.0.113.60 yazawa-rock 192.0.2.69 ・・・ ・・・ ・・・ ・・・ 矢沢ファンのサーバ IP : 192.0.2.69 矢沢ファンに画像を送りたい yazawa-rock に画像を送れ FTPで取得 永ちゃん カッケー ※厳密に言えばSRI-NICがhosts.txtを運用してました。
HOSTS運用していたが・・・ ・ 1970年代初頭は100台だった台数が・・・ ・1983年には数万台に増えすぎて管理が難しくなる 100台分の名前を管理してます FTPで最新ファイルを 取得すればいいから楽。 hosts hosts 3万台分の名前を管理してますが。。。
定期的にFTPで 最新ファイル取得しておこう 番付が変わりましたので hosts名変更してください
FTPが接続過多でエラーになってるぞ oozekiって申請したのにozekiになってる! 何とかしなければ… HOSTS運用の問題点 ・負荷の増大 ・入力間違い ・みんなが最新ファイルを取得してるわけではない ・名前が重複して登録できてしまう(片方にしか行かない)
問題点がでてきたから改善したい。。。 1.名前=アドレスだけじゃなくて色々拡張したい 2.名前が爆発的に増えたので所属や用途でわけ管理したい(階層化) 3.複数台で処理したい(分散) 4.取得に頼らずに常に最新情報を参照したい(同一性) 1.名前に種類を定義して、利用できるようにしよう 2.国や団体で区切り、大枠以外は管理を任せるようにしよう 3.マスター情報から複製をとり複数台で名前を解決できるようにしよう 4.常にネットワーク経由で最新情報を参照するようにしよう Domain
Name System(DNS)って名前にしよう ぼくのかんがえたさいきょうのなまえかいけつ
名前が爆発的に増えたので所属や用途でわけたい jp (日本) us (アメリカ) edu (教育機関) ny (ニューヨーク州) co
(企業) com (商取引) example.co.jp 日本の 会社 エグザンプルの ドメイン 末尾jpを管理 co.jpを管理 example.co.jp を管理 example (ミュージシャン) example (エグザンプル 株式会社) example.ny.us を管理 example.ny.us アメリカの ニューヨーク州 アーティストExample のドメイン 末尾usを管理 ny.usを管理 ただし、この用途は現在も 厳格に運用されているもの もあれば、かなりあいまい になっているものもある 例: 厳密ではない .com(商取引) .info(情報サイト) 厳密 .mil(アメリカ軍) .co.jp(日本の企業)
階層化 . ルートサーバ com co example jp org edu mit
ocw 非営利組織向けのドメイン orgを管理してます xxx.org.は私に聞いてください 日本の会社関連のドメイン co.jpを管理してます xxx.co.jp.は私に聞いてくださ い 株式会社エグザンプルのドメイン example.co.jpを管理してます xxx.example.co.jp.は私に聞いてください 教育機関関連のドメイン eduを管理してます xxx.edu.は私に聞いてください マサチューセッツ工科大学のドメイン mit.eduを管理してます xxx.mit.edu.は私に聞いてください マサチューセッツ工科大学 オープンコースウェアのドメイン ocw.mit.eduを管理してます xxx.ocw.mit.edu.は私に聞いてください トップドメイン を管理してます xxx. は私に聞いてください 商取引のドメイン comを管理してます xxx.com.は私に聞いてください 日本関連のドメイン jpを管理してます xxx.jp.は私に聞いてください
example.co.jp のIPを知りたい 1. ルートサーバに.jp.の管理サーバ(NS)がどこにあ るのか聞く 2. .jp.に.co.jp.の管理サーバ(NS)がどこにあるのか 聞く ルートサーバさん jp.のNSはどこですか?
jp.は198.51.100.1で す jp.サーバさん co.jp.のNSはどこですか? co.jp.は203.0.113.2です co.jp.サーバさん example.co.jp.のIPはどこですか? example.co.jp.は192.0.2.3です 3. .co.jp.にexample. co.jp.のIPを聞く DNSはどうやって名前からIPを確認するの?
DNSルートサーバ? Q : IPを知りたいときに最初に聞きに行くルートサーバって何? jp (日本) co (企業) . (ルート)
A : 世界に散らばった13のゾーンに存在し すべてのトップドメインをつかさどり経路を導く [ DNSルートサーバ ]
なにそれ・・・
DNSルートサーバとは クライアントがDNS名前解決を行う際にトップドメインのNSを知る必要がある。 例 : jp.なら jp.のNS , com. なら com.のNS
. で表現されるが省略される場合がほとんどです。 example.co.jpのIPを知りたいのに、そもそも最初のjpのNSがわからない もしもルートサーバがなかったら、、、 ルートサーバがあると example.co.jpのIPを知りたいから、jpのNSを教えてください。 jpのNSは198.51.100.1です。
DNSルートサーバ DNSサーバは13ゾーン存在し日本も含まれる。 なぜゾーンと表現されるかといえば、実際には世界中に散らばっているため 例:日本のゾーンは日本のWIDEプロジェクトとJPRSが運用し海外にもサーバが存在する 豆知識 13ゾーン = 13か所に設置されているわけではなく 実際は色んな所に散らばって処理されてます。
名前解決をウエブブラウザで確認しよう 厳密に言うと「ブラウザ上のURL欄の名前のIPを確認」になります。 ブラウザが名前をどのIPで接続しているのかが確認できます。 1.Chromeでデベロッパーツールを起動 ( Windows => Ctrl + Shift
+ I MacOS => Command+Option+I) Network タブで[Disable cache]をON 2.Name最上段のアクセスした名前をクリック Remote Address 項目にアクセスしたIPが表示
注意 ブラウザのIPはhostsに設定されていればhostsの内容が優先されます 192.168.1.1 www.isc.org ↑hostsの内容 本来であればDNSを使用してIPを解決するがhostsの 記載内容が優先される ブラウザでのIP確認の際はデベロッパーツールのキャッシュ機能がOFFであること、 hostsに記載がないことを確認していください。
レコードの種類 A ホストのIPアドレス 例 : www IN A 160.16.63.230 =>
www.yapodu.co.jp の IPアドレスは160.16.63.230 です。 ・DNSでは用途によってレコードに種類がある 以下は一例ですが、まずは最低限の部分だけ記載します。 ドメイン : yapodo.co.jp の場合 MX ドメインのメール配送先 例 : IN MX 10 mail.yapodu.co.jp. => yapodu.co.jp の メール配送先はmail.yapodu.co.jp. です CNAME ホスト名の別名 例 : betsumei IN CNAME www.yapodo.co.jp. => betsumei.yapodu.co.jp は www.yapdo.co.jp の別名です。
名前解決をコマンドで確認しよう PS C:¥Users¥win01> Resolve-DnsName www.isc.org Name Type TTL Section IPAddress
---- ---- --- ------- --------- www.isc.org A 60 Answer 149.20.64.69 Widnows => PowerShellで Resolve-DnsName “名前” 解決されたIPのTTL(キャッシュ) 解決されたIP 解決されたレコードタイプ 解決対象の名前 Aレコード出力例 ・コマンドでAレコード,CNAMEレコードを確認 豆知識 TTLが残っていれば問い合わせせずにキャッシュから回答します。 TTLが0になると新規に問い合わせに行きます。
名前解決をコマンドで確認しよう PS C:¥Users¥tamura> Resolve-DnsName www.facebook.com. Name Type TTL Section NameHost
---- ---- --- ------- -------- www.facebook.com CNAME 23 Answer star-mini.c10r.facebook.com Name : star-mini.c10r.facebook.com QueryType : A TTL : 23 Section : Answer IP4Address : 31.13.82.36 Widnows => PowerShellで Resolve-DnsName “名前” 解決されたレコードのTTL(キャッシュ) 解決されたCNAME 解決されたレコードタイプ 解決対象の名前 CNAMEレコード出力例 CNAMEの解決内容 ・コマンドでAレコード,CNAMEレコードを確認
名前解決をコマンドで確認しよう ・コマンドでAレコード,CNAMEレコードを確認 Aレコード出力例 $ dig www.isc.org ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3
<<>> www.isc.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39270 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.isc.org. IN A ;; ANSWER SECTION: www.isc.org. 50 IN A 149.20.64.69 ;; Query time: 55 msec ;; SERVER: 8.8.4.4#53(8.8.4.4) ;; WHEN: Thu Oct 5 16:52:12 2017 ;; MSG SIZE rcvd: 45 解決対象の名前とタイプ 解決されたIPのTTL(キャッシュ) 解決されたレコードタイプ 解決されたIP MacOS => ターミナルで dig “名前”
名前解決をコマンドで確認しよう ・コマンドでAレコード,CNAMEレコードを確認 CNAMEレコード出力例 $ dig www.facebook.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3
<<>> www.facebook.com. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18552 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.facebook.com. IN A ;; ANSWER SECTION: www.facebook.com. 3098 IN CNAME star-mini.c10r.facebook.com. star-mini.c10r.facebook.com. 21 IN A 31.13.95.36 ;; Query time: 13 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Thu Oct 5 17:12:28 2017 ;; MSG SIZE rcvd: 79 解決対象の名前とタイプ 解決されたIPのTTL(キャッシュ) 解決されたレコードタイプ 解決されたCNAME MacOS => ターミナルで dig “名前” CNAMEの解決内容
ありがちなこと ドメイン変更してページ差替えたのにに古いページが参照される ・ブラウザのDisable cacheで確認してますか? ・名前のTTLは終了して新しいドメインレコードで参照されてますか? あ、キャッシュだった…
とりあえず ブラウザのDisable cache(キャッシュ無効)と Remote Address (IP)を確認するクセをつければ無駄な確認が減ります。 もう一度、今日みんなに伝えたいこと
ありがとうございました。
参考書籍 DNS&BIND ,オライリー・ジャパン 実践DNS-DNSSEC時代のDNSの設定と運用 ,株式会社日本レジストリサービス(JPRS) 参考ページ ポン太のネットの大冒険 ~楽しくわかるインターネットのしくみ~ https://jprs.jp/related-info/study/