I had an opportunity recently to install Ubuntu Server on a very old server, a Dell R710 that had 4 native network interfaces and 4 add-on network interfaces, resulting in a total of 8 network interfaces.
During the installation process, the installer did recognize all the physical network interfaces on the machine but because it did not successfully acquire DHCP addresses, I was forced to install Ubuntu without networking.
After the installation, only the loop back (lo
) interface existed and all the other physical interfaces were missing. I had to use the netplan
command to create the interfaces. This article was of tremendous help. I pretty well just followed its instructions.
I first created the 99-disable-network-config.cfg
file with the contents as instructed by the article.
sudo su -
echo "network: {config: disabled}" >> /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
Followed by editing the 50-cloud-init.yaml file with the following contents:
vim /etc/netplan/50-cloud-init.yaml
# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: true
Once netplan is configured, I then executed the following command:
netplan generate
netplan apply
Once I rebooted the computer, the eno1
network interface now exists with a provisioned IP from my local DHCP server.
Much of the content in this blog is a verbatim reference from the article but I provided here so that it is more easily searched by me if I ever needed it in the future.