Home > System Tutorial > LINUX > How to Check if Your IP Address is Static or DHCP in Linux (2024)

How to Check if Your IP Address is Static or DHCP in Linux (2024)

William Shakespeare
Release: 2025-03-21 10:10:12
Original
608 people have browsed it

How to Check if Your IP Address is Static or DHCP in Linux (2024)

It is useful for a variety of reasons to know whether your Linux system uses a static IP address or a DHCP assigned IP address. For example, if you are hosting a web server or running a game server, you need to use a static IP address. If you try to resolve a network problem, you may also need to know your IP address. This article describes how to check whether your IP address is static or DHCP assigned in Linux.

This article introduces manual and command-line methods and clearly explains the difference between static and dynamic IP addresses.

Table of contents

    1. Check the network configuration file to determine whether the IP address is static or DHCP
    1. Use the nmcli command to check whether the IP address is static or DHCP
    1. Find out whether the IP address is static or dynamic by checking DHCP lease information
  • in conclusion

Introduction

An IP address is a unique identifier for a device on the network. It is used to route traffic between devices and allow them to communicate with each other.

There are two types of IP addresses: static and dynamic .

  • Static IP addresses are assigned manually and remain unchanged until they are changed.
  • Dynamic IP addresses are automatically assigned by the DHCP server and may change over time.

Most home and office networks use DHCP to assign IP addresses to devices. This is because it is easier to manage and helps prevent IP address conflicts.

However, in some cases, you need to use a static IP address, such as hosting a web server or running a game server.

If you are not sure whether your Linux IP address is static or DHCP assigned, you can use any of the following methods.

In Linux, you can determine whether the IP address is statically assigned or DHCP by checking the system's network profile or using command-line tools such as nmcli, or by checking the lease information.

  1. Check the network configuration file to determine whether the IP address is static or DHCP

For Linux systems using NetworkManager, you can use this method to find out whether the IP address is static or dynamic.

The configuration may be stored in /etc/NetworkManager/system-connections/. You can check individual connection files here.

 <code>$ sudo ls /etc/NetworkManager/system-connections/ Auto Ostechnix_jio_5g.nmconnection Auto Sk vivo V21e 5G.nmconnection Wired connection 1 Auto Ostechnix.nmconnection Ostechnix_jio_4g.nmconnection</code>
Copy after login

For example, to check whether Wired Connection 1 uses a static or dynamic IP, use the following command to view the contents of its configuration file:

 <code>$ sudo cat /etc/NetworkManager/system-connections/Wired\ connection\ 1</code>
Copy after login

Find lines starting with method=, located under the [ipv4] and [ipv6] sections. If auto is displayed, it is DHCP. If manual is displayed, it is static.

 <code>[connection] id=Wired connection 1 uuid=5cfE09f2EG-20a6-3089-8577-5269e5cf08gh type=ethernet permissions= timestamp=1650630622 [ethernet] mac-address-blacklist= [ipv4] address1=192.168.29.55/24,192.168.29.1 dns=8.8.8.8; dns-search=<strong></strong></code><mark> method=manual</mark>

[ipv6]
addr-gen-mode=eui64
dns-search=
ip6-privacy=2
method=auto

[proxy]
Copy after login

As the output shows, I have assigned a static IP address to my wired Ethernet connection.

If you want to see details of all available network connections, run:

 <code>$ sudo cat /etc/NetworkManager/system-connections/*</code>
Copy after login

For Debian/Ubuntu systems or derived systems that do not use NetworkManager:

Check the /etc/network/interfaces file.

 <code>$ cat /etc/network/interfaces</code>
Copy after login

If you see iface inet dhcp, then it is using DHCP. If you see iface inet static, then it is static.

 <code>[...] source /etc/network/interfaces.d/* auto lo iface lo inet loopback<strong></strong></code><mark> iface enp89s0 inet manual</mark>

auto vmbbr0
iface vmb0 inet static
    address 192.168.1.101/24
    bridge-ports none
    bridge-stp off
    bridge-fd 0
[...]
Copy after login

For older Red Hat/Fedora systems or derived systems that do not use NetworkManager:

Check the files in /etc/sysconfig/network-scripts/.

 <code>$ cat /etc/sysconfig/network-scripts/ifcfg-*</code>
Copy after login

Find lines starting with BOOTPROTO=. If dhcp is displayed, it is DHCP. If not, it is static.

  1. Use the nmcli command to check whether the IP address is static or DHCP

You can also use this method on Linux systems with NetworkManager.

The nmcli tool is the command line client of NetworkManager. You can use it to quickly determine the source of an IP address.

 <code>$ nmcli con show [connection-name]</code>
Copy after login

Replace [connection-name] with the name of your connection.

For example, to see the source of the "Auto Ostechnix_jio_5g" connection, you will run:

 <code>$ nmcli con show 'Auto Ostechnix_jio_5g'</code>
Copy after login

In the output, look for the ipv4.method or ip6.method rows. If auto is displayed, it is DHCP. If manual is displayed, it is static.

The output is usually very long. Therefore, you can use the following grep command to filter the exact details you want.

 <code>$ nmcli con show 'Auto Ostechnix_jio_5g' | grep ipv4.method ipv4.method:<strong></strong></code><mark> auto</mark>
Copy after login

As shown in the above output, my network uses a DHCP server to dynamically assign IP addresses.

If you want to see the source of IP version 6, replace ipv4.method with ipv6.method in the above command.

  1. Find out whether the IP address is static or dynamic by checking DHCP lease information

DHCP clients on Linux usually log their activity, and you can check these logs to find out if the IP address was obtained through DHCP. In addition, DHCP clients typically store their lease information in the lease file.

For dhclient:

The lease file is usually located in /var/lib/dhcp/dhclient.leases or /var/lib/dhclient/dhclient.leases.

 <code>$ cat /var/lib/dhcp/dhclient.leases</code>
Copy after login

If you see the most recent lease in this file, the system has obtained its IP via DHCP.

Remember that checking methods may vary by Linux distribution and version, as well as the network tools used (NetworkManager, traditional ifup/ifdown, systemd-networkd, etc.). The methods provided above cover many common scenarios, but not all possible configurations.

in conclusion

In this short guide, we discuss several ways to check whether your IP address is static or dynamically allocated from a DHCP server. Knowing whether your system uses a static IP address or a DHCP assigned IP address is very beneficial for solving network problems in Linux. Choose the method that works for you and determine the source of your IP in seconds.

Related Reading: How to Configure Static IP Addresses in Linux and Unix

The above is the detailed content of How to Check if Your IP Address is Static or DHCP in Linux (2024). For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template