Configuring IPv6 on dedicated servers
Objective
Internet Protocol version 6 (IPv6) is the latest version of the Internet Protocol (IP). It is designed to address the long-anticipated address exhaustion of its predecessor, IPv4, by using 128-bit addresses instead of 32-bit addresses. Most OVHcloud dedicated servers are delivered with a /64 IPv6 block, with the exception of High Grade and Scale servers, which are delivered with a /56 IPv6 block. This represents over 18 quintillion IP addresses that you can use at your convenience.
This guide explains how to configure IPv6 addresses on your server using various examples.
This article is about primary IP configuration. For servers that support vRack connectivity, you can also configure Additional IP addresses in a vRack rather than on the public interface of your server. You can find the matching instructions in these guides:
OVHcloud is providing you with services for which you are responsible, with regard to their configuration and management. You are therefore responsible for ensuring they function correctly.
This guide is designed to assist you in common tasks as much as possible. Nevertheless, we recommend that you contact a specialist service provider and/or discuss the issue with our community if you face difficulties or doubts concerning the administration, usage or implementation of services on a server.
Requirements
- A dedicated server in your OVHcloud account
- All your IPv6 information (prefix, gateway etc.)
- Basic knowledge of SSH and networking
Please note that Kimsufi servers are only provided with a single IPv6 block (/128). IPv6 will be configured automatically when installing the OS.
Instructions
The following sections contain configurations for the distributions we currently offer and the most commonly used distributions/operating systems. The first step is always to log in to your server via SSH or a GUI login session (RDP for a Windows server).
On dedicated servers, the first IPv6 is declared as 2607:5300:xxxx:xxxx::. For example, if we've assigned your server the IPv6 range: 2607:5300:abcd:efgh::/64, your server's first IPv6 is: 2607:5300:abcd:efgh::.
By default, the first IPv6 is configured on most of the recent Linux distributions we offer for installation, so the gateway is already included in the configuration file. In most cases, you won't need to add it again manually.
Note the following terminology used in the code examples and instructions below:
| Term | Description | Example |
|---|---|---|
| YOUR_IPV6 | An IPv6 address from the IPv6 block assigned to your server | 2607:5300:xxxx:xxxx::1 |
| IPv6_PREFIX | The prefix (or netmask) of your IPv6 block, usually 64 | 2607:5300:xxxx:xxxx::/64 |
| IPv6_GATEWAY | The gateway of your IPv6 block | 2607:5300:xxxx:ff:ff:ff:ff:ff or fe80::1 |
In our examples, we'll use the nano text editor. Feel free to use the text editor of your choice.
Default Gateway
The first step is to identify the IPv6 block and gateway assigned to your server.
Log in to the OVHcloud Control Panel, go to the Bare Metal Cloud section and select your server from Dedicated servers.
The IPv6 block and gateway assigned to your server will appear in the Network section of the General Information tab. Once you have copied them, continue with applying the IPv6 configuration.

