Skip to content
ArticlesKubernetes

A ClusterIP cannot be pinged

Why a failed ping proves nothing about whether your Service works.

2 min read
Share

A ClusterIP is not assigned to any network interface. Nothing owns it, so nothing answers ICMP.

What actually exists is a set of iptables or IPVS rules on every node that rewrite the destination address — but only for the ports the Service declares.

Bash
ping 10.96.0.42          # always fails, means nothing
curl 10.96.0.42:80       # this is the real test

If you need to know whether a Service is wired up, check its endpoints instead:

Bash
kubectl get endpointslices -l kubernetes.io/service-name=payments

An empty list means the selector matches nothing, or the pods are failing readiness. That is the actual answer, and ping was never going to give it to you.

One useful email a month

Design system patterns, front-end techniques and notes from the learn platform. No promotions, no digest of other people’s links.

Unsubscribe anytime. We never share your address.