Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?


Overview: IPv4 and IPv6 Dual-Stack Networking

SUMMARY Cloud-Native Contrail® Networking supports dual-stack networking for your Kubernetes cluster. When you bring up a Kubernetes cluster, dual stack is enabled by default. The Cloud-Native Contrail Networking deployer then creates dual-stack (IPv4, IPv6) pod networks and service networks.

IPv4 and IPv6 Overview

The ever-increasing scale and complexity of small, medium, and enterprise networks means that the demand for IP addresses is greater than ever before. As a result of the increasing demand for IP addresses, the number of IPv4 addresses that service providers allocate is scarce. In addition, service providers must serve current IPv4 customers and new IPv6 customers simultaneously. Since IPv4 comprises the majority of current network infrastructure, most of these IPv6 networks attempt to communicate with IPv4 destinations.

The scarcity of IPv4 addresses is not new, and modern solutions like dual-stack virtual networking facilitate the transition between IPv4 and IPv6 efficiently. A dual-stack device has network interfaces that send and receive both IPv4 and IPv6 packets. In the case of virtual networking, the dual-stack feature of your Kubernetes cluster assigns both IPv4 addresses and IPv6 addresses to pods.

Dual-Stack Networking Prerequisites

Dual-stack networking requires the following:

  • Kubernetes version 1.20 or later

  • Provider support for dual-stack networking

    Your provider must be able to provide Kubernetes nodes with routable IPv4 and IPv6 networking interfaces.

  • A network plug-in that supports dual stack (provided with Cloud-Native Contrail Networking)

Enable Dual-Stack Networking

The following Kubernetes distributions support dual-stack networking:

  • Kubeadm
  • Kubespray

You must set up a Kubeadm or Kubespray Kubernetes cluster with dual-stack featureGate enabled.

Consider the following YAML file. Note that the dual-stack featureGate flag is IPv6DualStack: true and that the IPv6 Classless Inter-Domain Routing (CIDR) subnet is present as podSubnet and serviceSubnet.

Cloud-Native Contrail Networking deployer uses the IPv6 CIDR to create an IPv6 subnet for the podNetwork. Subsequent pod networks that you create contain an IPv6 subnet. As a result, pods receive IPv4 and IPv6 addresses.

Cloud-Native Contrail Networking does not currently support IPv6 for services. The service network is IPv4 only.