Another way to retrieve the networking information for your server is to use the OVHcloud API.
Execute the following API call, indicating the internal server name (example: ns3956771.ip-169-254-10.eu):
The leading "0s" can be removed in an IPv6 gateway. For example, the IPv6 gateway 2607:5300:60:62ff:00ff:00ff:00ff:00ff can also be written as 2607:5300:60:62ff:ff:ff:ff:ff.
Before modifying a configuration file, always create a backup of the original.
With some operating systems, the addition of static IPv6 routes in the original configuration file is necessary and is done by default. If that is the case, add your IPv6 configuration as instructed, do not modify any lines in the original file.
The configuration example below is based on Debian 11 (Bullseye).
Before following the steps below, we strongly suggest that you disable IPv6 autoconf and router advertising to prevent known issues. You can do so by adding the following lines to your sysctl.conf file, which is located in /etc/sysctl.conf:
net.ipv6.conf.all.autoconf=0
net.ipv6.conf.all.accept_ra=0
Once this has been done, you can apply those rules by executing the following command: sudo sysctl -p.
Step 1: Connect to your server via SSH
Step 2: Create a backup
Your server's network configuration file is located in /etc/network/interfaces.d. In our example, it is called 50-cloud-init. Before proceeding, create a backup of your file using the following command:
Step 3: Amend the network configuration file
Do not modify the existing lines in the configuration file. Add the lines for your IPv6 configuration, replacing YOUR_IPv6 and IPv6_PREFIX with your own values. In this example, the network interface is called eth0. The interface on your server may differ.
Debian 10
Additional IPv6 addresses can be added with the following lines in the configuration file: up ip -6 addr add ADDITIONAL_IPV6_1/IPv6_PREFIX dev eth0, up ip -6 addr add ADDITIONAL_IPV6_2/IPv6_PREFIX dev eth0 etc...
To ensure that the IPv6 is enabled or disabled whenever the eth0 interface is enabled or disabled, you need to add the following line to the configuration:
down ip -6 addr del ADDITIONAL_IPV6_1/IPv6_PREFIX dev eth0
down ip -6 addr del ADDITIONAL_IPV6_2/IPv6_PREFIX dev eth0
Configuration example
- Adding additional IPv6 addresses:
Step 4: Save the file and apply the changes
Save your changes to the file and then restart the network or reboot your server to apply the changes.
The configuration example below is based on Fedora 42.
Fedora now uses keyfiles. NetworkManager previously stored network profiles in ifcfg format in this directory: /etc/sysconfig/network-scripts/. However, the ifcfg format is now deprecated. By default, NetworkManager no longer creates new profiles in this format. The configuration file is now found in /etc/NetworkManager/system-connections/.
In this example, our file is called cloud-init-eno1.nmconnection.
Step 1: Use SSH to connect to your server
Step 2: Create a backup
Note that the name of the network file in our example may differ from your own. Please adjust to your appropriate name.
First, make a copy of the configuration file, so that you can revert at any time:
Step 3: Amend the network configuration file
Amend the file by adding the necessary lines to it, do not modify anything in the original file. Replace the generic elements (i.e. YOUR_IPV6 and IPv6_PREFIX) with your specific values. Also, we have omitted the IPv4 configuration to avoid confusion, but the IPv6 configuration is made in the same configuration file.
If you need to configure more IPv6 addresses, your configuration should look like this:
Configuration example
- For multiple IPv6 addresses:
Step 4: Save the file and apply the changes
Save your changes to the file and then restart the network or reboot your server to apply the changes.
The configuration example below is based on Ubuntu 22.04 (Jammy Jellyfish).
The network configuration files are located in the directory /etc/netplan/. By default, the main configuration file is called 50-cloud-init.yaml.
Step 1: Use SSH to connect to your server
Step 2: Create the network configuration file
The best approach is to create a separate configuration file with a .yaml extension for configuring IPv6 addresses in the /etc/netplan/ directory. This way, you can easily revert the changes in the event of an error.
In our example, our file is named 51-cloud-init-ipv6.yaml:
Step 3: Amend the network configuration file
Using a text editor, amend the 51-cloud-init-ipv6.yaml file by adding the following lines to the file as shown in the example below.
Replace the generic elements (i.e. YOUR_IPV6 and IPV6_PREFIX) as well as the network interface (if your server is not using eno3) with your specific values.
If you need to configure more IPv6 addresses, your configuration should look like this:
It is important to respect the alignment of each element in this file as represented in the example above. Do not use the tab key to create your spacing. Only the space key is needed.
Configuration example
- For multiple IPv6 addresses:
Step 4: Test and apply the configuration
You can test your configuration using this command:
If it is correct, apply it using the following command:
The configuration example below is based on AlmaLinux 9.
The network configuration file is located in the directory /etc/sysconfig/network-scripts. In our example, it is called ifcfg-eth0.
Step 1: Use SSH to connect to your server
Step 2: Create a backup
Note that the name of the network file in our example may differ from your own. Please adjust to your appropriate name.
First, make a copy of the configuration file, so that you can revert at any time:
Step 3: Amend the network configuration file
In the open configuration file, add the following lines if they are missing. Replace the generic element (i.e. YOUR_IPv6, IPV6_GATEWAY and IPV6_PREFIX) with your specific values. Also, we have omitted the IPv4 configuration to avoid confusion, but the IPv6 configuration is made in the same configuration file.
The contents of the configuration file may differ from that shown above, in which case simply add the missing items. Do not replace anything in the original file.
If you need to configure multiple IPv6 addresses, add the following line:
Configuration example
Next, we amend the configuration file:
- For multiple IPv6 addresses:
Step 4: Save the file and apply the changes
Save your changes to the file and then restart the network with one of the following commands:
For CentOS 7
You can also reboot your server to apply the changes.
Step 1: Use RDP to connect to your server
Find more information in this guide.
Step 2: Open your server's network configuration
First, right-click on the network icon in the notification area to go to the Network and Sharing Center.

Click Change adapter settings.

Right-click your network adapter, then click Properties.

Select Internet Protocol Version 6, then click Properties.

Step 3: Amend the network configuration
Enter your IPv6 configuration (IPv6 address and Default Gateway), check the Validate settings upon exit box and click the OK button to validate your changes.

Verify the configuration and test the connection
To verify that the configuration is functional, there are several possible commands, depending on the operating system.
- For a GNU/Linux-based system, here are two examples for the eth0 interface (to be adapted if necessary):
To test the connection, you can use the following command:
- For a Windows-based system, use the following command:
To test the connection, you can use the following command:
You can also test the connection to another remote server. However, IPv6 must be active on the remote server for this operation to work.
Diagnostic
Have you configured your IPv6, but found that nothing works?
There is a simple operation to determine whether the error is in your configuration, or on the OVHcloud network.
First, put your server into rescue mode.
Next, use the template commands below to configure your IPv6 non-persistently, replacing YOUR_IPV6, IPV6_PREFIX and IPV6_GATEWAY with your own details:
Test your network again via a ping6, for example:
If your server responds, there is likely an error in one of the initial configuration steps.
In any case, feel free to contact our support team and ask to review your configurations. You will need to provide:
- The operating system name and version you are using on your server.
- The name and directory of the network configuration file.
- The content of that file.
Go further
Join our community of users.