<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>RFC on blog.kyu08.com</title>
    <link>https://blog.kyu08.com/pr-344/tags/rfc/</link>
    <description>Recent content in RFC on blog.kyu08.com</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>ja</language>
    <copyright>blog.kyu08.com</copyright>
    <lastBuildDate>Sun, 15 Dec 2024 15:00:00 +0000</lastBuildDate><atom:link href="https://blog.kyu08.com/pr-344/tags/rfc/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>RFC 2606: Reserved Top Level DNS Namesを読んで知らなかったことを書く</title>
      <link>https://blog.kyu08.com/pr-344/posts/reserved-top-level-dns-names-rfc-2606/</link>
      <pubDate>Sun, 15 Dec 2024 15:00:00 +0000</pubDate>
      
      <guid>https://blog.kyu08.com/pr-344/posts/reserved-top-level-dns-names-rfc-2606/</guid>
      <description>本記事はUnipos Advent Calendar 2024の16日目の記事です。 ふいに見かけたRFC 2606: Reserved Top Level DNS Namesを読んでみたところ発見があったのでその内容をま</description>
      <content>&lt;p&gt;本記事は&lt;a href=&#34;https://qiita.com/advent-calendar/2024/unipos&#34; target=&#34;_blank&#34; &gt;Unipos Advent Calendar 2024&lt;/a&gt;の16日目の記事です。&lt;/p&gt;
