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.2 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
www(Webサーバ) | 192.168.0.3 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
MYPC(クライアントWindows PC) | 192.168.0.10 | 192.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.2 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
www(Webサーバ) | 192.168.0.3 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
ws2019e (Windows Server) | 192.168.0.4 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
vmhost (VMware ESXi7.0) | 192.168.0.5 | 192.168.0.2(プライマリ) 192.168.0.1(セカンダリ) |
MYPC(クライアントWindows PC) | 192.168.0.10 | 192.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 にアクセスできます。今のところ、それだけです(笑)