The Role of CGNAT
In Dual Stack Networks

NFWARE BLOG
01/08/2023

Dual Stack is a networking approach that involves running both IPv4 and IPv6 protocols on the same network infrastructure. This allows devices to communicate using either protocol, depending on their capabilities and the availability of network resources.

As the adoption of IPv6 is still not yet widespread, many Internet Service Providers (ISPs) continue to rely heavily on IPv4. As a result, they have implemented Carrier Grade Network Address Translation (CGNAT) to extend the lifetime of their IPv4 address pools and to cope with the increasing number of devices that require an Internet connection.

CGNAT works by allowing multiple customers to share a single public IPv4 address. This is achieved by assigning private IPv4 addresses to devices within the customer's network, and then mapping these addresses to the shared public IPv4 address when traffic is sent to and from the Internet.

Why Do We Need Dual Stack Networks?

Dual Stack networks are necessary because the adoption of IPv6 is not yet widespread: According to Google's statistics, as of July 2023, around 43% of websites support IPv6. This low adoption rate makes it difficult for devices to communicate using IPv6, as a result we are still heavily rely on IPv4.

With Dual Stack, by running both IPv4 and IPv6 protocols on the same network infrastructure, devices can communicate using either protocol, depending on their capabilities and the availability of network resources. This allows for a smoother transition to IPv6 while still maintaining compatibility with existing IPv4 infrastructure.

Who Decides Whether it is IPv4 or IPv6?

Now, let's explore how devices connect to their destination and how the appropriate protocol, IPv4 or IPv6, is chosen depending on the availability of network resources and the capabilities of the destination device.

When a device connects to the network, it sends out a request for an IP address. If the device is capable of using both IPv4 and IPv6, it will receive both types of addresses from the network. The device will then use the appropriate protocol depending on the availability of network resources and the capabilities of the destination device.

When a user device requests a DNS resolution for a domain name, the DNS server will respond with both an IPv4 (DNS A) and an IPv6 (DNS AAAA) address if the domain name has both address records. The user device will then choose which protocol to use based on the configuration of the device and the availability of network resources. If the device is dual stack capable, it may choose to use IPv6 if both options are available.

If the destination device does not support IPv6, the user device will default to using IPv4. This is because the user device will not be able to establish a connection using IPv6 if the destination device does not support it. In this case, the device will only use the IPv4 address that was provided in the DNS response.

What's The Role Of CGNAT In Dual Stack Networks?

In a dual stack network, communication between IPv6 devices can occur directly using the IPv6 protocol. However, communication between IPv4 devices may require the use of Carrier Grade Network Address Translation (CGNAT).

This is because many ISPs rely heavily on IPv4 and use CGNAT to extend the lifetime of their IPv4 address pools. CGNAT allows multiple customers to share a single public IPv4 address, and assigns private IPv4 addresses to devices within the customer's network. When traffic is sent to and from the Internet, the private IPv4 addresses are mapped to the shared public IPv4 address.

Deploying CGNAT

There are two ways to deploy CGNAT: as a "one-armed" configuration, also known as "CGNAT on a stick," or as a "routed" configuration.

In the "one-armed" configuration, all traffic will pass through the CGNAT device, including both IPv4 and IPv6 traffic. In contrast, in the "routed" configuration, only IPv4 traffic will pass through the CGNAT device, and IPv6 traffic will bypass it.

When deploying CGNAT in a Dual Stack network, it is important to consider which configuration is best suited to your network's needs and to ensure that your CGNAT solution supports both IPv4 and IPv6 protocols.

The "routed" configuration is generally considered to be the more preferable and cost-effective option for CGNAT deployment in a Dual Stack network. This is because it allows IPv6 traffic to bypass the CGNAT device, reducing the processing load on the device and improving network performance for IPv6 traffic. However, it is important to note that this configuration may not be suitable for all networks, and the "one-armed" configuration may be necessary in some cases.

How Can NFWare help?

NFWare vCGNAT is a software-based Carrier Grade Network Address Translation (CGNAT) solution designed to help ISPs cope with the limited availability of IPv4 addresses. By using NFWare vCGNAT, ISPs can extend the lifetime of their IPv4 address pools and share a single public IPv4 address among multiple customers. This allows ISPs to accommodate the increasing number of devices that require an Internet connection while also ensuring a high level of security and scalability. Additionally, NFWare vCGNAT provides support for both IPv4 and IPv6 protocols, making it an ideal solution for Dual Stack networks.

If you're interested in learning more about how NFWare vCGNAT can help your organization navigate the challenges of IPv4 address exhaustion, contact us today to schedule a consultation with one of our experts.

Are you looking for a CGNAT solution?
We can help! NFWare Virtual CGNAT is an acclaimed solution that enables over 100 ISPs to effectively address the IPv4 shortage issue. Kindly provide your email address, and we will get in touch with you to provide further information!
Learn more about NFWare Virtual CGNAT
Our industry-leading high-performance solution for ISPs that efficiently solves the IPv4 exhaustion problem
Related Content
    Feel free to share:
    The Role of CGNAT in Dual Stack Networks
    Need assistance in understanding the nuances of the CGNAT solution?