DNSサーバを立ち上げる(2)

ローカルネットワーク内で名前解決するためのDNSサーバを試験的に立ち上げています。

記載の内容は、あくまでも仕組みを理解するための試験的な運用です。セキュリティ面に関しては、責任を負いかねます。

DNSサーバの指定を変える

DNSサーバが動いても、MYPC(クライアントのWindowsPC)のDNSサーバ設定がルータのままなら、これまでと何も変わりません。

なので、ローカルネットワーク内PCすべてのDNSサーバのIPアドレス設定を、今回立てた192.168.0.2に変更する必要があります。ただ、恐らくは、クライアントPCは、ルータのDHCP機能でIPアドレスを割り振られているのではないでしょうか。

その場合、ルータのDHCPサーバ設定で、「DNSサーバの通知設定」(設定名はルータによって異なると思います)で、192.168.0.2を指定すればよいのですが、通常はDNSサーバとして2つ(プライマリとセカンダリ)を設定できると思いますので、セカンダリに、ルータのIPアドレスを設定しておきます。自前のDNSサーバが停止していても、これまで通りルータに設定されたDNSサーバで名前解決をしてくれます。

設定後は、下記のようになります。

マシン名IPアドレスDNSサーバ
(ルータ)グローバル側123.456.789.012プロバイダのDNS1(プライマリ)
プロバイダのDNS2(セカンダリ)
(ルータ)LAN側192.168.0.1
ns1(DNSサーバ)192.168.0.2192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
www(Webサーバ)192.168.0.3192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
MYPC(クライアントWindows PC)192.168.0.10192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)

これで、MYPCから http://www.●●●.live-on.net とのアクセスが、外(グローバル)に出ることなく、192.168.0.3 へと名前解決され、 http://192.168.0.3 と同じように、アクセスできるようになりました。

せっかくなので、他のサーバも…

これまで立ち上げた、他のマシンも、DNSサーバの設定を変えてみます。

Windows Server 2019 Essentials

[設定] → [ネットワークとインターネット] → [アダプターのオプションを変更する] から、アダプターのプロパティを表示。

[インターネット プロトコル バージョン 4(TCP/IPv4)]のプロパティで

「優先 DNS サーバー」と「代替 DNS サーバー」をそれぞれ、DNSサーバ、ルータに設定します。

VMware ESXi7.0

[ネットワーク]から[VMkernel NIC]タブを選択し、唯一のNIC「vmk0」行にある「デフォルトのTCP/IPスタック」をクリックします。

そこから「設定の編集」で、プライマリDNSサーバとセカンダリDNSサーバを設定します。

ESXi7.0上で動く仮想マシンのDNSサーバのIPアドレスを設定するのは妙ですが、DNSサーバ起動前はセカンダリとなるルータへと問い合わせに行くので問題はないでしょう。

ただ、これらの設定は、正直なところ、特にメリットはありません。ESXi7.0自身が wwwサーバにアクセスすることもないですし。

これらの2つのマシンとDNSサーバを関連付けて面白味が出るのは、これら2つのサーバを、DNSのゾーンファイルに載せて、名前解決の対象にしてしまう、というところです。

ゾーンデータファイルの変更

/var/named/●●●.live-on.net.zone

$TTL 1D
@ IN SOA ns1.●●●.live-on.net. root.●●●.live-on.net. (
                2021040500 ; serial
                1D ; refresh
                1H ; retry
                1W ; expire
                3H ) ; minimum
        IN NS   ns1.●●●.live-on.net.
www     IN A    192.168.0.3
ns1     IN A    192.168.0.2
ws2019e IN A    192.168.0.4
vmhost  IN A    192.168.0.5

/var/named/●●●.live-on.net.rev

$TTL 1D
@ IN SOA ns1.●●●.live-on.net. root.●●●.live-on.net. (
                2021040500; serial
                1D ; refresh
                1H ; retry
                1W ; expire
                3H ) ; minimum
        IN NS           ns1.●●●.live-on.net.
2       IN PTR          ns1.●●●.live-on.net.
3       IN PTR          www.●●●.live-on.net.
4       IN PTR          ws2019e.●●●.live-on.net.
5       IN PTR          vmhost.●●●.live-on.net.

シリアル番号は、変更しておきましょう(差異があることを示すためのシリアル番号です。数字を大きくする方向での変更が必要ですので、基本は設定日を記載することで対応します)。

サーバ名と、紐づくIPアドレスを記載した後、BINDを再起動します。

# systemctl restart named.service

設定後は、下記のようになります。

マシン名IPアドレスDNSサーバ
(ルータ)グローバル側123.456.789.012プロバイダのDNS1(プライマリ)
プロバイダのDNS2(セカンダリ)
(ルータ)LAN側192.168.0.1
ns1(DNSサーバ)192.168.0.2192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
www(Webサーバ)192.168.0.3192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
ws2019e (Windows Server)192.168.0.4192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
vmhost (VMware ESXi7.0)192.168.0.5192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)
MYPC(クライアントWindows PC)192.168.0.10192.168.0.2(プライマリ)
192.168.0.1(セカンダリ)

その効果は

これで、 ws2019e.●●●.live-on.net で、Windows Server 2019 Essential にアクセスできます。

つまりは、WSUS設定でも、イントラネットのサーバ設定を、

http://ws2019e.●●●.live-on.net:8530 とすることで、安定した名前解決が出来るようになります。

VMware ESXi7.0 の方は…。

ブラウザで https://vmhost.●●●.live-on.net/ で、ESXi7.0 にアクセスできます。今のところ、それだけです(笑)