56941
DNS の設定を行なっている際、その動作を確認するために`dig`コマンドなどを実行するかと思います。

`dig` コマンドは、 DNS サーバーに記述されているレコードを返してくれていると思っていて、例えば、以下のような返答が帰ってきます。

```

    id 64320
    opcode QUERY
    rcode NOERROR
    flags QR RD RA
    ;QUESTION
    ja.stackoverflow.com. IN A
    ;ANSWER
    ja.stackoverflow.com. 299 IN A 151.101.129.69
    ja.stackoverflow.com. 299 IN A 151.101.65.69
    ja.stackoverflow.com. 299 IN A 151.101.193.69
    ja.stackoverflow.com. 299 IN A 151.101.1.69
    ;AUTHORITY
    ;ADDITIONAL
    
```

このように帰ってくる DNS レコードの結果について、いつも付与されている、この「IN」の文字列は何を表すのだろうと、ふと気になりました。

### 質問

  * DNS サーバーが返してくる DNS レコードについて、ほぼほぼもれなく付与されているこの「IN」という文字列は、一体何を表していますか？ 
    * たとえば「IN」以外のレコードは存在しますか？
    * その場合、その「IN」以外のレコードは例えばどのような用途で一般的には使われるのでしょうか？
CC BY-SA 4.0
2019-07-27T05:54:40.693
56938
2019-07-27T23:57:26.840
754
question
dns
DNS レコードに設定されている、「IN」は何を表していますか?
`IN`はインターネット(Internet)の意味です("INternet"なのか"InterNet"なのかまではわかりません)。インターネット(ここではグローバルのインターネット(WAN)だけでは無く、インターネットプロトコル(IPv4やIPv6)を使用するLANも含む)で使用するレコードであることを意味します。

DNSレコードではこの部分を"class"と呼んでおり、どのようなプロトコルを用いたシステムで使用するかを表しています。`IN`を含め、次のような値が定義されています。

  * `IN` インターネット 普段私達が使用しているネットワーク。スタック・オーバーフローにアクセスする場合も、インターネットが使用される。
  * `CS` [CSNET](https://ja.wikipedia.org/wiki/CSNET) ARPANETに直接接続できない機関向けに提供されたネットワークらしい。各機関は後継のNSFNET、そして、さらに広域接続になるインターネットへ移っていったため、現在は停止している。※BIND 9は未サポートの模様。
  * `CH` [Chaosnet](https://en.wikipedia.org/wiki/Chaosnet) MITで開発されたLAN向けのプロトコルを用いたネットワークらしい。すでに歴史的な意味しか無いが、BINDのバージョン情報レコード`version.bind`ではこのクラスを用いている。
  * `HS` [Hesiod](https://en.wikipedia.org/wiki/Hesiod_\(name_service\)) MITのProject Athenaで作られたネームサービス。ユーザーやグループなどの情報を提供するものらしい。言わばDNSの仕組みを用いたNIS/LDAPのようなもの。

`CS`は既に存在しないネットワークであるため、設定しても意味が無いですし、見ることは無いでしょう。`CH`はBINDのバージョン情報提供に用いられているため、今でも見ることができますが、Chaosnet自体を現役で使用しているところがあるのかは不明です。`HS`は、たぶん今でも使おうと思えば使えると思いますが、対応するアプリが非常に限られると思われるため、ユーザー情報などは普通にLDAP等を用いた方が良いでしょう。

参考文献

  * [RFC1034 DOMAIN NAMES - CONCEPTS AND FACILITIES](https://www.rfc-editor.org/rfc/rfc1034) 3.6. Resource Records
  * [RFC1035 DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION](https://www.rfc-editor.org/rfc/rfc1035) 3.2.4. CLASS values
  * [BIND 9 Administrator Reference Manual (Bind 9.14.4)](https://downloads.isc.org/isc/bind9/cur/9.14/doc/arm/Bv9ARM.pdf) 5.3 ZONE FILE
CC BY-SA 4.0
2019-07-27T07:04:24.953
56941
2019-07-27T23:57:26.840
2021-10-07T07:34:52.683
-1
7347
56938
answer