ネットワーク関連

脆弱性関連

関連Web/話題

概要

  • DNS=Domain Name Serviceの略
  • ポート53を使用する(UDP/TCPともに)
  • レスポンスのサイズが512byteを超えるとTCPで再送する。これをTCPフォールバックと呼ぶ

ゾーンファイル

  • 各サーバで管理しているDNSの単位をゾーンと呼び、その情報を保存しているファイルをゾーンファイルと呼ぶ。

ゾーンファイルのレコード

ゾーンファイルは以下の種類のレコードで構成される

  • SOA:Start of Authority DNSサーバの管理情報など
  • NS:Name Server ゾーンファイルを管理するDNSサーバ(権威DNSサーバ=コンテンツサーバ)を指定する。
  • MX:Mail Exchange メールサーバのFQDNを設定する
  • A:Address ホスト名をアドレスに紐付ける情報
  • AAAA:Address IPv6用のAレコード
  • CNAME: Canonical Name ホストの別名
  • PTR:Pointer IPアドレスをホスト名に紐付ける逆引き情報。
    • IPv4の場合 999.999.999.999.in-addr-arpa.
    • IPv6の場合 [16byte x 2 =32個の 4bit毎の16進数].ip6.arpa
    • 例えば、2001:dc4::1というIPv6アドレスを持つホストのホスト名を調べるためには、1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.4.c.d.0.1.0.0.2.ip6.arpaをDNSに問い合わせる
  • NAPTR: ENUMドメイン名を別のURIへ変換する。VoIPの電話番号をURIに紐付ける
  • OPT:Option EDNS0(Extention Mechanisms for DNS (RFC2671))パケットサイズ広告など
  • TXT:任意のテキスト情報
  • 下位ゾーンは上位ゾーンに対して必ずNSレコードとそのネームサーバのAレコードを登録する必要がある

DNSの種類

  • プライマリDNS:そのドメインにおける資源レコードを登録
  • セカンダリDNS:プライマリDNSからゾーン転送によってコピーされる
  • NSレコードはMSレコードのような優先順位情報を持っていないためプライマリDNSとセカンダリDNSは外のネットワークから見たとき見分けはつかない
  • ダイナミックDNS(DDNS)=DNS UPDATE
    • ゾーンファイルに自動でIPアドレスの変更を反映させる方式

プロトコル

  • アプリケーション層のプロトコルである
  • トランスフォーム層ではUDPとTCPの両方を使う。
  • 通常の名前解決にはUDPを使うが以下の場合はTCPを使う。
  • 名前解決でUDPのデータグラム長512byteに返信が入りきらない場合、共通ヘッダ内のTCビットが立ったデータが返信される。それをうけたリゾルバはTCPで接続しデータを受け取る。
  • プライマリDNSからセカンダリDNSへゾーンファイルを転送する際にTCPを使用する。

ドメイン

  • DNSのルートサーバは世界に13台あり、TLD(Top Level Domain)のゾーンを管理している
  • TLDは xxx.co.jp の jp の部分に相当する。co がセカンドレベルドメイン、xxxがサードレベルドメインと呼ばれる。
  • ドメイン名の書式は相対ドメイン名と絶対ドメイン名(FQDN)がある。
  • 相対ドメイン名
    • SOAレコードの $ORIGIN ディレクティブ相対パスの原点(xxx.co.jpなど)を設定し、他のレコード中にある @ と置き換える
  • 絶対ドメイン名(FQDN)
    • .(ドット)で終了する

ENUMドメイン

  • E.164 NUmber Mappingの略
    • ENUM (E.164 NUmber Mapping) は、公衆交換電話網の電話番号体系をインターネットのIPアドレス体系と統合する電話番号マッピング (telephone number mapping) の代表的な規格。電話番号はE.164規格で体系化されており、インターネットはIPアドレスや他のリソース情報とドメイン名のリンクに Domain Name System (DNS) を用いる。電話番号マッピングシステムは、DNSを単に参照することで与えられた電話番号に対応したサービスを提供するインターネット上のサーバを決定するものである。ENUMでは特別なDNSレコードタイプを使い、電話番号からインターネット通信に使える Uniform Resource Identifier やIPアドレスに変換する。(Wikipediaより)
  • 末尾にe164.arpa.が着く
  • E.164番号が
    +81-3-3470-ABCD
    の場合、ENUMドメインは
    D.C.B.A.0.7.4.3.3.1.8.e164.arpa.
    となる
  • 参考:http://ja.wikipedia.org/wiki/ENUM

ドメインサービス

リゾルバ

  • DNSのクライアントのこと。フルサービス・リゾルバとスタブ・リゾルバがある。
  • フルサービス・リゾルバ:再帰検索をして完全に名前解決ができる。
  • スタブ・リゾルバ:フルサービス・リゾルバに要求して名前を受け取る。通常のPC
  • スタブ・リゾルバの機能だけを持っているDNSサーバをスレーブ・サーバと呼ぶ。

共通ヘッダ内の制御ビット

  • TCビット:DNS返答メッセージが512byteを超えたときに1になる。その場合DNS返答メッセージは改めてTCPを使ってやりとりされる。これをDNSフォールバックという。
  • RDビット:Recursion Desired. 1のとき再帰的問い合わせを行う。0ならば反復問い合わせを行う。

マルチホーミングと逆引き設定

  • マルチホーミング(ISP側から引きこむ回線を複数ISPの回線に二重化する構成)の場合、送信元メールサーバのIPアドレスのPTRレコードは経由しうる接続先ISPごとのIPアドレスをすべて登録する必要がある。登録されていないISPを経由した電子メールを受信した受信側メールサーバが逆引きに失敗し「セキュリティ上問題あり」として受信拒否される可能性があるため

DNS関連のセキュリティ

  • 参考URL:http://web-tan.forum.impressrd.jp/e/2009/01/15/4414
  • http://www.itmedia.co.jp/enterprise/articles/0612/11/news035.html
    • 512バイトを超えた場合のDNSサーバの挙動としては、TCPフォールバックかEDNS0のいずれかを取ることになるが、森氏によると、いずれの場合も通信に影響が生じる恐れがある。TCPフォールバックの場合は、EDNS0の場合と比べレスポンス低下が見られ、「やっぱりTCPの場合はそれなりにペナルティが大きい」(同氏)。一方EDNS0の場合、フラグメントされたパケットが送信される可能性があり、「パケットドロップ率が高い環境だと、とても悲しいことになる」という。

公開DNS

  • 今はGoogle Public DNSが日本国内にあるらしい 2011.9.16
    • Googleは日本国内の多くのISPと直接接続しているので、Google Public DNSも多くのユーザの「お隣のASさん」という感じになっており、2年前よりもかなり高速化してると思います。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-09-13 (金) 00:06:56 (2798d)