Ubuntu 17.10 Will Not Accept Static IP – Troubleshooting Guide

17.10networking

My Ubuntu server will not accept my static IP assignment. Instead, I keep getting a DHCP lease. Network Manager is not installed. Below is the output of cat /etc/network/interfaces

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.128
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 192.168.1.120 192.168.1.125
dns-domain mynetwork.local
dns-search mynetwork.local

Output of ip addr

Questions:

  1. Why doesn't Ubuntu accept the static IP assignment? The Interfaces file seems to be ignored.

  2. What is allowing a DHCP lease to be assigned?

Best Answer

The package ifupdown and so /etc/network/interfaces are no longer used. Ubuntu 17.10 Server uses the package netplan instead, which configures systemd-networkd.

Make sure you use the default content for the config file /etc/network/interfaces

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# Generated by debian-installer.
# The loopback interface
auto lo
iface lo inet loopback

And create this netplan config file for a static IPV4 address (works for me): /etc/netplan/01-netcfg.yaml.

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.0.97/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Make sure you use the correct network interface name ("ens3" in this example).

Make sure you use the correct DNS servers (nameservers->addresses) for your network environment.

Once this file has been created, run the following commands as root to test & activate the configuration:

sudo netplan --debug generate
sudo netplan apply
Related Question