辅助私网IP概述
当ECS实例弹性网卡(包括主网卡与辅助弹性网卡)的单一主私网IP无法满足您对多IP的需求时,您可以为ECS实例的网卡分配多个辅助私网IP,从而使单个ECS实例拥有多个私网IP。您可以参考下图来理解ECS实例网卡与私网IP的关系。

适用场景
辅助私网IP地址适用于以下场景: 
- 多应用场景:在ECS实例上部署了多个应用时,为每个应用分配独立的辅助私网IP地址,实现在同一台ECS实例上提供多项服务,提升实例的利用率。 
- 故障转移场景:当实例发生故障时,您可以将辅助弹性网卡从故障实例解绑并绑定至备用实例,通过其辅助私网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终端连接登录Linux实例(SSH)。 
- 查看当前网络配置信息和路由信息,确认配置需要的默认网关和子网掩码。 - 查看主私网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 #默认网关
            nameservers:
              addresses: [223.5.5.5, 223.6.6.6] #DNS
 
 - 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 #默认网关
            nameservers:
              addresses: [223.5.5.5, 223.6.6.6] #DNS
 
 
- 重启网络服务,使配置生效。 
 - 说明 - 如果您参考上述的- nmcli con方式完成配置,无需重启网络服务,NetworkManager会监控配置文件的变化并应用新的配置。
 
 
| 操作系统 | 重启服务命令 |  | Alibaba Cloud Linux 2CentOS 7Red Hat 7Anolis 7 SUSE Linux 11/12/15OpenSUSE 15/42
 | sudo service network restart
 或sudo systemctl restart network |  |  | sudo service network restart
 |  | Alibaba Cloud Linux 3CentOS 8 Red Hat 8Anolis 8Fedora 33/34/35
 | sudo systemctl restart NetworkManager或sudo reboot
 |  |  | sudo netplan apply
 |  | Ubuntu 14/16Debian 8/9/10/11
 | sudo systemctl restart networking或sudo reboot
 |  
 
- 再次执行步骤2的操作验证配置是否成功。  
 
Windows操作系统配置示例
- 远程连接Windows实例。 - 具体操作,请参见使用Workbench终端连接登录Windows实例(RDP)。 
- 查看当前的网络配置和路由信息,确认配置需要的默认网关和子网掩码。 - 打开命令提示符或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时候,您需要根据实际情况选择配置方式。