How to configure IPv6 on Linux
There are two versions of IP addresses: IPv4 and IPv6. IPv4 was created in 1983. It uses a 32-bit address space. It provides 4,294,967,296 (232) unique IP addresses. These IP addresses were sufficient to meet the requirements of that time. In modern times, where computers, laptops, servers, smartphones, tablets, lightbulbs, plugs, security cameras, and all other IoT devices require an IP address, these IP addresses are inadequate to provide a unique IP address for each device. To meet the requirements of modern networks, IPv6 was created in 1998. It uses a 128-bit address space. It provides 2128 (3.4 x 1038 addresses) IP addresses that are sufficient to provide a unique IP address for all devices of modern networks. This tutorial explains how to configure and manage IPv6 addresses on Linux.
The NetworkManager service manages network configurations. It is part of the NetworkManager utility. The NetworkManager utility offers three tools to manage interfaces and their configurations. These tools are the nmcli, nmtui, and nm-connection-editor. The nmcli is a command line utility. The nmtui is a curses-based utility. The nm-connection editor is a graphical tool. You can use anyone you prefer to configure and manage the IP configuration on interfaces. Along with these tools, you need one more tool called the ip tool to view and troubleshoot the configuration.
Managing IPv6 address with the nmcli
NetworkManager allows us to create multiple connections for an interface. A connection is a collection of all the settings the interface needs to connect with the network. You can create separate connections for both IPv4 and IPv6 networks.
The following command lists all connections.
#nmcli connection show
The following command adds a new IPv6 connection.

To apply the new connection, you need to restart the connection. The following command restarts the connection.
#nmcli connection down [connection-name] #nmcli connection up [connection-name]

Use the ip address show command to verify the new connection.

Managing IPv6 with the nmtui utility
The following command starts the nmtui utility.

Select the Edit a connection option on the first screen.

The next screen lists all connections on the left and management options on the right pane. Select the New option from the right pane to create a new connection. Select the connection from the left pane to edit an existing connection and use the Edit option from the right pane.

The next screen displays all connection-related options. If you select the New option on the previous screen, all settings will be empty on this screen. But if you choose the Edit option, you will see all configured values on this screen.

Configure or update the IPv6 address, select OK, and press Enter.

Use the Back button to return to the main screen.

Select the Activate a Connection option.

Select the connection you created or updated from the left pane and deactivate it from the right pane.

Activate it again. It will restart the connection.

Use the Back button to return to the main screen.

Quit the nmtui utility.

Use the ip addr show command to view the new or updated IPv6 configuration. By default, it lists the configuration of all interfaces. To view the configuration of a single interface, specify the interface name as an argument.

Managing IPv6 with the nm-connection-editor tool
The following command starts the nm-connection-editor.

The first screen lists all interfaces and their connections. At the bottom bar, there are three options: Add, Remove, and Edit.
The Add option adds a new connection. The Remove option removes the selected connection. The Edit option edits the selected connection.

If you click the Add or Edit options, the following screen allows you to configure/update connection settings.

Add or update the IPv6 configuration and close the nm-connection-editor.

The nm-connection-editor has no option to restart the connection. Use the nmcli command or nmtui utility to restart the connection. After that, use the ip addr command again to verify the new IPv6 configuration.

This tutorial is part of the tutorial series Managing Basic Networking (RHCSA / RHCE) Study Guide. Other parts of this series are the following.
Chapter 01 Managing Basic Networking RHCSA Exam
Chapter 02 Predictable Consistent Network Device Naming
Chapter 03 Linux ip Address Command Usages and Examples
Chapter 04 Linux ip Command Cheat Sheet
Chapter 05 The ip Command v/s the ifconfig Command
Chapter 06 Understanding Linux Network Manager Fundamental
Chapter 07 Managing Linux NetworkManager
Chapter 08 Linux NetworkManager Tools and Utilities
Chapter 09 The nmcli Command on Linux Examples and Usages
Chapter 10 The nmtui Command and Utility on Linux
Chapter 11 The nm-connection-editor Command on Linux
Chapter 12 How to Configure IP Address in Linux
Chapter 13 How to Configure Multiple IP Addresses on Linux
Chapter 14 How to Configure IPv6 on Linux
Chapter 15 Basic Linux Commands for Network Testing
Chapter 16 Network Configuration Files in Linux Explained
Chapter 17 The /etc/hosts, /etc/resolv.conf, and /etc/nsswitch.conf Files
Chapter 18 How to Change the Hostname on Linux
Key points:-
- NetworkManager manages network interfaces and their connections.
- NetworkManager includes three tools to manage connections: nmcli, nmtui, and nm-connection-editor.
- All three tools support both IP versions.
- You can use the ip tool to verify and troubleshoot the IP configuration.
Author Laxmi Goswami Updated on 2025-11-20