Skip to content
SPECIFICTION
Get listed

Flannel vs kube-network-policies

Flannel

github.com

kube-network-policies

kube-network-policies.sigs.k8s.io

Side by side

FigureFlannelkube-network-policies
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYes—
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · Container Networking Software7.8 (#10)8.1 (#4)
IntegrationsThe project lists kube-network-policies, Canal, K3s, and RKE2 as projects that integrate with Flannel.ANP and BANP support integrates with the Kubernetes Network Policy API custom resource definitions.
PurposeFlannel provides a layer 3 network fabric for containers designed for Kubernetes.A userspace implementation that enforces Kubernetes network policies by intercepting packets with Linux NFQUEUE.
Security reportingThe security policy directs vulnerability reports to GitHub private vulnerability reporting and says maintainers acknowledge reports within seven days.The project directs users to the Kubernetes Security and Disclosure Information page to report vulnerabilities.
SupportThe project points users to the #k3s channel in Rancher Users Slack, the #flannel-users channel in Calico Users Slack, and GitHub issues for bugs.The repository README lists the Kubernetes Slack #sig-network channel and the sig-network mailing list for maintainers and community support.

Plans

Flannel

  • FlannelFree

Flannel pricing →

kube-network-policies

  • Open-source projectFree

kube-network-policies pricing →

In their own words

Flannel

Flannel is a free network fabric for containers designed for Kubernetes. A small flanneld agent on each host allocates a subnet lease from a configured address space, then forwards packets between hosts using a selected backend. Documented choices include VXLAN, host-gw, WireGuard and UDP, with VXLAN recommended. WireGuard encapsulates and encrypts packets using the in-kernel WireGuard implementation. Network configuration and subnet allocations can be stored in the Kubernetes API or directly in etcd. The project documents Kubernetes and Docker deployments, with Linux and Windows build instructions. Flannel does not enforce network policies itself, though its Helm chart can deploy a Kubernetes SIGs network policy controller alongside it. It runs as a privileged daemonset with access to the host network, so the security policy advises least privilege and keeping it updated. Security fixes are maintained for the latest release only, and the backend documentation says not to change a selected backend at runtime.

Visit github.com

kube-network-policies

kube-network-policies is a free, open-source userspace implementation of Kubernetes network policies for Linux. It uses Linux NFQUEUE and nftables to capture and evaluate network traffic in userspace. The project supports standard Kubernetes NetworkPolicy, AdminNetworkPolicy (ANP) and BaselineAdminNetworkPolicy (BANP). It can identify packets from pods targeted by active policies and capture those selectively; enabling ANP or BANP disables that optimization and diverts all node traffic to userspace for evaluation. Its documented evaluation pipeline checks logging, Admin Network Policy, standard NetworkPolicy, Baseline Admin Network Policy, then allows traffic by default. ANP and CNP can match external domain names using an in-memory cache of DNS A and AAAA answers. Structured JSON logs aid troubleshooting, and the PolicyEvaluator plugin pipeline can take custom validation logic. Installation instructions cover raw Kubernetes manifests and Helm. The local development setup uses KIND and lists Docker, KIND and kubectl as prerequisites. ANP or BANP also require experimental Network Policy API CRDs before deployment. The project lists an Apache-2.0 license and directs users to the Kubernetes #sig-network Slack channel and mailing list for maintainers.

Visit kube-network-policies.sigs.k8s.io