Kubernetes implements CNI(Container Network Interface) to allow third-party networking solutions to integrate with it.
Each CNI solution needs to implement a set of things including, but not limited to:
- creating bridge networks
- attaching containers to them
- assigning IP addresses to containers
- port forwarding
Kubernetes comes with a set of CNI plugins supported by default (
WINDOWS). In addition to this, there are third-party plugins like
Docker Networking does not support CNI standard, so when Docker is used in kubernetes, containers must be created with
--network none option in order to let the CNI plugin manage network for them.