全部产品
Search
文档中心

:如何在Linux镜像中配置网络为DHCP

更新时间:Jul 12, 2022

概述

通过ECS或者OSS导入的方式创建自定义镜像,若镜像中网络配置是静态IP地址时,您需要修改网卡属性为DHCP,以确保通过该镜像创建新的ECS实例时可以动态获取IP地址。本文主要介绍主流Linux操作系统的配置方式。

详细信息

不同Linux操作系统,在Linux镜像中配置网络为DHCP的方法如下:

Redhat系列

支持的操作系统如下:

  • CentOS 6/7/8
  • Red Hat 6/7/8/9
  • Anolis 7/8
  • Fedora 33/34/35
  • Alibaba Cloud Linux 2/3
  • CentOS Stream
  • Rocky Linux 
  • AlmaLinux  

具体配置操作如下:

  1. 远程连接ECS实例,关于如何远程连接ECS实例,请参见通过密码或密钥认证登录Linux实例
  2. 执行以下命令,编辑网络配置文件。
    vi /etc/sysconfig/network-scripts/ifcfg-eth0 
  3. 修改以下网络配置项。
    BOOTPROTO=dhcp
    DEVICE=eth0
    ONBOOT=yes
    STARTMODE=auto
    TYPE=Ethernet
    USERCTL=no
  4. Esc键,输入:wq并回车,保存退出文件编辑。
  5. 重启网络服务。
    • CentOS 6、Red Hat 6操作系统,请执行以下命令。
      service network restart
    • CentOS 7、Red Hat 7、Anolis 7 、Alibaba Cloud Linux 2操作系统,请执行以下命令。
      systemctl restart network
    • CentOS 8 、Red Hat 8Anolis 8 、fedora 33/34/35 、Alibaba Cloud Linux 3操作系统,请执行以下操作:
      1. 执行以下命令,重新加载所有网卡配置。
         nmcli c reload
      2. 执行以下命令,激活网卡。
        nmcli d connect eth0

Debian系列

支持的操作系统如下:

  • Ubuntu 14/16

  • Debian /8/9/10/11

  • Ubuntu 18/20

Ubuntu 14/16和Debian /8/9/10/11操作系统的具体配置操作如下:

  1. 远程连接ECS实例,执行以下命令,打开网络配置文件。
    vim /etc/network/interfaces
  2. 修改以下网络配置项。
    auto lo
    iface lo inet loopback

    auto eth0
    iface eth0 inet dhcp
    说明
    • auto eth0:eth0指的是自己机器上ifconfig输出对的网卡别名相符。
    • iface eth0 inet dhcp:表示获取IP方式为DHCP。
  3. Esc键,输入:wq并回车,保存退出文件编辑。
  4. 执行以下命令,重启网络服务。
    service networking restart
    或者
    systemctl restart networking
    注意:Ubuntu 14不适用于上述两条命令,直接运行reboot命令重启实例即可。

Ubuntu 18/20操作系统的配置操作如下:

  1. 远程连接ECS实例,执行以下命令,打开网络配置文件。
    vim  /etc/netplan/99-eth0.yaml
  2. 添加以下网卡配置。
    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0:
          dhcp4: yes
          dhcp6: no
  3. Esc键,输入:wq并回车,保存退出文件编辑。
  4. 执行netplan apply命令,使配置生效。

SLES系列

支持的操作系统如下:

  • SUSE 11/12/15
  • OpenSUSE 42/15
  1. 远程连接ECS实例,执行以下命令,编辑网络配置文件。
    vi /etc/sysconfig/network/ifcfg-eth0
  2. 修改以下网络配置项。
    BOOTPROTO='dhcp'
    STARTMODE='auto'
  3. 配置完成后,执行以下命令,重启网络服务使之生效。
    systemctl restart wicked

更多信息

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

Aliyun Linux 2

2

systemd-networkd

systemctl  restart  systemd-networkd

适用于

  • 云服务器ECS