【问题标题】:kubernetes pods replying with unexpected source for DNS querieskubernetes pod 回复 DNS 查询的意外来源
【发布时间】:2017-05-25 07:08:42
【问题描述】:

我有一个 kubernetes + flannel 设置。 Flannel 配置为{"Network": "10.200.0.0/16", "SubnetLen":24, "Backend": {"Type": "vxlan"}}

我使用--service-cluster-ip-range=10.32.0.0/24 启动了 apiserver。据我了解,pod 地址由 flannel 管理,service-cluster-ip-range 由 iptables 管理。我运行了 kubedns 并尝试从 kubernetes 工作节点执行 dig 以进行我正在运行的部署。

$ dig phonebook.default.svc.cluster.local @10.32.0.10 +short
10.32.0.7

但是,当我从 pod 中运行的容器之一运行相同的命令时,我得到:

$ dig phonebook.default.svc.cluster.local
;; reply from unexpected source: 10.200.16.10#53, expected 10.32.0.10#53
;; reply from unexpected source: 10.200.16.10#53, expected 10.32.0.10#53
;; reply from unexpected source: 10.200.16.10#53, expected 10.32.0.10#53

; <<>> DiG 9.9.5-9+deb8u8-Debian <<>> phonebook.default.svc.cluster.local
;; global options: +cmd
;; connection timed out; no servers could be reached

知道这里可能出了什么问题吗?

【问题讨论】:

    标签: dns kubernetes kube-dns


    【解决方案1】:

    --masquerade-all 标志添加到kube-proxy,为我解决了这个问题。似乎 iptables 没有伪装没有此标志的请求,这会导致 dns 查找失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-26
      • 1970-01-01
      • 1970-01-01
      • 2019-02-06
      • 1970-01-01
      • 2019-10-25
      • 2020-10-03
      • 1970-01-01
      相关资源
      最近更新 更多