单张弹性网卡(包括主网卡和辅助弹性网卡)支持分配一个或多个辅助私网IP地址。本文介绍如何分配辅助私网IP地址,并在ECS实例内部配置辅助私网IP地址。

背景信息

分配辅助私网IP地址适用于以下场景:
  • 多应用场景:在ECS实例上托管了多个应用时,您可以为每个应用分配各自的辅助私网IP地址,每个应用对外均呈现一个独立的IP地址,实现在同一台ECS实例上提供多项服务,提升实例的利用率。
  • 故障转移场景:当实例发生故障时,您可以将辅助弹性网卡从故障实例解绑并绑定至备用实例,通过其辅助私网IP访问的请求流量也随之切换到备用实例,实现故障转移。
分配辅助私网IP地址存在如下使用限制:
  • 安全组限制:专有网络类型安全组可容纳的私网IP地址数量存在限制,请合理分配辅助私网IP地址。更多信息,请参见安全组使用限制
  • 弹性网卡限制:单张弹性网卡最多支持分配的私网IP地址数量与其状态有关。
    • 弹性网卡处于可用状态时,最多支持分配10个私网IP地址。
    • 弹性网卡处于已绑定状态时,最多支持分配的私网IP地址数量不能超过实例规格的支持上限。更多信息,请参见实例规格族

操作流程

  1. 完成准备工作。
    • 确保对应的实例处于运行中(Running)状态。具体操作,请参见启动实例
    • 确保已将辅助弹性网卡绑定至实例。具体操作,请参见绑定弹性网卡
  2. 在ECS管理控制台为弹性网卡分配辅助私网IP地址。
    您可以在弹性网卡页面、实例页面或者安全组页面完成分配操作。具体操作,请参见:
  3. 在实例内部配置已分配的辅助私网IP地址。
    本文介绍如何配置辅助私网IPv4地址,配置操作和操作系统类型以及IP地址类型有关。具体操作,请参见:
    说明 配置辅助私网IPv6地址的具体操作,请参见为Windows实例配置辅助私网IPv6地址为Linux实例配置辅助私网IPv6地址

在弹性网卡页面分配辅助私网IP地址

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择网络与安全 > 弹性网卡
  3. 在顶部菜单栏左上角处,选择地域。
  4. 弹性网卡页面,找到待操作的弹性网卡,然后在操作列中单击管理辅助私网IP
  5. 管理辅助私网IP对话框中,在辅助私网IPv4或者辅助私网IP(IPv6)参数区域单击增加,并根据需要分配IP地址。
    • 不设置:系统会从该弹性网卡的IPv4私网网段和IPv6私网网段中随机分配IP地址。
    • 手动填写:手动输入辅助私网IP地址,确保取值在该弹性网卡的IPv4私网网段和IPv6私网网段中即可。
    分配弹性网卡IP地址
  6. 单击确定

在实例页面分配辅助私网IP地址

在实例页面分配辅助私网IP地址时,接受分配的对象是实例的主网卡。

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择实例与镜像 > 实例
  3. 在顶部菜单栏左上角处,选择地域。
  4. 实例页面,找到待操作的实例,然后在操作列中选择更多 > 网络和安全组 > 管理辅助私网IP
  5. 管理辅助私网IP对话框,单击分配新IP,并根据需要分配IP地址。
    • 自动分配:保持默认,系统会从该弹性网卡的IPv4私网网段和IPv6私网网段中随机分配IP地址。
    • 手动分配:手动输入辅助私网IP地址,确保取值在该弹性网卡的IPv4私网网段和IPv6私网网段中即可。
    private-ip
  6. 单击确定

在安全组页面分配辅助私网IP地址

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择网络与安全 > 安全组
  3. 在顶部菜单栏左上角处,选择地域。
  4. 找到弹性网卡所在的安全组,在操作列中,单击管理弹性网卡
  5. 安全组内弹性网卡页面,找到目标辅助网卡,在操作列中,单击管理辅助私网IP
  6. 管理辅助私网IP对话框,单击分配新IP,并根据需要分配IP地址。
    • 自动分配:保持默认,系统会从该弹性网卡的IPv4私网网段和IPv6私网网段中随机分配IP地址。
    • 手动分配:手动输入辅助私网IP地址,确保取值在该弹性网卡的IPv4私网网段和IPv6私网网段中即可。
    private-ip
  7. 单击确定

