弹性网卡(包括主网卡和辅助弹性网卡)支持分配一个或多个辅助私网IP地址,以满足您在多应用、故障转移和负载均衡等业务场景下的多IP的需求。本文介绍如何分配并配置辅助私网IP地址,以及回收辅助私网IP地址。
辅助私网IP概述
当ECS实例弹性网卡(包括主网卡与辅助弹性网卡)的单一主私网IP无法满足您对多IP的需求时,您可以为ECS实例的网卡分配多个辅助私网IP,从而使单个ECS实例拥有多个私网IP。您可以参考下图来理解ECS实例网卡与私网IP的关系。

适用场景
辅助私网IP地址适用于以下场景:
多应用场景:在ECS实例上部署了多个应用时,您可以为每个应用分配各自的辅助私网IP地址,每个应用对外均呈现一个独立的IP地址,实现在同一台ECS实例上提供多项服务,提升实例的利用率。
故障转移场景:当实例发生故障时,您可以将辅助弹性网卡从故障实例解绑并绑定至备用实例,通过其辅助私网IP访问的请求流量也随之切换到备用实例,实现故障转移。
负载均衡场景:通过为实例分配多个辅助私网IP地址,可以实现负载均衡机制,负载均衡器可以根据流量类型将请求分发到不同的私网IP地址,提高系统的可伸缩性和性能。
为弹性网卡添加辅助私网IP地址
重要 在ECS实例的操作系统内部配置辅助私网IP地址是必要步骤,用来确保实例能够识别该地址。除了在步骤一中通过控制台进行分配外,还需进行步骤三的配置,请您务必仔细阅读。
步骤一:为弹性网卡分配辅助私网IP地址
您可以在控制台上目标弹性网卡(包括ECS实例的主网卡或辅助弹性网卡)的管理弹性网卡IP页面进行辅助私网IP的增加或删除。具体操作示例如下:
登录ECS管理控制台。
在左侧导航栏,选择。
在页面左侧顶部,选择目标资源所在的资源组和地域。
在弹性网卡页面,找到待操作的弹性网卡,然后在操作列中单击管理弹性网卡IP。
在管理弹性网卡IP对话框中,在辅助私网IPv4或者IPv6参数区域单击增加,并根据需要分配IP地址。
单击确定,完成辅助私网IP地址分配。
确认目标弹性网卡的辅助私网IP正确分配。
您可以通过查看ECS实例的弹性网卡详情页确认以上信息,示例如下:

步骤二(条件可选):绑定弹性网卡。
当您选择为辅助弹性网卡添加辅助私网IP时,需要确保辅助弹性网卡已经绑定至ECS实例并已经完成配置,具体操作,请参见绑定辅助弹性网卡与配置辅助弹性网卡。
本文示例为ECS实例主网卡分配辅助私网IP,所以无需进行此步骤操作。
步骤三:配置操作系统识别辅助私网IP地址
为实例分配辅助私网IP地址后,您还需要根据操作系统类型和IP地址类型来配置实例的辅助私网IP地址。配置的具体操作因操作系统和IP地址类型而异。
配置示例
操作前请确保对应的实例处于运行中(Running)状态。具体操作,请参见启动实例。
本文提供了如下主流操作系统的配置步骤,请根据您的操作系统进行配置:
Linux操作系统配置示例
远程连接ECS实例。
具体操作,请参见使用Workbench工具以SSH协议登录Linux实例。
查看当前网络配置信息和路由信息,确认配置需要的默认网关和子网掩码。
查看主私网IPv4地址
执行以下命令,查看网络配置信息:
ip a
通过返回信息,可以看到当前实例的网络配置信息:

通过以上信息可以看到目前网络配置信息如下:
查看子网掩码及网关
执行以下命令,查看路由信息:
route -n
通过返回信息,可以看到:

