nslookup 无法在最新的 busybox 上获取服务 ip

use*_*293 5 busybox docker kubernetes

重现步骤:

  1. kubectl run busybox1 --generator=run-pod/v1 --image=busybox:1.28 -- sleep 3600
  2. kubectl run busybox2 --generator=run-pod/v1 --image=busybox:1.31.1 -- sleep 3600
  3. kubectl exec -ti busybox1 -- nslookup kubernetes.default

工作正常

服务器:10.96.0.10

地址1:10.96.0.10 kube-dns.kube-system.svc.cluster.local

名称:kubernetes.default

地址1:10.96.0.1 kubernetes.default.svc.cluster.local

  1. kubectl exec -ti busybox2 -- nslookup kubernetes.default

不工作

服务器:10.96.0.10 地址:10.96.0.10:53

** 服务器找不到 kubernetes.default: NXDOMAIN

*** 找不到 kubernetes.default: 没有答案

命令以退出代码 1 终止

nslookup 在 1.31.1 上的工作方式不同吗?

在 1.31.1 上使用 nslookup 的正确方法是什么?

dys*_*unc 6

busybox 内的 DNS 仅在图像 <= 1.28.4 中正常工作。

修复版本image: "busybox:1.28.0"应该可以解决问题。

这里有一个线程https://github.com/kubernetes/kubernetes/issues/66924