为Windows实例配置辅助私网IPv4地址

  1. 远程连接ECS实例。
    关于连接方式的介绍,请参见连接方式概述
  2. 查询实例的子网掩码和默认网关。
    1. 打开命令提示符或Windows PowerShell工具。
    2. 运行ipconfig命令查询ECS实例的子网掩码和默认网关。
      返回示例如下图所示,当前网络连接名为以太网windows-viewip-original
  3. 打开网络和共享中心。
  4. 单击更改适配器设置
  5. 双击当前网络连接名,例如以太网,然后在以太网状态对话框中单击属性
  6. 以太网属性对话框中,双击Internet 协议版本4(TCP/IPv4)
  7. Internet 协议版本4(TCP/IPv4)属性对话框中,选择使用下面的IP地址,然后单击高级
  8. 高级TCP/IP设置对话框中,设置IP地址。
    1. IP地址区域,单击添加,然后输入已分配的IP地址和查询获取的子网掩码

      您可以重复该步骤为同一网卡适配器添加多个IP地址。

      添加IP地址
    2. 默认网关区域,单击添加,然后输入查询获取的默认网关
  9. 单击确定保存各对话框中的设置。
  10. 运行ipconfig命令查看配置效果。
    配置2个辅助私网IP的效果示例如下图所示。windows-viewip-new
说明

如果Windows实例配置辅助私网IP地址后无法访问公网,请参见为什么我的Windows实例设置辅助私网IP后,无法访问公网环境?

为Linux实例配置辅助私网IPv4地址(RHEL系列)

本章节步骤说明如下:
  • 适用的操作系统:Alibaba Cloud Linux 2/3、CentOS 6/7/8、Red Hat 6/7/8、Anolis 7/8、Fedora 33/34。
  • 示例网卡:以主网卡eth0为例演示操作。如果您的操作对象为辅助弹性网卡,请根据实际情况修改网卡标识符。
  1. 远程连接ECS实例。
    关于连接方式的介绍,请参见连接方式概述
  2. 使用ifconfig命令查询子网掩码,并使用route -n命令查询默认网关。
    查询示例如下图所示。view-ips

    其中,netmask对应的255.255.**.**为IPv4子网掩码,Gateway对应的192.**.**.253为默认网关。

    说明 如果部分Linux发行版不支持ifconfig命令,可以使用ip aip addr show命令。
  3. 修改网络配置文件。
    • 如果配置单个私网IPv4地址,运行vi /etc/sysconfig/network-scripts/ifcfg-eth0:0命令,并添加相应的配置项。
      配置项示例如下所示:
      DEVICE=eth0:0
      TYPE=Ethernet
      BOOTPROTO=static
      ONBOOT=yes
      IPADDR=<分配的辅助私网IPv4地址1>
      NETMASK=<IPv4子网掩码>
    • 如果需要继续配置更多私网IPv4地址,递增DEVICE对应的序号并继续添加配置项即可。
      例如运行vi /etc/sysconfig/network-scripts/ifcfg-eth0:1命令,添加配置项示例如下所示:
      DEVICE=eth0:1
      TYPE=Ethernet
      BOOTPROTO=static
      ONBOOT=yes
      IPADDR=<分配的辅助私网IPv4地址2>
      NETMASK=<IPv4子网掩码>
  4. 根据操作系统类型运行相应的命令使配置生效。
    操作系统 命令
    • Alibaba Cloud Linux 2
    • CentOS 7
    • Red Hat 7
    • Anolis 7
    运行以下任一种命令重启网络服务:
    • service network restart
    • systemctl restart network
    • CentOS 6
    • Red Hat 6
    运行service network restart命令重启网络服务。
    • Alibaba Cloud Linux 3
    • CentOS 8
    • Red Hat 8
    • Anolis 8
    • Fedora 33/34
    按以下步骤操作:
    1. 运行systemctl restart NetworkManager命令重启网络服务。
    2. 运行nmcli device reapply eth0命令重连eth0网卡,或者运行reboot命令重启实例。
  5. 运行ifconfig查看配置效果。
    配置2个辅助私网IP的效果示例如下图所示。add-secip

