kubernetes pods回复了DNS查询的意外来源

时间:2017-01-10 17:32:25

标签: dns kubernetes kube-dns

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

我用--service-cluster-ip-range=10.32.0.0/24启动了apiserver。据我所知,pods地址由flannel管理,service-cluster-ip-range由iptables管理。我运行kubedns并尝试从kubernetes worker节点执行挖掘以进行我正在运行的部署。

$ 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

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

1 个答案:

答案 0 :(得分:1)

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