🤐

kubernetesのpodのデフォルトのDNS名を確認する

2021/03/28に公開

はじめに

くーばねてすを倒すために今回はkubernetesで作成したpodのデフォルトのDNS名を調べた(^^)/

概要

■podのデフォルトのDNS
■どうやって調べるのか
■確認する

をまとめた(^^)/

■podのデフォルトのDNS

イングレスの設定をしていてDNS名前解決がうまくできなくて詰まっていたときに関係ないけどデフォルトのDNSがあったのでついでに調べた。

■どうやって調べるのか

https://kubernetes.io/ja/docs/concepts/services-networking/dns-pod-service/
デフォルトのドメイン名はnameserver(serviceのClusterIP).default.pod.cluster.local
になる。
ドメイン名を確認するにはpodの/etc/resolv.confファイルを確認する必要がある。

$ kubectl exec -it  pod名 /bin/sh
podに入る

$ cat /etc/resolv.conf   #resolv.confファイルを確認する
nameserver 10.96.0.10
# ①↑serviceのClusterIP
search default.svc.cluster.local svc.cluster.local cluster.local  
# ②↑にサーチパスが定義
options ndots:5

デフォルトのpodのドメイン名は①と②を足して

10-96-0-10.default.pod.cluster.local

となる。
10.96.0.1010-96-0-10にする。

■確認する

サーバに名前解決を問い合わせるnslookupコマンドで確認する。

$ nslookup 10-96-0-10.default.pod.cluster.local
Server:         10.96.0.10
Address:        10.96.0.10:53


Name:   10-96-0-10.default.pod.cluster.local
Address: 10.96.0.10

確認できた。

まとめ

イングレスの設定で詰まってて、なんかデフォルトのDNS設定も確認できたのでまとめた(>_<)

Discussion