&lt;p&gt;ふいに見かけた&lt;a href=&#34;https://datatracker.ietf.org/doc/html/rfc2606&#34; target=&#34;_blank&#34; &gt;RFC 2606: Reserved Top Level DNS Names&lt;/a&gt;を読んでみたところ発見があったのでその内容をまとめてみようと思います。&lt;/p&gt;
&lt;h2 id=&#34;rfc-2606の概要&#34;&gt;RFC 2606の概要&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;Abstract&lt;/p&gt;
&lt;p&gt;To reduce the likelihood of conflict and confusion, a few top level
domain names are reserved for use in private testing, as examples in
documentation, and the like.  In addition, a few second level domain
names reserved for use as examples are documented.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;対立や混乱を減らす目的でいくつかのTLD名が予約されている。用途はプライベートなテスト用、ドキュメントでの例示用など。&lt;/li&gt;
&lt;li&gt;上記に加えて例示用にいくつかのSecond Level Domain Namesが予約されている。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;予約されたtop-level-domain-names&#34;&gt;予約されたTop Level Domain Names&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;There is a need for top level domain (TLD) names that can be used for
creating names which, without fear of conflicts with current or
future actual TLD names in the global DNS, can be used for private
testing of existing DNS related code, examples in documentation, DNS
related experimentation, invalid DNS names, or other similar uses.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;DNSのプライベートテスト用やドキュメントなどの目的で使用できるTLD名が必要であるとのこと。（DNSへの解像度がとても低いので具体的にどんなテストが行われるのかの想像はついていない&amp;hellip;）&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;To safely satisfy these needs, four domain names are reserved as
listed and described below.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;            .test
         .example
         .invalid
       .localhost
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;ldquo;.test&amp;rdquo; is recommended for use in testing of current or new DNS
related code.&lt;/p&gt;
&lt;p&gt;&amp;ldquo;.example&amp;rdquo; is recommended for use in documentation or as examples.&lt;/p&gt;
&lt;p&gt;&amp;ldquo;.invalid&amp;rdquo; is intended for use in online construction of domain
names that are sure to be invalid and which it is obvious at a
glance are invalid.&lt;/p&gt;
&lt;p&gt;The &amp;ldquo;.localhost&amp;rdquo; TLD has traditionally been statically defined in
host DNS implementations as having an A record pointing to the
loop back IP address and is reserved for such use.  Any other use
would conflict with widely deployed code which assumes this use.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;上記のニーズを満たすために、次の4つのTLD名が予約されている。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;.test&lt;/code&gt;: 既存のまたは新規のDNS関連コードのテストに使用することが推奨されている。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;.example&lt;/code&gt;: ドキュメントや例示として使用することが推奨されている。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;.invalid&lt;/code&gt;: 無効であることが確実で一目で無効であることが明らかなドメイン名をオンラインで構築する際に使用することを目的としている。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;.localhost&lt;/code&gt;: 伝統的にホストDNS実装においてループバックIPアドレスを指すAレコードを持つものとして静的に定義されておりこのような使用のために予約されている。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;.invalid&lt;/code&gt;の説明がわからなかったのでWikipadiaを参照してみたところ次のような記述があった。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;This top-level domain is sometimes used as a pseudo domain name in Uniform Resource Identifiers (URIs) to convey either an error condition or in use of privacy protection.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/.invalid&#34; target=&#34;_blank&#34; &gt;https://en.wikipedia.org/wiki/.invalid&lt;/a&gt; より引用&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;要はエラーケースのテストのためやプライバシー保護の目的で擬似ドメイン名として利用されることがある、と理解した。(このあたりの深い理解は別途時間をとりたい)&lt;/p&gt;
&lt;p&gt;これらのTLD名は見たことはあったがRFCとして明示されていることは知らなかった。&lt;/p&gt;
&lt;h2 id=&#34;予約されたsecond-level-domain-names&#34;&gt;予約されたSecond Level Domain Names&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;3 Reserved Example Second Level Domain Names&lt;/p&gt;
&lt;p&gt;The Internet Assigned Numbers Authority (IANA) also currently has the
following second level domain names reserved which can be used as
examples.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; example.com
 example.net
 example.org
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;code&gt;example.com&lt;/code&gt;以外にも&lt;code&gt;example.net&lt;/code&gt;と&lt;code&gt;example.org&lt;/code&gt;が予約されていることは知らなかった。&lt;/p&gt;
&lt;p&gt;また、&lt;code&gt;4. IANA Considerations&lt;/code&gt;にも記述があるが、本文章で示されたTLD名およびSecond Level Domain名はInternet Assigned Numbers Authority(IANA)によって予約される。&lt;/p&gt;
&lt;h2 id=&#34;著作権表示&#34;&gt;著作権表示&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;Copyright (C) The Internet Society (1999).  All Rights Reserved.&lt;/p&gt;
&lt;p&gt;This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works.  However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;感想&#34;&gt;感想&lt;/h2&gt;
&lt;p&gt;はじめてRFCを読んだ。部分的に馴染みのある内容だったし文量としても多くなかったのでスムーズに読めた。&lt;/p&gt;
&lt;p&gt;これまでは「誰かがテスト用ドメインとして&lt;code&gt;example.com&lt;/code&gt;を抑えてくれているのでテスト用に使ってOK」という程度の理解だったが、いくつかのDomain名がテスト、例示目的で予約されることがRFCで明示されておりIANAが実際にそれらを予約していることでテスト用ドメインが利用できているということを知ることができた。&lt;/p&gt;
&lt;p&gt;物事を正確に理解するとトラブルシューティングや改善も素早くできるはずだし、知らなかったことをブログに書くと自分の理解も捗る(あと純粋に楽しい)ので、これからも自分の理解が曖昧なことを理解し共有する営みをやっていきたい。&lt;/p&gt;
&lt;p&gt;改めてネットワークは本当に何もわからないのでこの冬に時間をとって勉強したい。&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; &lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;&lt;a href=&#34;https://www.amazon.co.jp/Linux%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89%E5%AD%A6%E3%81%B6TCP-IP%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E5%85%A5%E9%96%80-%E3%82%82%E3%81%BF%E3%81%98%E3%81%82%E3%82%81-ebook/dp/B085BG8CH5&#34; target=&#34;_blank&#34; &gt;Linuxで動かしながら学ぶTCP/IPネットワーク入門&lt;/a&gt;や&lt;a href=&#34;https://www.sbcr.jp/product/4815618599/&#34; target=&#34;_blank&#34; &gt;体験しながら学ぶ ネットワーク技術入門&lt;/a&gt;あたりで腰を据えてネットワーク周りを学びたい&amp;hellip;。&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;が、次は&lt;a href=&#34;https://www.oreilly.co.jp/books/9784814400874/&#34; target=&#34;_blank&#34; &gt;コンピュータシステムの理論と実装 第2版&lt;/a&gt;をやると決めているのでやるとしたらその次かな&amp;hellip;。&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;ちなみに、他のRFCを眺めていたら&lt;code&gt;SHOULD&lt;/code&gt;, &lt;code&gt;MUST&lt;/code&gt;のようなキーワードが大文字で強調されていたが、それらのキーワードの解釈については&lt;a href=&#34;https://datatracker.ietf.org/doc/html/rfc2119&#34; target=&#34;_blank&#34; &gt;RFC 2119: Key words for use in RFCs to Indicate Requirement Levels&lt;/a&gt;で説明されていたのでよければ参照ください。&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
</content>
    </item>
    
  </channel>
</rss>
