Article overview

Help article

Adding an ipv4 or ipv6 address to CentOS 8

When you order an extra IPv4 address or add an extra IPv6 address to your IP addresses via the TransIP control panel, these cannot be automatically added to your VPS via DHCP. Additional IP addresses are added manually to the network interfaces.

In this article, we explain how you can statically add an extra IPv4 or IPv6 address to your CentOS 8 VPS. For this, an extra IPv4 and/or IPv6 address is required (depending on which you'd like to add / configure). Don't have an extra address yet? The following articles explain how you can get one:

Click here for a complete overview of all our tutorials for adding an extra or static IPv4 or IPv6 address to various Linux distros. For adding an IPv4 or IPv6 address to a Windows VPS, see this article.

  • This manual is about public IP addresses. In this manual, you will find more information about setting up internal addresses (for your private network).
     
  • Please note: in the steps in this article the adapter is called ens3. In your installation this may be eth0. Make sure to check this using the ip a command and if necessary change ens3 to eth0 where applicable.
  • A VPS includes 1 IPv4 address by default, but you can expand this to a maximum of 10 IPv4 addresses via the control panel. A maximum limit of 20 IPv4 addresses applies to the VPSs of the PRO series.

  • Each VPS has a /64 IPv6 range at its disposal by default, where IP addresses can be added as desired. A /64 IPv6 range contains a total of 18,446,744,073,709,551,616 IP addresses, so the likeliness that you will not have enough is quite small! The default gateway falls outside of the /64 range so as netmask you always use a /48 range.


Adding an IPv4 address in CentOS 8

 

Step 1 

Connect to the VPS via the VPS console or via SSH.


 

Step 2 

Once logged in you see the current network interfaces and the configured IPs by using the command:

ip a

For the next steps, it is especially important that you are aware of the correct adapter name. Which is ens3 in this example.    

ip a centos 8


 

Step 3 

Please note: Did you use our fast installs feature for VPS and chose for installation via SSH-keys, one time password, or cloud-config user data? Then, additional steps are required. Click 'Fast installs proces' below to view these steps.

Fast installs proces

For Fast Installs we make use of Cloud Init. Cloud Init automatically overwrites your netwerk configuration. For this reason Cloud Init or its control over the network (either choice is fine) must be disabled as follows:

 

Disabling Cloud Init network management

Open/create the following file:

nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg

Give the file the following contents. Afterwards, save and close your file  (ctrl + x > y > enter).

network:
   config: disabled
You may now proceed with the rest of step 3 from this point.

 

Disabling Cloud Init

Cloud Init is only used for the initial installation of your VPS. It can't hurt as such to disable it altogether. All that's required to disable Cloud Init is the creation of the following file:

touch /etc/cloud/cloud-init.disabled
You may now proceed with the rest of step 3 from this point.

Should the changes not take affect after completing this tutorial, the following command may be required:

dpkg-reconfigure cloud-init

Now add the extra IPv4 address in the network interfaces. First, open the network configuration file:

sudo nano /etc/sysconfig/network-scripts/ifcfg-ens3

Add/adjust the following to the existing configuration file:

BOOTPROTO=none
IPV4_FAILURE_FATAL=no
PROXY_METHOD=none
DEFROUTE=yes
IPADDR=141.138.139.231
IPADDR1=141.138.139.28
NETMASK=255.255.255.0
NETMASK1=255.255.255.0
PREFIX=24
PREFIX1=24
GATEWAY=141.138.139.1
GATEWAY1=141.138.139.1
  • IPADDR(x) is the IP address that you want to set and GATEWAY(x) the gateway, which for your IP address can be found in the control panel
  • For every IP address that you add, you use an ascending number, i.e. IPADDR1, IPADDR2, IPADDR3, etc. The same applies to gateways if applicable. You need to leave the (sub)NETMASK at 255.255.255.0. 
  • You are not required to add a gateway if the IP is part of the same /24 range. If it isn't, you are required to set the gaeway.

Save the changes and exit nano (ctrl + x > y > enter).  


 

Step 4 

Reset your network interfaces with the following command to use the new IP address:

nmcli networking off
nmcli networking on

NMCLI is the command-line tool for NetworkManager. A restart via systemctl restart NetworkManager won't work unfortunately. If ens3 is active the following commands may work instead:

ifdown ens3
ifup ens3

 

Step 5 

If you run ip a again you will see the newly added IPv4 address. You can test this IP address by performing a ping test from another computer / IP. 

ipa centos8 extra ipv4

Repeat the above steps if you want to add more IP addresses.


Adding an IPv6 address in CentOS 8

 

Step 1 

Connect to the VPS via the VPS console or via SSH.


 

Step 2 

Once logged in you see the current network interfaces and the configured IPs by using the command:

ip a

For the next steps, it is especially important that you are aware of the correct adapter name. Which is ens3 in this example.  

ipa centos8


 

Step 3 

Please note: Did you use our fast installs feature for VPS and chose for installation via SSH-keys, one time password, or cloud-config user data? Then, additional steps are required. Click 'Fast installs proces' below to view these steps.

Fast installs proces

For Fast Installs we make use of Cloud Init. Cloud Init automatically overwrites your netwerk configuration. For this reason Cloud Init or its control over the network (either choice is fine) must be disabled as follows:

 

Disabling Cloud Init network management

Open/create the following file:

nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg

Give the file the following contents. Afterwards, save and close your file  (ctrl + x > y > enter).

network:
   config: disabled
You may now proceed with the rest of step 3 from this point.

 

Disabling Cloud Init

Cloud Init is only used for the initial installation of your VPS. It can't hurt as such to disable it altogether. All that's required to disable Cloud Init is the creation of the following file:

touch /etc/cloud/cloud-init.disabled
You may now proceed with the rest of step 3 from this point.

Should the changes not take affect after completing this tutorial, the following command may be required:

dpkg-reconfigure cloud-init

Now add the extra IPv6 address in the network interfaces. First, open the network configuration file:

sudo nano /etc/sysconfig/network-scripts/ifcfg-ens3

In the opened configuration file, add the following lines if they are missing (replacing the IPv6 address by your server's primary IPv6 address): 

IPV6INIT=yes
IPV6_AUTOCONF=no
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6ADDR=2a01:7c8:aaaa:402::1
IPV6_DEFAULTGW=2a01:7c8:aaaa:1

Save the changes and exit nano (ctrl + x > y > enter). If you want to add more IPv6 addresses, add the following line (placing all additional addresses between the brackets):

IPV6ADDR_SECONDARIES="2a01:7c8:aaaa:402::2 2a01:7c8:aaaa:402::2"

 

Step 4 

Restart your server to se the IPv6 addresses. Restarting your network with nmcli or systemctl doesn't process the changes.

sudo reboot

 

Step 5

If you run ifconfig -a or ip addr again you will see the newly added IPv6 address. You can test this IP address by performing a ping test from another computer / IP. 

ipa centos8 extra ipv4 and ipv6 address

Repeat the above steps if you want to add more IP addresses. 


 

Should you have any questions left regarding this article, do not hesitate to contact our support department. You can reach them via the ‘Contact Us’ button at the bottom of this page.

If you want to discuss this article with other users, please leave a message under 'Comments'.

Has this article been helpful?

Create an account or log in to leave a rating.

Comments

Create an account or log in to be able to leave a comment.