为Linux实例配置辅助私网IPv4地址(Debian系列)

本章节步骤说明如下:
  • 适用的操作系统:Ubuntu 18/20、Ubuntu 14/16、Debian 8/9/10。
  • 示例网卡:以主网卡eth0为例演示操作。如果您的操作对象为辅助弹性网卡,请根据实际情况修改网卡标识符。
  1. 远程连接ECS实例。
    关于连接方式的介绍,请参见连接方式概述
  2. 使用ifconfig命令查询子网掩码,并使用route -n命令查询默认网关。
    查询示例如下图所示。view-ips

    其中,netmask对应的255.255.**.**为IPv4子网掩码,Gateway对应的192.**.**.253为默认网关。

    说明 如果部分Linux发行版不支持ifconfig命令,可以使用ip aip addr show命令。
  3. 根据实例操作系统,选择配置辅助私网IP地址的方式。
    • Debian系列:Ubuntu 18/20
      1. 禁用cloud-init网络配置,运行vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg命令,并添加相应的配置项。
        配置项示例如下所示:
        network: {config: disabled}
      2. 运行vim /etc/netplan/50-cloud-init.yaml命令打开网络配置文件,将原有的DHCP方式改为静态IP。
        配置项示例如下所示:
        network:
            version: 2
            ethernets:
                eth0:
                    match:
                        macaddress: 00:16:3e:36:**:**
                    addresses:
                      - <主私网IPv4地址>/<掩码位>
                      - <分配的辅助私网IPv4地址1>/<掩码位>
                      - <分配的辅助私网IPv4地址2>/<掩码位>
                    gateway4: <默认网关>
        说明 其中,<掩码位>替换为子网掩码对应的掩码位,例如子网掩码255.255.255.0对应掩码位/24
      3. 运行netplan apply命令重启网络服务。
      4. 运行ip -a查看配置效果。
        配置2个辅助私网IP的效果示例如下图所示。ubuntu18-viewsecip
    • Debian系列:Ubuntu 14/16、Debian 8/9/10
      1. 运行vi /etc/network/interfaces命令打开网络配置文件,并添加相应的配置项。
        配置项示例下所示:
        auto eth0:0
        iface eth0:0 inet static
        address <分配的辅助私网IPv4地址1>
        netmask <IPv4掩码>
        
        auto eth0:1
        iface eth0:1 inet static
        address <分配的辅助私网IPv4地址2>
        netmask <IPv4掩码>
      2. 运行reboot命令重启实例。
      3. 运行ifconfig命令查看配置效果。
        配置2个辅助私网IP后的效果如下图所示。ubuntu-debian-secip

为Linux实例配置辅助私网IPv4地址(SLES系列)

本章节步骤说明如下:
  • 适用的操作系统:SUSE 11/12/15、OpenSUSE 15/42。
  • 示例网卡:以主网卡eth0为例演示操作。如果您的操作对象为辅助弹性网卡,请根据实际情况修改网卡标识符。
  1. 远程连接ECS实例。
    关于连接方式的介绍,请参见连接方式概述
  2. 使用ifconfig命令查询子网掩码,并使用route -n命令查询默认网关。
    查询示例如下图所示。view-ips

    其中,netmask对应的255.255.**.**为IPv4子网掩码,Gateway对应的192.**.**.253为默认网关。

    说明 如果部分Linux发行版不支持ifconfig命令,可以使用ip aip addr show命令。
  3. 运行vi /etc/sysconfig/network/ifcfg-eth0命令打开网络配置文件,添加如下配置项。
    IPADDR_0=<分配的辅助私网IPv4地址1>
    NETMASK_0=<IPv4子网掩码>
    LABEL_0='0'
    
    IPADDR_1=<分配的辅助私网IPv4地址2>
    NETMASK_1=<IPv4子网掩码>
    LABEL_1='1'
  4. 运行service network restartsystemctl restart network命令重启网络服务。
  5. 运行ifconfig查看配置效果。
    配置2个辅助私网IP后的效果如下图所示。suse-secip