VMware Photon OS 3.0 の参照DNS サーバ設定。(systemd-resolved)



  • VMware Photon OS 3.0 の参照 DNS サーバの設定は、

    これまでの Photon OS とは様子が変わっているようです。

    今回は、Photon OS 3.0 の DNS サーバ アドレスの確認と、設定変更をしてみます。

     

    Photon OS 3.0 は、GitHub の URL からダウンロードできる

    「OVA with virtual hardware v13 (UEFI Secure Boot)」を利用しています。

    Downloading Photon OS · vmware/photon Wiki · GitHub

    root@photon-machine [ ~ ]# cat /etc/photon-release

    VMware Photon OS 3.0

    PHOTON_BUILD_NUMBER=26156e2

     

    Photon 3.0 の /etc/resolv.conf は下記のように、

    nameserver に「127.0.0.53」というアドレスが設定されています。

    root@photon-machine [ ~ ]# cat /etc/resolv.conf

    # This file is managed by man:systemd-resolved(8). Do not edit.

    #

    # This is a dynamic resolv.conf file for connecting local clients to the

    # internal DNS stub resolver of systemd-resolved. This file lists all

    # configured search domains.

    #

    # Run "resolvectl status" to see details about the uplink DNS servers

    # currently in use.

    #

    # Third party programs must not access this file directly, but only through the

    # symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,

    # replace this symlink by a static file or a different symlink.

    #

    # See man:systemd-resolved.service(8) for details about the supported modes of

    # operation for /etc/resolv.conf.

     

    nameserver 127.0.0.53

     

    このアドレスは、DNS サーバ関連のようで、UDP 53 番ポートで待ち受けているようです。

    root@photon-machine [ ~ ]# ss -an | grep 127.0.0.53

    udp   UNCONN  0        0                              127.0.0.53%lo:53                                               0.0.0.0:*

     

    そして 53番ポートのプロセスを確認してみると、

    resolv.conf のコメントとも関係ありそうな systemd-resolve というものです。

    root@photon-machine [ ~ ]# tdnf install -y lsof

    root@photon-machine [ ~ ]# lsof -i:53 -P -n

    COMMAND   PID            USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

    systemd-r 205 systemd-resolve   12u  IPv4   3644      0t0  UDP 127.0.0.53:53

    root@photon-machine [ ~ ]# ps -p 205

      PID TTY          TIME CMD

      205 ?        00:00:00 systemd-resolve

     

    これは、systemd 229 以降に導入された名前解決マネージャーの仕組みのようです。

    https://www.freedesktop.org/wiki/Software/systemd/resolved/

     

    ちなみに、Photon 3.0 は systemd 239 でした。

    root@photon-machine [ ~ ]# rpm -q systemd

    systemd-239-10.ph3.x86_64

     

    DNS サーバのアドレスは、/etc/systemd/network/*.network ファイルの

    「DNS=」で設定したものが反映されます。

     

    Photon OS 3.0 では、デフォルトでは DHCP 設定のファイルが配置されています。

    root@photon-machine [ ~ ]# cat /etc/systemd/network/99-dhcp-en.network

    [Match]

    Name=e*

     

    [Network]

    DHCP=yes

    IPv6AcceptRA=no

     

    現時点では、DHCP 設定により自宅ラボの  DNS サーバ 2台が設定されています。

    root@photon-machine [ ~ ]# resolvectl dns

    Global:

    Link 2 (eth0): 192.168.1.101 192.168.1.102

     

    resolvectl では、より詳細な情報も確認できます。

    (デフォルトだとページャが作用しますが、とりあえず cat で全体表示しています)

    root@photon-machine [ ~ ]# resolvectl | cat

    Global

           LLMNR setting: no

    MulticastDNS setting: yes

      DNSOverTLS setting: no

          DNSSEC setting: no

        DNSSEC supported: no

    Fallback DNS Servers: 8.8.8.8

                          8.8.4.4

                          2001:4860:4860::8888

                          2001:4860:4860::8844

              DNSSEC NTA: 10.in-addr.arpa

                          16.172.in-addr.arpa

                          168.192.in-addr.arpa

                          17.172.in-addr.arpa

                          18.172.in-addr.arpa

                          19.172.in-addr.arpa

                          20.172.in-addr.arpa

                          21.172.in-addr.arpa

                          22.172.in-addr.arpa

                          23.172.in-addr.arpa

                          24.172.in-addr.arpa

                          25.172.in-addr.arpa

                          26.172.in-addr.arpa

                          27.172.in-addr.arpa

                          28.172.in-addr.arpa

                          29.172.in-addr.arpa

                          30.172.in-addr.arpa

                          31.172.in-addr.arpa

                          corp

                          d.f.ip6.arpa

                          home

                          internal

                          intranet

                          lan

                          local

                          private

                          test

     

    Link 2 (eth0)

          Current Scopes: DNS

           LLMNR setting: yes

    MulticastDNS setting: no

      DNSOverTLS setting: no

          DNSSEC setting: no

        DNSSEC supported: no

      Current DNS Server: 192.168.1.101

             DNS Servers: 192.168.1.101

                          192.168.1.102

     

    ためしに、DNS サーバのアドレスを変更してみます。

    設定ファイルを vi エディタで編集します。

    root@photon-machine [ ~ ]# vi /etc/systemd/network/99-dhcp-en.network

     

    今回は、下記の赤字部分を追記します。

    [Match]

    Name=e*

     

    [Network]

    DHCP=yes

    IPv6AcceptRA=no

    Domains=go-lab.jp

    DNS=192.168.1.1

    DNS=192.168.1.2

     

    ネットワークを再起動します。

    root@photon-machine [ ~ ]# systemctl restart systemd-networkd

     

    DNS サーバアドレスが追加登録されました。

    DHCP サーバによる DNS サーバのアドレスよりも高優先度で

    ファイルに追記した DNS サーバが追加されました。

    root@photon-machine [ ~ ]# resolvectl dns

    Global:

    Link 2 (eth0): 192.168.1.1 192.168.1.2 192.168.1.101 192.168.1.102

     

    resolvectl コマンドの末尾 10行だけ表示してみると、

    「Domains」のドメインも追加されています。

    root@photon-machine [ ~ ]# resolvectl | tail -n 10

           LLMNR setting: yes

    MulticastDNS setting: no

      DNSOverTLS setting: no

          DNSSEC setting: no

        DNSSEC supported: no

             DNS Servers: 192.168.1.1

                          192.168.1.2

                          192.168.1.101

                          192.168.1.102

              DNS Domain: go-lab.jp

     

    実際に名前解決が発生すると、利用されている DNS サーバ(Current DNS Server)がわかります。

    root@photon-machine [ ~ ]# resolvectl | tail -n 10

    MulticastDNS setting: no

      DNSOverTLS setting: no

          DNSSEC setting: no

        DNSSEC supported: no

      Current DNS Server: 192.168.1.1

             DNS Servers: 192.168.1.1

                          192.168.1.2

                          192.168.1.101

                          192.168.1.102

              DNS Domain: go-lab.jp

     

    DNS サーバ のアドレスが変更されても、/etc/resolv.conf のアドレスは

    127.0.0.53 のままですが、サーチドメインは追加されます。

    root@photon-machine [ ~ ]# grep -v '#' /etc/resolv.conf

     

    nameserver 127.0.0.53

    search go-lab.jp

     

    以上。Photon OS 3.0 の DNS サーバ アドレス設定の様子でした。



    https://communities.vmware.com/people/gowatana/blog/2019/05/13/photon30-resolvectl

Log in to reply
 

© Lightnetics 2019