无法在 IPv4 上访问 Kubernetes 服务

Kubernetes service not accessible on IPv4

我们目前有以下 Kubernetes 设置(v1.13.1,使用 kubeadm 设置)以及它们之间的连接设置:

我们在 2 个云工作节点上通过 NodePort 访问服务时遇到问题。发生的情况是服务可以通过 IPv6 访问,但不能通过 IPv4 访问:

事实是两者都在裸机节点上工作。如果我使用 netstat -napl | grep 30005,我可以看到 kube-proxy 正在侦听此端口 (tcp6)。我认为这意味着它不监听 tcp,但显然情况并非如此(我在裸机工作节点上有相同的图片):

tcp6       7      0 :::30005                :::*                    LISTEN      24658/kube-proxy

我还了解到服务正在使用 IPv6,但基于裸机工作节点,似乎在那里使用 IPv4 也不会有问题。

知道什么会导致该问题以及如何解决它吗?

谢谢你和最诚挚的问候, 博斯特扬

如果有人偶然发现同样的问题,flannel 网络覆盖的固件上未打开的端口存在问题:

  • 8285 UDP - flannel UDP 后端
  • 8472 UDP - 法兰绒 vxlan 后端