Configure CentOS with Multiple IP Addresses
source link: https://www.vultr.com/docs/configure-centos-with-multiple-ip-addresses
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Using a Different System?
- Configure Fedora with Multiple IP Addresses
- Configure Debian with Multiple IP Addresses
- Configure Ubuntu with Multiple IP Addresses
- Configure FreeBSD with Multiple IP Addresses
- Configure OpenBSD with Multiple IP Addresses
- Configure Windows with Multiple IP Addresses via PowerShell
- Configure Windows with Multiple IP Addresses via GUI
- How to Configure a Private Network on CentOS
- How to Configure a Private Network on Fedora
- How to Configure a Private Network on Debian
- How to Configure a Private Network on Fedora CoreOS
- How to Configure a Private Network on FreeBSD
- How to Configure a Private Network on OpenBSD
- How to Configure a Private Network on Ubuntu
- How to Configure a Private Network on Windows Server
- How to Configure a Private Network on VzLinux
- How to Configure a Private Network on AlmaLinux
- How to Configure a Private Network on Rocky Linux
- Configure AlmaLinux with Multiple IP Addresses
- Configure Rocky Linux with Multiple IP Addresses
- Configure VzLinux with Multiple IP Addresses
Introduction
A basic network configuration at Vultr consists of a single IPv4 address, configured by DHCP. If you have advanced networking requirements, Vultr supports multiple public IPs and up to five private networks. You need to manually configure these advanced scenarios. Refer to the networking configuration page in the customer portal for your exact configuration. This example demonstrates three public IPv4 addresses, two private IPv4 networks, and two public IPv6 addresses.
Note: Your network adapter names may not match the examples. See our article How to Find the Network Adapter Names for a Vultr Cloud Server.
IPv4 Info
IPv6 Info
Example for CentOS 8
Public Network
Define three public IPv4 addresses and two public IPv6 addresses on adapter ens3.
Populate/etc/sysconfig/network-scripts/ifcfg-ens3
with:TYPE="Ethernet" DEVICE="ens3" ONBOOT="yes" BOOTPROTO="none" IPADDR=192.0.2.101 PREFIX=23 GATEWAY=192.0.2.1 DNS1=192.0.2.200 IPADDR1=192.0.2.102 PREFIX1=32 IPADDR2=192.0.2.103 PREFIX2=32 IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6ADDR_SECONDARIES="2001:db8:1000::100 2001:db8:1000::200"
Restart the connection or reboot.
# nmcli con load /etc/sysconfig/network-scripts/ifcfg-ens3 # nmcli con up 'System ens3'
Private Network
Define the first private network on adapter ens7.
Populate/etc/sysconfig/network-scripts/ifcfg-ens7
with:TYPE="Ethernet" DEVICE="ens7" ONBOOT="yes" BOOTPROTO="none" IPADDR=10.1.1.100 PREFIX=20 MTU=1450
Restart the connection or reboot.
# nmcli con load /etc/sysconfig/network-scripts/ifcfg-ens7 # nmcli con up 'System ens7'
Define the second private network on adapter ens8.
Populate/etc/sysconfig/network-scripts/ifcfg-ens8
with:TYPE="Ethernet" DEVICE="ens8" ONBOOT="yes" BOOTPROTO="none" IPADDR=10.1.1.200 PREFIX=20 MTU=1450
Restart the connection or reboot.
# nmcli con load /etc/sysconfig/network-scripts/ifcfg-ens8 # nmcli con up 'System ens8'
Example for CentOS 6 and 7
Public Network
Configure the public network with three public IPv4 addresses and two public IPv6 addresses.
Define the first public IPv4 and both public IPv6 addresses on adapter eth0.
Populate/etc/sysconfig/network-scripts/ifcfg-eth0
with:DEVICE=eth0 ONBOOT=yes BOOTPROTO=static IPADDR=192.0.2.101 NETMASK=255.255.254.0 GATEWAY=192.0.2.1 DNS1=192.0.2.200 IPV6INIT=yes IPV6ADDR="2001:db8:1000::100/64" IPV6_AUTOCONF="yes" IPV6ADDR_SECONDARIES="2001:db8:1000::200/64" DNS2=2001:db8:1000::1
Set the default route for eth0.
Populate/etc/sysconfig/network-scripts/route-eth0
with:169.254.0.0/16 dev eth0
Define the second public IPv4 on adapter eth0:1.
Populate/etc/sysconfig/network-scripts/ifcfg-eth0:1
with:DEVICE=eth0:1 BOOTPROTO=static IPADDR=192.0.2.102 NETMASK=255.255.255.255 ONBOOT=yes
Define the third public IPv4 on adapter eth0:2.
Populate/etc/sysconfig/network-scripts/ifcfg-eth0:2
with:DEVICE=eth0:2 BOOTPROTO=static IPADDR=192.0.2.103 NETMASK=255.255.255.255 ONBOOT=yes
Private Network
Define the first private network on adapter eth1.
Populate/etc/sysconfig/network-scripts/ifcfg-eth1
with:DEVICE=eth1 ONBOOT=yes BOOTPROTO=static IPADDR=10.1.1.100 NETMASK=255.255.240.0 MTU=1450
Define the second private network on adapter eth2.
Populate/etc/sysconfig/network-scripts/ifcfg-eth2
with:DEVICE=eth2 ONBOOT=yes BOOTPROTO=static IPADDR=10.1.1.200 NETMASK=255.255.240.0 MTU=1450
Activate Network Changes
Restart networking or reboot to activate the network changes.
# service network restart
Note: If you have IP forwarding enabled (using your server as a VPN or similar), you will also need to add the following lines to /etc/sysctl.conf
file. The default settings for these variables (which is 1), prevents IPv6 from working properly when IP forwarding is enabled. You can check if IP forwarding is enabled by running sysctl net.ipv4.ip_forward
.
net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.eth0.accept_ra=2
Nameservers
Verify that /etc/resolv.conf has your preferred nameservers for IPv4, and optionally IPv6.
domain example.com
nameserver 2001:db8:1000::1
nameserver 192.0.2.200
More Resources
Want to contribute?
You could earn up to $600 by adding new articles
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK