首页 > kubernetes(k8s) > k8s iptables模式 svc 不支持ping协议 分析
2020
02-21

k8s iptables模式 svc 不支持ping协议 分析

iptables ping svc svcip

查看k8s网络模式

可以看到当前我的网络模式是 iptables

那么当应用程序通过服务连接到另一个应用程序时,将发生以下事件:

问题在于,当请求前往svc服务中定义的端口上的ClusterIP时,才会发生trap。无法将ping流量发送到特定端口,因此永远不会发生trap。

why?

为什么nc 探测是成功的?

为什么开发语言同样可以连接成功?

以php为例

为什么iptables模式下无法ping通svc? 而ipvs模式可以?

我们来查看下iptables模式下kube-proxy的iptables转发规则

查看filter:

iptable默认策略为拒绝任何icmp端口

除非你手动打开让其支持icmp协议才可以ping通

IPVS

而IPVS中的ICMP报文处理-由外到内,默认是支持的,所以可以ping通

详细可以看这里这位大佬分析的很透彻 跳转

最后编辑:
作者:shooter
这个作者貌似有点懒,什么都没有留下。