DNS

スプリットDNS すぷりっとでぃーえぬえす

DNS内部DNS外部DNSゾーン分割ファイアウォール名前解決
スプリットDNSについて教えて

簡単に言うとこんな感じ!

社外の人と社内の人に「別の地図」を渡す仕組みだよ!同じドメイン名でも、社外からアクセスしたら公開サーバーへ、社内からアクセスしたら社内専用サーバーへ案内できるんだ。外には見せたくない内部の住所を隠せるから、セキュリティ面でもすごく便利ってこと!


スプリットDNSとは

スプリットDNS(Split DNS)とは、同じドメイン名に対して、アクセス元(社内・社外)によって異なるDNS応答を返す仕組みのことです。「分割DNS」や「スプリットホライズンDNS(Split-horizon DNS)」とも呼ばれます。たとえば www.example.com というドメインに対して、社外からは公開IPアドレスを、社内からはプライベートIPアドレスをそれぞれ返す、といった使い方をします。

DNS(Domain Name System)は、ドメイン名をIPアドレスに変換する「インターネットの電話帳」ですが、通常1つのDNSサーバーは誰に対しても同じ答えを返します。スプリットDNSはこれを「内向き用」と「外向き用」に分割することで、社内の機密情報(内部サーバーのIPアドレスや構成)を外部に漏らさず、かつ社内ユーザーには最適な経路を案内できるようになります。

企業のシステム発注・運用において、社内システムをクラウドやオンプレミスで運用しながら、外部公開サイトも同一ドメインで運用したい場合に特に重要な設計概念です。情シス担当者でなくても、ベンダーとの打ち合わせで「スプリットDNSで対応します」と言われたとき、何を指しているか理解しておくと安心です。


スプリットDNSの仕組み

社内・社外それぞれのユーザーに対して、別々のDNSサーバー(または別々のゾーン設定)が応答を返します。

項目社外ユーザー向けDNS社内ユーザー向けDNS
配置場所インターネット(公開ゾーン)社内LAN(内部ゾーン)
返すIPアドレスグローバルIP(公開サーバー)プライベートIP(社内サーバー)
見えるレコード公開情報のみ社内サーバー含む全情報
代表的な用途外部向けWebサイト案内社内システムへの直接アクセス

仕組みのイメージ

[ 社外ユーザー ]
    ↓ www.example.com を問い合わせ
[ 外部DNS ] → 203.0.113.10(公開Webサーバー)を返す

[ 社内ユーザー ]
    ↓ www.example.com を問い合わせ
[ 内部DNS ] → 192.168.1.10(社内Webサーバー)を返す

覚え方:「正門と通用口」

スプリットDNSは会社の「正門(外向き)と通用口(内向き)」に例えられます。来客(社外ユーザー)は正面玄関に案内され、社員(社内ユーザー)は裏の通用口から直接入れる、というイメージです。同じ「会社」でも案内先が違う、それがスプリットDNSです。

実現方法の分類

方式概要代表的な製品・技術
物理的に分離外部用・内部用DNSサーバーを別々に用意BIND, Windows DNS
ビュー(View)機能1台のDNSサーバーがアクセス元によって応答を切り替えBIND の view ディレクティブ
クラウドDNSクラウド上でゾーンを分割管理AWS Route 53(プライベートホストゾーン), Azure DNS

歴史と背景

  • 1980年代後半〜1990年代初頭 — DNSの普及に伴い、企業内のネットワーク構造が複雑化。外部に公開したくない内部サーバー情報をDNSで管理する必要性が生まれた
  • 1990年代中盤 — BINDがDNSサーバーのデファクトスタンダードとなり、設定の柔軟性から「内向き・外向き」の使い分けが現場レベルで広まる
  • 2000年代BIND 9view 機能を正式サポートし、1台のサーバーでスプリットDNSを実現する構成が一般化
  • 2010年代〜 — クラウド移行が進み、AWS Route 53の「プライベートホストゾーン」やAzure Private DNSなど、クラウドネイティブなスプリットDNS機能が登場
  • 現在VPNゼロトラストアーキテクチャの普及とともに、リモートワーク環境でのスプリットDNS設計がより重要な課題に

関連技術との比較・構成図

スプリットDNSは単体の技術ではなく、ファイアウォールVPNDMZ(非武装地帯) などと組み合わせて使うのが一般的です。

インターネット側 社外ユーザー (PC・スマートフォン) 外部DNSサーバー (公開ゾーン) 公開Webサーバー 203.0.113.10 ファイアウォール/VPN ファイアウォール 通信の振り分け VPNゲートウェイ 社員のリモートアクセス DNSの振り分け判断 社内→内部DNS 社外→外部DNS 社内ネットワーク 社内ユーザー (社員・PC) 内部DNSサーバー (プライベートゾーン) 社内業務サーバー 192.168.1.10 社内グループウェア 192.168.1.20 同じドメイン名でも、アクセス元によって異なるIPアドレスを返す

VPN利用時のスプリットトンネリングとの違い

混同しやすい用語にスプリットトンネリングがあります。これはVPNの設定に関する話で、「社内向け通信だけVPN経由にして、それ以外は直接インターネットに出る」という仕組みです。スプリットDNSはDNS(名前解決)の話、スプリットトンネリングはVPNの通信経路の話、と覚えておきましょう。

比較項目スプリットDNSスプリットトンネリング
対象DNS(名前解決)VPN(通信経路)
目的内外で異なるIPを返す社内通信のみVPN経由にする
組み合わせよく併用されるよく併用される
設定場所DNSサーバーVPNクライアント・ゲートウェイ

関連する規格・RFC

規格・RFC番号内容
RFC 1034DNS(ドメイン名の概念と設備)の基本仕様
RFC 1035DNS(実装と仕様)の基本仕様
RFC 6762Multicast DNS(mDNS)—ローカルDNS解決の関連仕様
RFC 7816DNSクエリ名の最小化(プライバシー保護の観点で関連)

関連用語

  • DNS — ドメイン名をIPアドレスに変換するインターネットの電話帳
  • プライベートIPアドレス — 社内ネットワーク内だけで使われる非公開のIPアドレス
  • ファイアウォール — 外部からの不正アクセスを遮断するネットワークの門番
  • VPN — インターネット上に仮想的な専用回線を作るトンネリング技術
  • DMZ(非武装地帯) — 外部と内部の中間に置かれる公開サーバー用のネットワーク領域
  • ゾーン転送 — DNSサーバー間でゾーン情報を複製・同期する仕組み
  • フォワーダー — DNSの問い合わせを別のDNSサーバーに中継する設定
  • ゼロトラスト — 「社内だから安全」という前提を捨てたセキュリティモデル