结合以上信息,可以看到当前网络配置信息如下所示:
网卡 | 状态 | 默认网关 | 子网掩码 | 主私网IP地址 | 辅助私网IPv4地址1 | 辅助私网IPv4地址2 |
eth0(主网卡) | UP | 192.168.1.253 | 255.255.255.0 | 192.168.1.201(已自动配置) | 192.168.1.202(未识别需配置) | 192.168.1.203(未识别需配置) |
根据您的实际情况,选择不同的方式配置辅助私网IPv4地址。
使用nmcli con
配置
说明 NetworkManager 是 Linux 系统中一个用于管理网络连接和网络设置的守护进程,它提供了命令行工具nmcli,使得用户可以轻松地管理网络连接。
适用于所有通过NetworkManager管理网络服务的操作系统,包括但不限于Fedora、CentOS、RHEL、Ubuntu/Debian以及基于这些发行版的系统。
示例连接:网卡eth0对应的连接名称,您需要根据实际情况修改连接名称。
执行以下命令,新建文件禁用cloud-init的网络配置功能,避免重启后配置失效,更多信息参见cloud-init自动初始化网络配置。
sudo vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
添加如下配置项:
network: {config: disabled}
执行以下命令,查看当前网络连接信息。
nmcli con show
不同Linux发行版网络连接的命名均不同,本文中示例如下:

