Prism Central 2024.3 の PCVM で、DNS リゾルバ設定の様子を確認してみます。Prism Central の PCVM には、自動的に 127.0.0.1 の DNS サーバーアドレスが設定されていますが、これは Microservices Platform(MSP)で利用されるため削除不可です。
今回の環境
Prism Central のバージョンです。ちなみに PCVM は 1ノード構成です。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ ncli cluster version Cluster Version : pc.2024.3.0.1 Changeset ID : 3ee440 Changeset Date : 2025-01-23 14:55:19 +0000 Is LTS : false ncli Version : fraser-2024.3.0.1-stable-pc Changeset ID : 3ee440 Changeset Date : 2025-01-23 14:55:19 +0000
この Prism Central に設定してある、DNS サーバーが設定されています。
ncli でも、下記のように DNS サーバーのアドレス設定が確認できます。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ ncli cluster get-name-servers Name Servers : 192.168.1.101, 192.168.1.102
PCVM に設定される DNS サーバーのアドレス
PCVM で /etc/resolv.conf ファイルを確認すると、Prism Central に設定した DNS サーバーのほかに、ループバック アドレス(127.0.0.1)も設定されています。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ cat /etc/resolv.conf # Auto generated by DnsConfig on Sun Mar 30 19:53:50 2025 nameserver 127.0.0.1 nameserver 192.168.1.101 nameserver 192.168.1.102 search prism-central.cluster.local
そこで、PCVM 自身で 53 番ポートをリスニングしているプロセスを確認すると、dnsmasq が起動していることがわかります。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ sudo lsof -i:53 -P COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME dnsmasq 1441 root 4u IPv4 44978 0t0 UDP *:53 dnsmasq 1441 root 5u IPv4 44979 0t0 TCP *:53 (LISTEN) dnsmasq 1441 root 6u IPv6 44980 0t0 UDP *:53 dnsmasq 1441 root 7u IPv6 44981 0t0 TCP *:53 (LISTEN)
dnsmasq のサービスは、Systemd で管理されています。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ systemctl is-active dnsmasq active
dnsmasq の Unit ファイルを確認すると、設定ファイルとして /etc/dnsmasq.conf が指定されています。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ systemctl cat dnsmasq # /etc/systemd/system/dnsmasq.service [Unit] Description=Dnsmasq server After=network.target [Service] PermissionsStartOnly=true LimitNOFILE=1048576 LimitNPROC=512 ExecStartPre=/usr/sbin/dnsmasq -u root --test User=root WorkingDirectory=~ ExecStart=/usr/sbin/dnsmasq -k -u root --all-servers --conf-file=/etc/dnsmasq.conf ExecReload=/bin/kill -SIGUSR1 $MAINPID ExecStop=/bin/kill $MAINPID Restart=on-failure [Install] WantedBy=multi-user.target
/etc/dnsmasq.conf ファイルの内容です。
- prism-central.cluster.local への問い合わせは、192.168.5.2(PCVM ローカル アドレス)の 31000 番ポートにフォワーディングされます。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ cat /etc/dnsmasq.conf # Do not make changes in the dnsmasq.conf file instead # add changes in /etc/dnsmasq.d directory by creating # a new configuration file server=/prism-central.cluster.local/192.168.5.2#31000 conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig log-queries=extra log-facility=/var/log/dnsmasq.log log-async=10 local-ttl=30 address=/ntnx-base/ address=/default/
PCVM 内部の Kubernetes でフォワーディング先を確認すると、Prism Central の MSP DNS(mspdns サービス)になっています。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ kubectl get svc -A | grep 31000 kube-system mspdns NodePort 10.200.32.2153:31000/UDP,53:31000/TCP 65d
PCVM での名前解決の様子
PCVM から dig で名前解決すると、MSP に関係しない(prism-central.cluster.local 以外の)名前は、Prism Central に設定した DNS サーバーで名前解決できています。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ dig lab-nxce-01.go-lab.jp +norecurse ; <<>> DiG 9.11.36-RedHat-9.11.36-14.el8_10 <<>> lab-nxce-01.go-lab.jp +norecurse ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35312 ;; flags: qr aa ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ; COOKIE: c9f094fac251e655eb750b906811d57617701538eba53e22 (good) ;; QUESTION SECTION: ;lab-nxce-01.go-lab.jp. IN A ;; ANSWER SECTION: lab-nxce-01.go-lab.jp. 3600 IN A 192.168.20.30 ;; AUTHORITY SECTION: go-lab.jp. 3600 IN NS infra-dns-01.go-lab.jp. go-lab.jp. 3600 IN NS infra-dns-02.go-lab.jp. ;; ADDITIONAL SECTION: infra-dns-01.go-lab.jp. 3600 IN A 192.168.1.101 infra-dns-02.go-lab.jp. 3600 IN A 192.168.1.102 ;; Query time: 2 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Wed Apr 30 00:47:02 PDT 2025 ;; MSG SIZE rcvd: 180
ためしに Kubernetes の LoadBalancer サービスに関連する FQDN で名前解決してみます。PCVM の Kubernetes に作成されている LoadBalancer サービスの一覧を確認します。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ kubectl get svc -A | grep LoadBalancer default anc-hermes-service LoadBalancer 10.200.32.49 192.168.20.11 4801:30449/TCP,4811:31053/TCP,4812:32071/TCP 65d default anc-ovn-external LoadBalancer 10.200.32.229 192.168.20.11 6652:30573/TCP 65d default anc-policydb-external LoadBalancer 10.200.32.102 192.168.20.11 6653:32455/TCP 65d ntnx-base iam-proxy LoadBalancer 10.200.32.103 192.168.20.11 8440:30818/TCP,8443:30977/TCP,8445:31309/TCP 65d ntnx-base iam-proxy-cac LoadBalancer 10.200.32.170 192.168.20.11 9441:32116/TCP,9442:30844/TCP 65d ntnx-base iam-proxy-internal LoadBalancer 10.200.32.23 192.168.5.2 8448:31061/TCP 65d ntnx-base svcmgr LoadBalancer 10.200.32.116 192.168.5.2 2083:30855/TCP 65d pc-platform-core batch-service LoadBalancer 10.200.32.14 192.168.5.2 8889:32203/TCP,8891:31282/TCP 65d pc-platform-nci mitra-service LoadBalancer 10.200.32.79 192.168.20.11 2105:31106/TCP 65d pc-platform-nci objects-lite LoadBalancer 10.200.32.12 192.168.5.2 7206:32667/TCP,7201:32600/TCP,7204:31033/TCP 65d pc-platform-nci security-dashboard LoadBalancer 10.200.32.218 192.168.20.11 8801:31876/TCP,8800:30310/TCP,8805:32064/TCP 65d pc-platform-nci security-svc-internal LoadBalancer 10.200.32.62 192.168.20.11 8804:32008/TCP 65d pc-platform-other licensing-app LoadBalancer 10.200.32.173 192.168.20.11 9091:30128/TCP 65d
「ntnx-base」Namespace にある「iam-proxy」サービスの FQDN は、下記のようになります。
- iam-proxy.ntnx-base.prism-central.cluster.local
この FQDN を dig で確認すると、さきほどの結果とは AUTHORITY SECTION / ADDITIONAL SECTION が異なり、Prism Central に設定した DNS サーバー以外(192.168.1.101 / 192.168.1.102 以外)のレコードで名前解決されていることがわかります。
nutanix@NTNX-192-168-20-11-A-PCVM:~$ dig iam-proxy.ntnx-base.prism-central.cluster.local +norecurse ; <<>> DiG 9.11.36-RedHat-9.11.36-14.el8_10 <<>> iam-proxy.ntnx-base.prism-central.cluster.local +norecurse ;; global options: +cmd ;; Got answer: ;; WARNING: .local is reserved for Multicast DNS ;; You are currently testing what happens when an mDNS query is leaked to DNS ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53952 ;; flags: qr aa ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ; COOKIE: 359dda31defc70c7 (echoed) ;; QUESTION SECTION: ;iam-proxy.ntnx-base.prism-central.cluster.local. IN A ;; ANSWER SECTION: iam-proxy.ntnx-base.prism-central.cluster.local. 5 IN A 192.168.20.11 ;; Query time: 1 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Wed Apr 30 00:48:48 PDT 2025 ;; MSG SIZE rcvd: 151
以上。