Why iptables Shows No Rules After Switching Kubernetes to Cilium
When Kubernetes clusters migrate from kube-proxy to Cilium with kube-proxy replacement mode enabled, the familiar iptables KUBE-SERVICES chain disappears entirely from nodes. This happens because Cilium, a CNI plugin, takes over Service forwarding duties that kube-proxy previously handled by writing rules into the Linux kernel's netfilter/iptables framework. Instead of iptables, Cilium stores and enforces Service forwarding rules using eBPF programs loaded directly into the kernel, which standard iptables commands cannot read. As a result, tools like iptables-save, tcpdump on a ClusterIP, and conntrack return empty or misleading output even when Services are fully functional. Operators troubleshooting connectivity in Cilium-managed clusters must switch to Cilium-specific inspection tools rather than relying on traditional iptables-based diagnostics.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.


Discussion (0)
Log in to join the discussion and vote.
Log in