执行以下命令,配置eth0的辅助私网IPv4地址、默认网关、 IPv4 配置方法(手动或DHCP等)等信息。
sudo nmcli con modify "System eth0" ipv4.addresses 192.168.1.201/24,192.168.1.202/24,192.168.1.203/24
sudo nmcli con modify "System eth0" ipv4.gateway 192.168.1.253
执行以下命令,激活修改后的网络连接。
sudo nmcli con up "System eth0"
如果配置正确,返回信息出现类似"Connection successfully activated"字样时表示配置成功。
传统方式编辑网络配置文件
重要 不同Linux操作系统发行版及版本不同,网络配置文件不同。
建议您在编辑网络配置文件之前,先对原文件进行备份。
由于涉及网络配置文件的更改,建议您仔细确认操作的正确性,错误的配置可能导致实例无法连接。
RHEL系列
说明 适用的操作系统:Alibaba Cloud Linux 2/3、CentOS 6/7/8、Red Hat 6/7/8/9、Anolis 7/8、Fedora 33/34/35。
示例操作系统:Alibaba Cloud Linux 3.2。
示例网卡:以网卡eth0为例演示操作,您需要根据实际情况修改网络接口标识。
执行以下命令,确认网卡的主配置文件是否存在。每个网络接口都会有一个对应的配置文件,用于标识具体的网络接口。
ls /etc/sysconfig/network-scripts/ifcfg-eth0
文件存在:已创建网卡的主配置文件,直接进行步骤b即可。
文件不存在:创建文件并手动配置网卡的基本信息。
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
配置网卡名称,设置获取IP为静态获取方式并且配置网卡的主私网IPv4地址、子网掩码及网关信息。
本示例中,如果eth0文件不存在,则直接配置如下:
# 网卡名称,例如:eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=dhcp
#系统启动时激活该网络接口
ONBOOT=yes
执行以下命令,配置网卡eth0的第一个辅助私网IPv4地址。
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
本示例中,配置eth0的第一个辅助私网IPv4地址:
#网卡名称:网卡辅助私网IP地址顺序号
DEVICE=eth0:0
TYPE=Ethernet
#静态IP
BOOTPROTO=static
#手动配置IPv4地址和子网掩码
IPADDR=192.168.1.202
NETMASK=255.255.255.0
配置网卡eth0的第二个辅助私网IPv4地址
说明 多个辅助私网IP地址操作类似,注意以下几点即可:
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0:1
本文中,配置eth0网卡的第二个辅助私网IPv4地址示例如下所示:
#网卡名称:网卡辅助私网IP地址顺序号
DEVICE=eth0:1
TYPE=Ethernet
BOOTPROTO=static
#手动配置IPv4地址和子网掩码
IPADDR=192.168.1.203
NETMASK=255.255.255.0
Ubuntu 18/20
执行以下命令,禁用cloud-init的网络配置功能。
重要 网络配置文件(/etc/netplan/50-cloud-init.yaml)由cloud-init
在实例启动时候自动生成,如果要编辑,需要先禁用cloud-init的网络配置功能。具体信息,请参见cloud-init自动初始化网络配置。
sudo vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
添加如下配置项:
network: {config: disabled}
执行如下命令,编辑网络配置文件,配置网络接口配置信息。
sudo vim /etc/netplan/50-cloud-init.yaml
本文示例配置如下:
network:
version: 2
ethernets:
eth0: #网络接口名称
dhcp4: false #默认为dhcp自动配置,false需要手动配置IP
match:
macaddress: 00:16:3e:16:43:xx #您实际的网卡的mac地址
set-name: eth0
addresses:
- 192.168.1.201/24 #网卡主私网IP地址
- 192.168.1.202/24 #网卡辅助私网IP地址1
- 192.168.1.203/24 #网卡辅助私网IP地址2
gateway4: 192.168.1.253 #默认网关
Ubuntu 22/24、Debian 12
执行以下命令,禁用cloud-init的网络配置功能。
重要 网络配置文件(/etc/netplan/50-cloud-init.yaml)由cloud-init
在实例启动时候自动生成,如果要编辑,需要先禁用cloud-init的网络配置功能。具体信息,请参见cloud-init自动初始化网络配置。
sudo vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
添加如下配置项:
network: {config: disabled}
执行如下命令,编辑网络配置文件,配置网络接口配置信息。
sudo vim /etc/netplan/50-cloud-init.yaml
本文示例配置如下:
network:
version: 2
ethernets:
eth0: #网络接口名称
dhcp4: false #默认为dhcp自动配置,false需要手动配置IP
match:
macaddress: 00:16:3e:16:43:xx #您实际的网卡的mac地址
set-name: eth0
addresses:
- 192.168.1.201/24 #网卡主私网IP地址
- 192.168.1.202/24 #网卡辅助私网IP地址1
- 192.168.1.203/24 #网卡辅助私网IP地址2
routes:
- to: default
via: 192.168.1.253 #默认网关
重启网络服务,使配置生效。
说明 如果您参考上述的nmcli con
方式完成配置,无需重启网络服务,NetworkManager会监控配置文件的变化并应用新的配置。
操作系统 | 重启服务命令 |
Alibaba Cloud Linux 2 CentOS 7 Red Hat 7 Anolis 7 SUSE Linux 11/12/15 OpenSUSE 15/42
| sudo service network restart
或sudo systemctl restart network |
| sudo service network restart
|
Alibaba Cloud Linux 3 CentOS 8 Red Hat 8 Anolis 8 Fedora 33/34/35
| sudo systemctl restart NetworkManager 或sudo reboot
|
| sudo netplan apply
|
Ubuntu 14/16 Debian 8/9/10/11
| sudo systemctl restart networking 或sudo reboot
|
再次执行步骤2的操作验证配置是否成功。

Windows操作系统配置示例
远程连接Windows实例。
具体操作,请参见使用Workbench工具以RDP协议登录Windows实例。
查看当前的网络配置和路由信息,确认配置需要的默认网关和子网掩码。
打开命令提示符或Windows PowerShell工具。
执行以下命令,查看当前网卡及IP信息。
ipconfig
通过返回信息,可以看到目前网卡及IP识别信息:

可以看到目前网络配置和路由信息如下:
网卡 | 网络掩码 | 默认网关 | 主私网IP地址 | 待配置私网IPv4地址1 | 待配置私网IPv4地址2 |
以太网(主网卡) | 255.255.255.0 | 192.168.1.253 | 192.168.1.201(已自动配置) | 192.168.1.202(未识别需配置) | 192.168.1.203(未识别需配置) |
打开网络和共享中心。
单击更改适配器设置。
双击当前主网卡网络名称以太网,然后在以太网状态对话框中单击属性。

