さくらのクラウド VPNルータ入門 4. DNSフォワーディングサーバ機能で名前解決を管理しよう

さくらのクラウドの「VPNルータ」はクライアントPCや他サイトとのVPN接続だけでなく、NATやファイアウォール、DHCPなど、プライベートネットワークの構築に必要な機能が揃った有用なアプライアンスです。この「VPNルータ入門」第4回では「DNSフォワーディングサーバ」機能を紹介します。
DNSフォワーディングサーバーとは
DNS(Domain Name System)による名前解決では、接続したいドメインの情報を知っている権威サーバーに対して、フルリゾルバー(DNSキャッシュサーバー)が順に問い合わせてIPアドレスを入手します。
例えば前回のVPN入門でDHCP機能を設定した際には、デフォルトのDNSサーバーとして、さくらインターネットが提供する標準のDNSキャッシュサーバーのIPアドレスを配りました。またパブリックなフルリゾルバーとして、Googleが提供する「8.8.8.8」などが知られています。
これに対してDNSフォワーディングサーバー(DNSフォワーダー)では、端末から受け取った名前解決の要求を特定のフルサービスリゾルバーに転送し、結果をキャッシュします。DNSプロキシーとも呼ばれます。
なぜDNSフォワーダーを用いるのか?
ネットワーク内でフルリゾルバーを変更する際に、すべてのサーバーやホストのDNS設定を変更するのは手間がかかります。あらかじめDNSフォワーダーに問い合わせを集約していれば、その参照先を変更するだけですみます。
とくに企業ネットワークでは、社内特有の事情などから特別なDNS設定が必要になることもあります。具体的なユースケースとして、以下のような場合が考えられるでしょう。
1. 全ての名前解決を外部DNSサービスにまとめたい
パブリックDNSや商用のセキュアDNSでは、禁止リストに登録されているサイトへの名前解決をブロックすることができ、クライアントが危険なサイトにアクセスすることを防止できます。DNSフォワーダーでこういったDNSに名前解決を一任できます。
2. VPN経由のネットワークでも名前解決ルールを統一したい
VPNルータでVPNを構築する際に、スイッチ配下の「サーバ」とVPN経由のPCで名前解決のルールを一致させる必要があります。DNSフォワーディングにより、同じDNSサーバーを明示的に指定できます。
3. 企業の内部ネットワーク独自の名前解決に
企業内では、独自ルールのローカルドメインやホスト名を使用することがよくあります。これはパブリックDNSでは解決できないため、社内のDNSサーバーやドメインコントローラーに問い合わせを集約することになります。
なお、さくらのクラウドで内部DNSを実現する機能として、DNSアプライアンスで「プライベートホストゾーン」機能を提供しています。
前回までの設定とこの記事で作業すること
このVPNルータ入門では第1回から前回までで、プライベートネットワークにある1台の仮想サーバーにDHCPでIPアドレスを割り当てるまでを設定しました。
今回のDNSフォワーディングサーバ機能は、コントロールパネルでも前回のDHCP機能と同じ「DHCP・DNS」タブにまとめられています。
VPNルータ – DNSフォワーディングサーバ機能の設定 | さくらのクラウド マニュアル
実際、設定にあたっても「DNSフォワーディングサーバ」タブだけでは完結せず、次のようにDHCPの設定もあわせて変更する必要があります。
- DNSフォワーディングサーバ機能を有効にする
- DNSフォワーダーのIPアドレスをDHCPで配布する
それぞれ具体的に設定内容を見ていきましょう。
1. DNSフォワーディングサーバ機能を有効にする
VPNルータの詳細画面で「DHCP・DNS」タブから、右端の「DNSフォワーディングサーバ」タブを選択します。
デフォルトでは「無効」なので、右下の「編集」をクリックして「編集: DNSフォワーディングサーバ設定」ダイアログを開きます。「有効/無効」欄で「有効」を選択すると、以降の欄が設定できるようになります。「対象インターフェース」はスイッチとサーバが接続されている「プライベート1」にします。
名前解決を転送する先は「DNSサーバ」欄で設定でき、空欄のままならデフォルト通りさくらインターネットが提供するDNSサーバー(133.242.0.3と133.242.0.4)が使用されますが、自身のネットワークの規定にあわせて自由に変更できます。ここではパブリックDNS(8.8.8.8と1.1.1.1)を指定しています。右下の「更新」をクリックして編集ダイアログを閉じます。
設定を変更したら、必ず上部の「反映」をクリックしてください。
2. DHCPで配布するDNSサーバーの設定を変更する
DNSフォワーディングサーバを変更しただけでは、まだスイッチ配下にあるそれぞれの「サーバ」が参照するDNSサーバーは以前のままになっています。せっかくDHCPでIPアドレスと一緒にDNSサーバーの情報も配布しているので、これを活用します。
先ほどと同じ「DHCP・DNS」タブで、今度は左端の「DHCPサーバ」タブをあらためて開きます。第3回で追加した「プライベート1」が表示されているので、右側の鉛筆アイコンをクリックして「更新: DHCPサーバ設定」ダイアログを開きます。
前回は「動的割り当て範囲」だけを設定しましたが、今回は「DNSサーバ」を変更します。先ほど設定したDNSフォワーダーは、VPNルータの「プライベート1」で動作しているので、そのインターフェースのIPアドレス(192.168.0.1)を設定します。右下の「更新」をクリックして更新ダイアログを閉じます。
設定を変更したら、必ず上部の「反映」をクリックしてください。
サーバの起動とテスト
VPNルータで「DHCP・DNS」の変更を反映したら、スイッチ配下の「サーバ」をいったんシャットダウンして再起動します。上記で設定したDNSサーバー情報が、IPアドレスとともにあらためてDHCPで配布されます。
起動が完了したら、コンソールなどからresolvectlコマンドでDNSサーバー情報を調べてみましょう。
ubuntu@ubuntu:~$ resolvectl status eth0
Link 2 (eth0)
Current Scopes: DNS
Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 192.168.0.1
DNS Servers: 192.168.0.1
このように「Current DNS Server」として、配布した192.168.0.1が設定されていれば成功です。続けてdigコマンドで実際に名前解決してみましょう。さくらインターネットの公式サイトを聞いてみます。
ubuntu@ubuntu:~$ dig www.sakura.ad.jp
; <<>> DiG 9.18.39-Ubuntu0.22.04.4-Ubuntu <<>> www.sakura.ad.jp
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51389
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;www.sakura.ad.jp. IN A
;; ANSWER SECTION:
www.sakura.ad.jp. 929 IN CNAME site-113401987442.gslb12.sakura.ne.jp.
site-113401987442.gslb12.sakura.ne.jp. 9 IN A 163.43.179.80
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Tue Aug 04 14:33:45 JST 2026
;; MSG SIZE rcvd: 110
このように出力されれば、問題なく名前解決できています。先ほど確認したようにDNSサーバーにはVPNルータの192.168.0.1を指定していますから、このようにdigで名前解決できるということは、VPNルータがDNSフォワーダーとして機能したことが分かります。
参考リンク
本記事では、さくらのクラウドのマニュアルから以下のページを参照しています。
VPNルータの料金については以下サイトをご確認ください。評価・検証で利用した場合、作業終了後に速やかにサービスを削除することでコストを抑制できます。
※プレミアムプラン以上をご利用の場合、上位に「ルータ+スイッチ」が必要となるため「ルータ+スイッチ」の料金も発生いたします。


