Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】DNS between On-premises & AWS

2025年09月29日に「Dev.to」が公開したITニュース「DNS between On-premises & AWS」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

オンプレミスとAWS環境で異なるDNSを持つため、互いのリソース名を直接解決できない。AWS Route 53 Resolver Endpointsは、この問題の橋渡し役となる。InboundはオンプレからAWSへ、OutboundはAWSからオンプレへの名前解決を可能にし、スムーズな連携を実現する。

出典: DNS between On-premises & AWS | Dev.to公開日:

ITニュース解説

DNS(Domain Name System)は、コンピューターネットワークにおいて、人間が覚えやすいウェブサイト名やサーバー名(ドメイン名)を、コンピューターが通信に利用する数字の列であるIPアドレスに変換する仕組みである。この名前解決のシステムは、あらゆるネットワーク通信の基盤となっており、システムエンジニアにとってその動作原理と設定方法は非常に重要な知識となる。

近年、多くの企業が従来の自社データセンターでシステムを運用する「オンプレミス」環境と、Amazon Web Services(AWS)のようなクラウドサービスを利用する「クラウド」環境を組み合わせて利用する「ハイブリッドクラウド」へと移行している。このハイブリッドクラウド環境を構築する際、それぞれの環境で独立したDNSが存在することが、名前解決における課題を生み出す。

オンプレミスネットワークには、その環境内のサーバーやアプリケーションの名前解決を担当するオンプレミスのDNSサーバーが存在する。例えば、「db.local.company.com」といった社内データベースのホスト名を知っており、そのIPアドレスを解決できる。一方、AWSの仮想プライベートクラウド(VPC)環境には、AWSが提供する「Route 53 Resolver」というDNSサービスが組み込まれている。これはVPC内で動作するEC2インスタンスやRDSなどのAWSリソースのプライベートホスト名、例えば「ip-10-0-1-5.ec2.internal」といった名前を、対応するプライベートIPアドレスに解決する役割を担う。

ここで問題となるのが、これらのDNSサービスがそれぞれ自分の環境内の情報しか知らないという点である。オンプレミスのDNSサーバーはAWSのリソース名を知らないため、オンプレミス環境のアプリケーションがAWS VPC内のEC2インスタンスにホスト名でアクセスしようとしても、名前解決ができない。逆もまた同様で、AWS VPC内のEC2インスタンスがオンプレミス環境のデータベースサーバーにアクセスしようとしても、AWSのRoute 53 Resolverはオンプレミスのホスト名を知らないため、名前解決ができず通信が成立しない。このような状況では、オンプレミスとクラウド間でシームレスな連携を実現することは困難である。

この名前解決の障壁を取り除き、オンプレミスとAWS VPC間で相互にDNSの名前解決を可能にするための機能が、「Route 53 Resolver Endpoints」である。Route 53 Resolver Endpointsは、AWS VPCの境界に設置される仮想的な入り口と出口のような役割を果たす。これには、「Inbound Endpoint」と「Outbound Endpoint」という二つのタイプがあり、それぞれ異なる方向の名前解決に対応する。

まず、Inbound Endpointについて説明する。Inbound Endpointは、オンプレミスネットワークからAWS VPC内のリソースへDNSの名前解決を問い合わせるための「入り口」となる。これにより、オンプレミス側のシステムがAWS側のリソース名を解決できるようになる。

具体的な名前解決の流れは次のようになる。オンプレミス環境で稼働しているアプリケーションが、AWS VPC内のEC2インスタンスのプライベートホスト名(例えば「ip-10-0-1-5.ec2.internal」)のIPアドレスを必要とし、オンプレミスのDNSサーバーに問い合わせを行う。オンプレミスのDNSサーバーは、自身の持つ情報リストにはそのホスト名がないことを確認する。そこで、あらかじめ設定されたルールに従い、そのDNSクエリをAWS VPC内に構築されたRoute 53 Inbound Endpointに転送する。Inbound Endpointはクエリを受け取ると、AWS VPC内のRoute 53 Resolverに問い合わせる。Route 53 ResolverはVPC内のリソース情報を管理しており、「ip-10-0-1-5.ec2.internal」に対応するIPアドレスが「10.0.1.5」であることを特定する。このIPアドレスはInbound Endpointを経由してオンプレミスのDNSサーバーに戻され、最終的にオンプレミスのアプリケーションに伝えられる。これにより、オンプレミスのアプリケーションはAWS VPC内のリソースにホスト名を使ってアクセスできるようになるのである。

次に、Outbound Endpointについて説明する。Outbound Endpointは、AWS VPC内のリソースからオンプレミスネットワークのリソースへDNSの名前解決を問い合わせるための「出口」となる。これにより、AWS側のシステムがオンプレミス側のリソース名を解決できるようになる。

具体的な名前解決の流れは次のようになる。AWS VPC内で稼働するEC2インスタンス上のアプリケーションが、オンプレミス環境のデータベースサーバーのホスト名(例えば「db.local.company.com」)のIPアドレスを必要とし、AWS VPCのRoute 53 Resolverに問い合わせを行う。AWSのRoute 53 Resolverは、自身の持つ情報リストにはそのホスト名がないことを確認する。そこで、あらかじめ設定されたDNSフォワーディングルールに基づき、そのクエリをRoute 53 Outbound Endpointを経由してオンプレミスのDNSサーバーに転送する。オンプレミスのDNSサーバーはクエリを受け取ると、自身のデータベースを参照し、「db.local.company.com」に対応するIPアドレスを特定し、その情報をOutbound Endpointに返す。Outbound Endpointはその情報をRoute 53 Resolverを経由してAWSのEC2インスタンスに渡し、EC2インスタンスはオンプレミスのリソースにホスト名を使ってアクセスできるようになるのである。

このように、Route 53 Resolver EndpointsのInboundとOutboundを適切に設定することで、オンプレミス環境とAWS VPC環境という物理的・論理的に分離された二つのネットワーク間で、相互にDNSの名前解決が可能となる。Inbound EndpointはオンプレミスからAWSのホスト名を解決する際に使用し、Outbound EndpointはAWSからオンプレミスのホスト名を解決する際に使用するというのが基本的な使い分けとなる。この機能は、ハイブリッドクラウド環境におけるシステム間の連携をスムーズにし、より柔軟で効率的なシステム構築と運用を可能にする、システムエンジニアにとって不可欠な要素である。

関連コンテンツ

関連IT用語