# CNI (Container Network Interface)

Container Network Interface - networking for Linux containers

Repository: https://github.com/containernetworking/cni
Canonical: https://ross.abutalabs.com/products/cni-container-network-interface
Homepage: https://cni.dev
Language: Go
License: Apache-2.0
License Family: permissive
Topics: docker, networking, containers, kubernetes
Last push: 2026-08-13T00:47:07+00:00
Link (homepage): https://cni.dev
Link (site_page): https://www.cni.dev/docs
Link (site_page): https://www.cni.dev/docs/spec
Link (site_page): https://www.cni.dev/docs/cnitool

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 8, longevity 100
- inputs: {"age_days": 4168, "days_push": 21, "days_rel": 513, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6102, forks 1163 (observed 2026-08-28T04:09:35.061491+00:00)

## What it is
CNI (Container Network Interface) is a CNF project consisting of a specification and Go libraries for writing plugins that configure network interfaces for Linux and Windows containers. It includes a library for integrating CNI into container runtimes, an example cnitool CLI, and a companion repository of reference networking plugins.

## Use cases
- configure networking for containers in a custom container runtime
- write a custom network plugin for kubernetes
- add and remove container network interfaces programmatically
- implement ipam and network policy plugins for containers
- test cni plugin configurations with a command-line tool
- make the network layer pluggable in a container orchestrator

## When to choose
- you are building a container runtime or orchestrator and need a standard pluggable networking interface
- you want to develop a custom container network plugin with a well-defined spec
- you need kubernetes-compatible container networking

## When to avoid
- you need a complete out-of-the-box network solution rather than a plugin framework
- you are not working with containers or container networking
- you need application-level networking features beyond interface configuration and cleanup

## Facets
- artifact type: framework
- maturity: stable
- function: networking, plugin-system, container-runtime, developer-tools
- domain: networking, cloud-computing, infrastructure-as-code
- platform: windows, go, cli
- tags: cni, container-networking, cncf, kubernetes-networking, ipam, network-plugins, specification, containers, devops, linux, kubernetes, docker

## Member repositories
- containernetworking/cni (main) score 66
- containernetworking/plugins (plugin) score 82

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:35.061491+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:48:15.364748+00:00, confidence not recorded.
  - readme: https://github.com/containernetworking/cni (fetched 2026-08-28T04:09:35.061491+00:00, sha 950246ae1d89)
  - homepage: https://cni.dev (fetched 2026-08-29T08:44:52.703819+00:00, sha cb02bdbd4326)
  - site_page: https://www.cni.dev/docs (fetched 2026-08-29T08:44:52.706781+00:00, sha 27b6ebb89046)
  - site_page: https://www.cni.dev/docs/spec (fetched 2026-08-29T08:44:52.709614+00:00, sha 860c12e30398)
  - site_page: https://www.cni.dev/docs/cnitool (fetched 2026-08-29T08:44:52.713525+00:00, sha 8081e216f096)
- Data as of 2026-08-30T08:39:29.467469+00:00.
