2017-01-10 7 views
0

私はkubernetes + flannel setupを持っています。フランネル設定は{"Network": "10.200.0.0/16", "SubnetLen":24, "Backend": {"Type": "vxlan"}}です。DNSクエリーの予期せぬソースに応答するkubernetesポッド

私は--service-cluster-ip-range=10.32.0.0/24でapiserverを開始しました。わかるように、ポッドアドレスはflannelで管理され、service-cluster-ip-rangeはiptablesによって管理されます。私はkubednsを実行し、実行している展開のためにkubernetesワーカーノードからdigを実行しようとしました。私はポッドで実行されているコンテナのいずれかから同じコマンドを実行したときに

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

はしかし、私が得る:ここで間違っているかもしれないもの

$ 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

--masquerade-allをkube-proxyに追加すると、これが解決されます。 iptablesは、このフラグがなくてもDNS検索を失敗させるリクエストを装っていないようです。

関連する問題