1. Introduction

As system administrators, we’ll invariably encounter issues with the network connectivity or interface configuration of our devices. At times, these problems can lead to slow or unresponsive connections, network congestion due to packet retransmissions, data corruption, and other undesirable scenarios. However, resetting the interface is a fairly easy process that can assist in resolving many common networking troubles and restoring connectivity quickly.

In this tutorial, we’ll elucidate the different steps involved in restarting the interfaces on Linux devices.

Without any further ado, let’s get into the nitty-gritty of it.

2. What Is a Network Interface?

A network interface is the hardware or software component that manages the network connections of a system. Also, it enables a computer to communicate with other devices across a network. Furthermore, these interfaces are responsible for handling network errors, transmitting and receiving data across the network, and configuring the network (including IP addresses, gateways, and netmasks).

Restarting the interface is a relatively straightforward technique that can help solve many typical networking problems. Nevertheless, an improper interface restart may cause a network outage and possible data loss.

3. Identify Your Network Interface

A single device can have several network interfaces communicating with different network spheres. It’s always good to understand the network and its binding interface before we restart any interface. We can use the ifconfig command to get a comprehensive view of the interface configuration. The -a option will help us list all the available interfaces of the device:

$ ifconfig -a
ens160: flags=4163  mtu 1500
        inet 180.87.34.99  netmask 255.255.255.248  broadcast 180.87.34.103
        inet6 fe80::fc7f:d8da:a969:1c1d  prefixlen 64  scopeid 0x20
        ether 00:0c:29:23:6f:30  txqueuelen 1000  (Ethernet)
        RX packets 2124585  bytes 373345569 (373.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1149022  bytes 181756632 (181.7 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
...
... output truncated ...
...

Alternatively, we can also use the nmcli command to get the current status of all network connections across wired, wireless, and other logical bridged interfaces:

$ nmcli device show
GENERAL.DEVICE:                         ens160
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:23:6F:30
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
IP4.ADDRESS[1]:                         10.87.34.99/29
...
... output truncated ...
...

GENERAL.DEVICE:                         ens256
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:23:6F:4E
GENERAL.MTU:                            1500
GENERAL.STATE:                          30 (disconnected)
...
... output truncated ...
...

3. Restart the Network Interface

There are numerous ways to restart the interface in Linux. Here, let’s use the basic ip link command to perform the restart. Also, we need root privileges to perform these activities:

$ sudo ip link set ens224 down
$ ip link show ens224
4: ens224:  mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:23:6f:44 brd ff:ff:ff:ff:ff:ff

$ sudo ip link set ens224 up
$ ip link show ens224
4: ens224:  mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:23:6f:44 brd ff:ff:ff:ff:ff:ff

On the other hand, we can also use other commands like ifconfig, nmcli, ifup, ifdown, and others:

$ sudo ifdown ens224
$ sudo ifup ens224
$ ip link show ens224
4: ens224:  mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:23:6f:44 brd ff:ff:ff:ff:ff:ff

$ sudo ifconfig ens224 down
$ sudo ifconfig ens224 up
$ ip link show ens224
4: ens224:  mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:23:6f:44 brd ff:ff:ff:ff:ff:ff

$ sudo nmcli connection down ens224
$ sudo nmcli connection up ens224
$ ip link show ens224
4: ens224:  mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:23:6f:44 brd ff:ff:ff:ff:ff:ff

Lastly, we can use network-manger restart. The former interface commands will interrupt the services of that specific interface.

However, the latter will interrupt services across all the interfaces in that device:

$ sudo service network-manager restart
$ sudo service network-manager status
● NetworkManager.service - Network Manager
   Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2023-03-16 12:48:31 IST; 2s ago
     Docs: man:NetworkManager(8)
 Main PID: 20988 (NetworkManager)
...
... output truncated ...
...

4. Test Your Network Connection

After restarting the interface, it is always recommended to verify the operational state of our connection. We can test the network layer through an ICMP test on the configured IP interface and its gateway.

Alternatively, we can try accessing a website deployed on the server to test the application layer:

$ ping -c 1 10.133.14.57
PING 10.133.14.57 (10.133.14.57) 56(84) bytes of data.
64 bytes from 10.133.14.57: icmp_seq=1 ttl=64 time=0.048 ms

--- 10.133.14.57 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.048/0.048/0.048/0.000 ms

5. Conclusion

In this quick article, we’ve started with the basics of network interfaces in a system and the steps to identify them. Further, we’ve elaborately focused on managing the interface through the restart mechanism. Lastly, we also touched upon the testing of the interface once it’s back online.

Overall, understanding the basic management of network interfaces is an essential skill for system administrators and users alike. Even more, it will also help with smoother operation and maintaining the reliability of the secure network.

Comments are open for 30 days after publishing a post. For any issues past this date, use the Contact form on the site.