Linux实例中网络进程异常或不存在, 导致无法续租IP地址怎么办?

本文介绍Linux实例中网络进程异常或不存在,导致无法续租IP地址的解决方案。

问题描述

在一个配置了DHCP的Linux系统的ECS实例中,如果负责管理IP地址续租的网络进程(如dhclient)并未运行或因故障不存在,那么在IP租约到期时,实例将无法成功续订其IP地址。这将导致网络连接中断,直至问题被解决且网络配置被正确更新。

解决方案

步骤一:排查网络进程状态

您可以执行ps -ef |grep [$网络进程]命令,查看网络进程是否存在,如果对应的网络进程不存在,则说明存在潜在风险。各系统对应的网络进程(网络配置方式为DHCP)如下:

OS版本

网络进程

  • CentOS 6/7

  • Debian 8/9/10

  • Ubuntu 14/16

/sbin/dhclient

CentOS 8

/usr/sbin/NetworkManager

  • Ubuntu 18/20

  • Alibaba Cloud Linux 2

/lib/systemd/systemd-networkd

  • SLES 12/15

  • openSUSE 15

/usr/lib/wicked/bin/wickedd-dhcp4 

步骤二:重启网络服务

您可以通过重启网络服务,来恢复系统网络服务异常或网络服务进程不在的情况。各个Linux系统网络服务名称不一样,同一款系统不同版本间网络服务也有差异。具体网络服务名称及重启网络服务的命令如下所示:

重要

重启网络服务可能会导致网络在短时间内中断,并可能导致业务中断,建议您在非业务高峰期时执行该操作。

OS

Version

网络服务名称

重启网络服务命令

CentOS

6

network

service network restart

7

network

systemctl restart network

8

NetworkManager

systemctl restart NetworkManager

Debian

8

networking

systemctl restart networking

9

networking

systemctl restart networking

10

networking

systemctl restart networking

Ubuntu

14

networking

service networking restart

16

networking

systemctl restart networking

18

systemd-networkd

systemctl restart systemd-networkd

20

systemd-networkd

systemctl restart systemd-networkd

SLES

15

wicked

systemctl restart wicked

12

wicked

systemctl restart wicked

openSUSE

15

wicked

systemctl restart wicked

Alibaba Cloud Linux 2

2

systemd-networkd

systemctl restart systemd-networkd