Server Gigabit Guide

How to Configure Static IP Address on Ubuntu 18.04

You are here:
Estimated reading time: 3 min

In this article, we will clarify how to set up a static IP address on Ubuntu 18.04.

The IP addresses allocated to your DHCP service router. In various cases, such as setting up a port forwarding or running a media server on your network, it might be appropriate to create a static IP address on your Ubuntu machine.

 

 

The easiest and most recommended way to assign a static IP address to a device on your LAN is to set up a static DHCP on your router. The feature found on most routers is Static DHCP or DHCP Reservation . It causes the DHCP server to automatically assign the same IP address to a specific network device each time the device requests an address from the DHCP server. This works by assigning a static IP to the specific MAC address of the computer. The steps to configure a DHCP reservation vary from router to router and it is best to review the vendor’s documentation.

 

Starting with 17.10 release, Netplan is the default network management tool on Ubuntu, replacing the configuration file /etc/network/interfaces that had previously been used to configure the network on Ubuntu.

Netplan uses configuration files with YAML syntax. To configure a network interface with Netplan you simply create a YAML description for that interface and Netplan generates the required configuration files for your chosen renderer tool.

Netplan currently supports two renderers NetworkManager and Systemd-networkd. NetworkManager is mostly used on desktop machines, while System-network is used without GUI on servers.

 

 

The newer versions of Ubuntu uses ‘Predictable Network Interface Names’ that start with en[letter][number]. by default. The first step is to identify the name of the ethernet interface you want to configure. You can use the ip link command as shown below:

ip link

The command will print a list of all the available network interfaces. In this case, the name of the interface is ens3:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
3: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 56:00:00:60:20:0a brd ff:ff:ff:ff:ff:ff

Netplan configuration files are stored in the /etc/netplan directory and have the extension .yaml. You’ll probably find one or two YAML files in this directory. The file may differ from setup to setup. Usually, the file is named either 01-netcfg.yaml50-cloud-init.yaml or NN_interfaceName.yaml, but in your system it may be different.

Open the YAML configuration file with your text editor:

sudo nano /etc/netplan/01-netcfg.yaml
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: yes
Copy

Let’s explain the code in short time before changing the configuration.
Each Netplan Yaml file starts with the network key that has at least two required elements. The first required element is the version of network configuration format and the second one is the device type. Device types values can be ethernetsbondsbridges, and vlans.

The configuration above also includes the renderer type. Out of the box, if you installed Ubuntu in server mode the renderer is configured to use networkd as the back end.

Under the device’s type ( in this case ethernets) we can specify one or more network interfaces. In this example we have only one interface ens3 that is configured to obtain IP addressing from a DHCP server dhcp4: yes.

To assign a static IP address to ens3 interface edit the file as follows:

  • Firstly, Set DHCP to no dhcp4: yes
  • Further, Specify the static IP address 192.168.121.199/24. Under addresses: you can add one or more IPv4 or IPv6 IP addresses that will be assigned to the network interface.
  • Specify the gateway gateway4: 192.168.121.1
  • Lastly, specify the nameservers addresses: [8.8.8.8, 1.1.1.1] Under nameservers,
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      addresses:
        - 192.168.121.199/24
      gateway4: 192.168.121.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

Copy

Make sure you follow the YAML code indent requirements when editing Yaml files as it may not work if the configuration includes syntax error.

After saved and closed  the file and applied the changes with:

sudo netplan apply

Verify the changes by typing:

ip addr show dev ens3
3: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 56:00:00:60:20:0a brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.199/24 brd 192.168.121.255 scope global dynamic ens3
       valid_lft 3575sec preferred_lft 3575sec
    inet6 fe80::5054:ff:feb0:f500/64 scope link 
       valid_lft forever preferred_lft forever

That’s it! You have assigned a static IP to your Ubuntu server.

 

Setting up a static IP address on Ubuntu Desktop computers requires no technical knowledge.

1.Firstly,  search for “network” and click on the Network icon in the Activities screen,. This will open the GNOME Network configuration settings. Click on the cog icon.

ubuntu 18.04-static IP Address-GNOME Network configuration settings

2. This will open the Network interface settings dialog box.

ubuntu-IPv4 method-static IP address-Netmask-gateway

3. In “IPV4” Method” section select “Manual”, and enter your static IP address, Netmask and Gateway. Click on the “Apply” button once completed.

ubuntu-Network interface settings

After you have set up a static IP Address, open your terminal either by using the Ctrl+Alt+T keyboard shortcut or by clicking on the terminal icon and verify the changes by typing:

ip addr

The output will show the interface IP address:

...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:e9:40:f2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.106/24 brd 192.168.121.255 scope global dynamic noprefixroute eth0
       valid_lft 3523sec preferred_lft 3523sec
    inet6 fe80::5054:ff:fee9:40f2/64 scope link 
       valid_lft forever preferred_lft forever

In conclusion,, You have learned how to assign a static IP address on your Ubuntu 18.04 machine. If you have any question, please leave a comment below

Please refer to the following articles How to set up private nameserver for Linux server

Was this article helpful?
Dislike 0
Views: 77