IPv6
When you create an instance in the Arvancloud Cloud Server, it is assigned an IPv4 address by default so that it can communicate with other servers or systems. In addition, all instances can use free IPv6, and you can add one to it during or after creating the instance.
By enabling IPv6 when creating an instance, its network interfaces are automatically configured and you can use it without the need for more manual settings. So, we suggest to use this option for faster setup and to prevent errors in the settings. However, you can enable IPv6 on existing instances in your account by manually configuring them after they are created.
Enabling IPv6 while Creating Instance
You can create a server with the desired settings by following a few simple steps. After selecting the data center, operating system and the size of the instance and its disk, you can add an IP version 6 to your new instance in the "Advanced Settings" step and the "Network" tab.
Note that to activate IPv6, you must also keep the IPv4 address active.
After setting other options and final check, click on "Create new instance" button to create and launch the server.
When the server is created, you can see the IPv6 assigned to the server network in the "Instance List" and in the IP address section or by clicking on instance details. This IP does not need to be configured and is ready to connect.
Enabling IPv6 after Creating Instance
If you already have an instance and you want to add IPv6 to it, you can click on the "Add Internet IP" button from the "Internet IP" section in the cloud server panel and select IPv6.
When you enable IPv6 on a prebuilt instance, you need to configure its network settings manually on the server. This setting disables automatic network configuration and adds information such as Server Name, Gateway Address, and IPv6 Address to the server.
To recieve the Gateway and Subnet address, in the cloud server panel refer to the "Network" section and then "Internet IP".
Connect to the server through instance console or SSH and change the settings based on your OS distribution:
- Ubuntu 20.04 or Higher
- Debian 10 or Higher
- Rocky Linux 8/9, CentOS7 or Higher
Open /etc/netplan/50-cloud-init.yaml
and add the following lines to it:
network:
version: 2
ethernets:
eth0:
dhcp4: true
mtu: 1500
set-name: eth0
eth1:
accept-ra: false
addresses:
- {your_ipv6_and_subnet}
mtu: 1500
nameservers:
addresses:
- 2606:4700::1111
- 2001:4860:4860::8888
routes:
- to: ::/0
via: {gateway_address}
set-name: eth1
Then restart the network service:
sudo netplan apply
Open /etc/network/interfaces.d/50-cloud-init
and add the following lines to it:
network:
version: 2
ethernets:
eth0:
dhcp4: true
mtu: 1500
set-name: eth0
eth1:
accept-ra: false
addresses:
- {your_ipv6_and_subnet}
mtu: 1500
nameservers:
addresses:
- 2606:4700::1111
- 2001:4860:4860::8888
routes:
- to: ::/0
via: {gateway_address}
set-name: eth1
Then restart the network service:
sudo systemctl restart networking
Open /etc/sysconfig/network-scripts/ifcfg-eth1
and add the following lines to it:
BOOTPROTO=none
DEVICE=eth1
IPV6ADDR={your_ipv6_and_subnet}
IPV6INIT=yes
IPV6_DEFAULTGW={gateway_address}
ONBOOT=yes
STARTMODE=auto
Then reboot the server:
sudo reboot
Checking IPv6 Connectivity
note
To use IPv6, both sides of a connection must be able to send and receive IPv6 traffic. Since not all ISPs provide IPv6 addresses, you may not be able to connect to your instance's IPv6 address from your local system.
To check the IPv6 settings and connection, you can ping the Google IP version 6 from your instance:
ping6 2001:4860:4860::8888
If the settings have been applied correctly and IPv6 is working properly, you should get an output similar to the image below:
Disabling IPv6
To disable IPv6, connect to the server via console or SSH and change the settings based on your OS distribution:
- Ubuntu 20.04 or Higher
- Debian 10 or Higher
- Rocky Linux 8/9, CentOS7 or Higher
Open /etc/netplan/50-cloud-init.yaml
and remove the following lines from it:
network:
version: 2
ethernets:
eth0:
dhcp4: true
mtu: 1500
set-name: eth0
eth1:
accept-ra: false
addresses:
- {your_ipv6_and_subnet}
mtu: 1500
nameservers:
addresses:
- 2606:4700::1111
- 2001:4860:4860::8888
routes:
- to: ::/0
via: {gateway_address}
set-name: eth1
Then restart the network service:
sudo netplan apply
Open /etc/netplan/50-cloud-init.yaml
and remove the following lines from it:
auto eth1
iface eth1 inet6 static
address {your_ipv6_and_subnet}
mtu 1500
post-up route add -A inet6 default gw {gateway_address} || true
pre-down route del -A inet6 default gw {gateway_address} || true
Then restart the network service:
sudo systemctl restart networking
Remove etc/sysconfig/network-scripts/ifcfg-eth1/
and reboot the server:
sudo reboot