Guides - Manually Configuring a VLAN on a Linode
Linode’s VLANs (Virtual Local Area Networks) feature allows you to create private L2 networks in the cloud where Linodes can communicate privately and securely. Two or more Linodes connected via the VLAN can see each other as if they were directly connected to the same physical Ethernet network.
When a VLAN is assigned to a network interface and given an IPAM address, the Linode should automatically be able to communicate over that private network. This is due to Network Helper, which is enabled by default on most Linodes. For compatible distributions, Network Helper adjusts the internal network configuration files on a Linode. Any network interfaces defined in the Linode’s selected Configuration Profile (including those with VLANs attached) will automatically be configured.
This guide is for users that have disabled Network Helper on their Linode or prefer not to assign an IPAM address within a Linode’s Configuration Profile. In these cases, the Linode’s internal network configuration files must be manually adjusted. The following sections will cover the changes needed to manually configure a VLAN on common Linux distributions.
Ubuntu 18.04 and Later
Ubuntu Server 18.04 and later versions use Netplan to configure networking, with systemd-networkd operating as the backend. Network configuration files for each interface are located in /etc/systemd/network/
:
- eth0:
/etc/systemd/network/05-eth0.network
- eth1:
/etc/systemd/network/05-eth1.network
- eth2:
/etc/systemd/network/05-eth2.network
Manually Configuring a VLAN in Ubuntu 18.04
Verify that Network Helper is disabled to avoid it overwriting any changes on the next reboot. See Network Helper Settings for information on adjusting Network Helper settings.
Log in to the Linode via Lish. While it’s possible to make changes while logged in over SSH, you may get disconnected if changes are made to the network interface assigned to the public internet.
Using your preferred editor, edit the configuration file corresponding to the network interface assigned to the VLAN. Replace the contents with the following text. Adjust
Name
to match the correct network interface andAddress
to match your desired IPAM address:[Match] Name=eth1 [Network] DHCP=no Address=10.0.0.1/24
Restart the Linode or run
sudo netplan apply
for the updated network configuration to take effect.
Debian and Ubuntu 16.04
Debian 7 and above, as well as Ubuntu 16.04, all use ifup and ifdown to manage networking. Network configuration files are located within /etc/network/
:
- Main configuration file:
/etc/network/interfaces
- Alternative configuration files for each network interface:
- eth0:
/etc/network/interfaces.d/eth0
- eth1:
/etc/network/interfaces.d/eth1
- eth2:
/etc/network/interfaces.d/eth2
- eth0:
Manually Configuring a VLAN in Debian and Ubuntu 16.04
Check if Network Helper is enabled or disabled. See Network Helper Settings for information on locating this setting. Network Helper should not interfere with any of the changes below, but its status may impact the files that you’re able to edit.
Log in to the Linode via Lish. While it’s possible to make changes while logged in over SSH, you may get disconnected if changes are made to the network interface assigned to the public internet.
Edit (or create) the specific configuration file corresponding to the network interface assigned to the VLAN. Replace the contents with the following text. Replace
eth1
with the correct network interface and adjustaddress
to match your desired IPAM address:auto eth1 iface eth1 inet static address 10.0.0.1/24
If Network Helper is disabled, the above changes can be made directly to the main configuration within
/etc/network/interfaces
if preferred.Restart the Linode or run the following series of commands for the updated network configuration to take affect. Replace
eth1
with the correct network interface and replace the reference to the IP address as needed:sudo ip address flush dev eth1 sudo ip address add 10.0.0.1/24 dev eth1 sudo ip link set eth1 up
CentOS and Fedora
CentOS 7 and above, as well as Fedora, all use systemd-networkd and NetworkManager. Network configuration files for each interface are located in /etc/sysconfig/network-scripts/
:
- eth0:
/etc/sysconfig/network-scripts/ifcfg-eth0
- eth1:
/etc/sysconfig/network-scripts/ifcfg-eth1
- eth2:
/etc/sysconfig/network-scripts/ifcfg-eth2
Manually Configuring a VLAN in CentOS and Fedora
Verify that Network Helper is disabled to avoid it overwriting any changes on the next reboot. See Network Helper Settings for information on adjusting Network Helper settings.
Log in to the Linode via Lish. While it’s possible to make changes while logged in over SSH, you may get disconnected if changes are made to the network interface assigned to the public internet.
Edit the configuration file corresponding to the network interface assigned to the VLAN. Replace the contents with the following text. If needed, adjust
NAME
andDEVICE
to match the correct network interface andIPADDR0
andPREFIX0
to match your desired IPAM address and prefix:DEVICE="eth1" NAME="eth1" ONBOOT="yes" BOOTPROTO="none" IPADDR0=10.0.0.1 PREFIX0=24
Restart the Linode or run
sudo ifup eth1
for the updated network configuration to take effect.
Verify and Test the Updated Configuration
First, verify that the network configuration was correctly updated and applied. Run the following
ip address
command, replacingeth1
with the name of the network interface that was modified.ip address show eth1 | grep inet
This command will output the IP addresses configured for the specified network interface, as seen in the example output below. If no IP address appears or if the wrong IP address appears, review the steps outlined above for your distribution and verify that they were all completed. Restarting the Linode, making sure that Network Helper is disabled, may also force the changes to take affect.
inet 10.0.0.1/24 brd 10.0.0.255 scope global eth1
Test the VLAN’s connectivity by pinging another Linode within the VLAN’s private network, using the IPAM address assigned to it. For more details, see the Testing Connectivity section of the Getting Started with VLANs guide.
Additional Configuration Instructions
For more details regarding manually configuring IP addresses on a Linode, see the Linux Static IP Configuration guide.
This page was originally published on