Skip to main content

Using static IPs in Linux

It is often a requirement to assign static IP addresses to some important and permanent network interfaces. This is to avoid setting up a local DHCP server or relying on IP given by your network provider which may not be stable.

This post shows steps to configure static IPs in Linux using Ubuntu 16.04 and Ubuntu 18.04 distros. We are considering two distros as network configuration has changed significantly in Ubuntu 18.04.

There are two general steps to be followed:
1. Configure the network interface and assign a static IP.
2. Restart interface for the changes to take effect.

Ubuntu 16.04

 The current interfaces on the system are as follows:



As can be seen, enp0s8 interface does not have any IP. Let's assign a static IP to it. In case you already have an interface with a DHCP assigned IP, you just need to change that IP and make it static.

Edit the /etc/network/interfaces file and add the following code block. Prefer using the IP address range available for private use (see [1]) while deciding an IP. I want to add the server to the local 10.0.2.1/24 network. The word "static" at the end of second line indicates that this is a static IP.


Now restart the network interface with the following command:
sudo ifdown enp0s8 && sudo ip add flush dev enp0s8 && sudo ifup --force enp0s8

In case this doesn't work, try restarting the networking service:
sudo systemctl restart networking.service

While this has always worked for me, in case this doesn't work, check the configuration again and restart the server:
sudo init 6
OR
sudo reboot
Upon restart the interface should be configured with static IP.

This is my ifconfig output:

Let's see how to assign a static IP for Ubuntu 18.04 before testing.

 

Ubuntu 18.04

From Ubuntu 18.04, Ubuntu shifted to Netplan network configuration. This uses yaml based configuration setup. While the method of setup changes, the steps remain the same.

The current interfaces on the system are as follows:

Here also, enp0s8 interface does not have any IP.

Edit the `/etc/netplan/50-cloud-init.yaml` file (NOTE: the file name may be different depending on system) and add the following code block. Here also, we will use an IP from the 10.0.2.0/24 network. The line "dhcp4: no" indicates that this is a static IP.


Apply the configuration using the following command:
sudo netplan apply
Use --debug flag for debugging purposes


It can be seen in the above screenshot that the new config has been merged in the existing config. Let's check our interface with ifconfig,


The IP has been assigned successfully.

Testing

Make sure you are on the server which is in the same network as the network of static IPs for testing purposes. Here we will use the two servers that we have set the static IP for.

PING test:


SSH test


 

Use Cases:

Static IPs are useful when:
  1. The DHCP server is unstable or insufficient to manage a large number of servers. 
  2. Another possible issue is that the static IP lease expires frequently and takes time to reestablish causing frequent outages.

Have you faced any such issues with your DHCP server? Have you used any innovative strategies for static IP assignment? Let me know in the comments.


References:

[1] https://en.wikipedia.org/wiki/Private_network 

Comments

Popular posts from this blog

My Entry into the World of Credit Cards

After joining my job in June 2018, my salary account was opened in ICICI Bank. During the account opening process, I was offered a Life Time Free (LTF) credit card. Simply put, this was my first chance to get into the credit world without any extra hassle because first of all, neither was I aware of the concept of credit scores nor I had any credit history and secondly, I was just curious about credit cards after seeing of my father use his credit cards with extra caution and the monthly event of credit card bill payment that used to happen at my home. And in that sudden moment of joy, I made my first mistake in the credit world. Representative Image (Source: https://jessepollak.github.io/card/) Now if your guess is that I started spending crazy amounts of money which I couldn't repay, then you are WRONG! I am a miserly person. Money doesn't leave my hands and in general, my credit utilization has never exceeded 5% of my credit limit. So coming back to my first mis...

ICICI Credit Limit Increase Offer

Recently, ICICI Bank offered me a free credit limit increase for my Lifetime Free ICICI Platinum Chip Credit Card. My limit is being increased by ~31%. For last couple of weeks, I was seeing increased available credit limit on my ICICI net-banking page. I also received an SMS stating that they are offering me a free credit limit increase, after the bill for the latest credit cycle was generated. The same limit enhancement offer is visible in iMobile app as well. See the last SMS message in the above screenshot In the Latest Bill tab you will see the Manage Limit option just above My Rewards. I have been using the card for around 10-11 months. Although this increase seems low, considering utilization, it seems fair. The highest credit utilization was around 15% once, while for the last couple of months, it was <1%. On average it was in 2-3% range. One can accept the increase through any of the three modes, SMS, netbanking or iMobile. It will immediately update the lim...

The Japanese Constitution - Chapter 1

Chapter 1 - The Emperor Article 1 The Emperor shall be the symbol of the State and of the unity of the People, deriving his position from the will of the people with whom resides sovereign power. This article makes the post of emperor a symbolic one just like the post of Queen in UK or the post of president in a parliamentary democracy. It also emphasizes that the real power resides in the hands of people making it clear that there will be a democratic order of governance in Japan. Article 2 The Imperial Throne shall be dynastic and succeeded to in accordance with the Imperial House Law passed by the Diet. This article describes how the people will control the position of emperor through their elected representatives. Article 3 The advice and approval of the Cabinet shall be required for all acts of the Emperor in matters of state, and the Cabinet shall be responsible therefor. Article 4 The Emperor shall perform only such acts in matters of state as are provided for in th...