在以太网属性对话框中,双击Internet 协议版本4(TCP/IPv4)。

在Internet 协议版本4(TCP/IPv4)属性对话框中,选择使用下面的IP地址,然后单击高级。
重要 此处改变了自动获取IP的策略,完全为手动配置,因此下面的配置也需要配置网卡的主私网IP地址。否则会导致实例无法通过主私网IP远程连接。

在高级TCP/IP设置对话框中,设置IP地址。
在IP地址区域,单击添加,然后输入已分配的以太网的主私网IP地址和辅助私网IP地址,和查询获取的子网掩码。
本示例中,输入以太网申请的两个辅助私网IP
在默认网关区域,单击添加,然后输入查询获取的默认网关。

单击确定保存各对话框中的设置,完成辅助私网IPv4的配置。再次执行步骤2的操作验证配置是否成功。

其他操作系统配置示例
Ubuntu 14/16、Debian 8/9/10/11
执行如下命令,编辑网络配置文件,配置网络接口信息。
sudo vi /etc/network/interfaces
配置项示例如下所示:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth0:0
iface eth0:0 inet static
address 192.168.1.202
netmask 255.255.255.0
auto eth0:1
iface eth0:1 inet static
address 192.168.1.203
netmask 255.255.255.0
重启网络服务,使配置生效。
SLES系列
说明 适用的操作系统:SUSE Linux 11/12/15、OpenSUSE 15。
示例操作系统:SUSE Linux 15 SP5。
示例网卡:以网卡eth0为例演示操作,您需要根据实际情况修改网络接口标识。
执行以下命令,打开eth0网卡的配置文件并配置eth0的辅助私网IPv4地址、子网掩码等。
sudo vi /etc/sysconfig/network/ifcfg-eth0
配置文件示例如下:
#禁用dhcp,改为静态获取
BOOTPROTO=static
STARTMODE=auto
USERCONTROL=no
#多个IP后面加序号后缀
IPADDR_1=192.168.1.201
NETMASK_1=255.255.255.0
LABEL_1=
IPADDR_2=192.168.1.202
NETMASK_2=255.255.255.0
LABEL_2=0
IPADDR_3=192.168.1.203
NETMASK_3=255.255.255.0
LABEL_3=1
说明 您可以通过执行sudo cat /etc/sysconfig/network/ifcfg.template
查看模板配置文件中的解释。
执行以下命令,查看全局网络设置文件是否有默认网关信息:
cat /etc/sysconfig/network/routes
如果没有,在文件中添加默认网关信息,示例如下:
default 192.168.1.253 - -
重启网络服务,使配置生效。
回收辅助私网IP地址
如果您的弹性网卡不再需要辅助私网IP地址,您可以回收弹性网卡上已分配的一个或多个辅助私网IP地址。您可以参照以下步骤回收辅助私网IP地址。
前提条件
回收辅助私网IP地址之前,请确认以下信息:
操作步骤
登录ECS管理控制台。
在左侧导航栏,选择。
在页面左侧顶部,选择目标资源所在的资源组和地域。
在弹性网卡列表页面,找到目标弹性网卡,在操作列,单击管理弹性网卡IP。
在管理弹性网卡IP对话框的辅助私网IPv4区域,找到要回收的一个或多个辅助私网IP地址,单击IP地址所在行右侧的
图标。
单击确定。
刷新列表,如果目标弹性网卡的IP地址列不再出现该IP地址,说明您已成功回收辅助私网IP地址。
扩展阅读
cloud-init自动初始化网络配置
cloud-init是一款开源初始化工具,能够为Linux操作系统提供初始化密码、设置主机名、执行自定义脚本等初始化配置能力。阿里云所有公共镜像已默认安装cloud-init,在ECS实例启动时,cloud-init会自动生成系统的网络配置信息。
配置IP地址的方式
操作系统中配置IP地址的方式,包括默认的DHCP和static(静态配置)。在配置辅助私网IP时候,您需要根据实际情况选择配置方式。