文档首页/ 虚拟私有云 VPC/ 用户指南/ 虚拟IP地址/ 将虚拟IP绑定至实例或者EIP
更新时间:2025-10-15 GMT+08:00

将虚拟IP绑定至实例或者EIP

操作场景

您可以参考以下操作,将虚拟IP绑定至实例或者弹性公网IP,实例包括云服务器、网卡以及二层连接。
  • 将虚拟IP绑定至实例,根据您不同的业务需求,您可以任意组合虚拟IP和实例:
    • 为一个实例同时绑定一个或者多个虚拟IP
    • 将一个虚拟IP同时绑定至多个实例
  • 将虚拟IP绑定至弹性公网IP,实现公网访问需求。

约束与限制

建议一个ECS绑定的虚拟IP数量不超过8个。如果一个ECS绑定多个虚拟IP,通常不同的虚拟IP承载不同业务,业务过多的情况下,不同业务可能会导致云服务器超负荷从而影响实际体验。

登录控制台为虚拟IP绑定弹性公网IP或实例

  1. 进入子网列表页面
  2. 在子网列表中,单击虚拟IP所属子网的名称。

    进入子网详情页面。

  3. 在“IP地址管理”页签,执行以下操作,为虚拟IP绑定弹性公网IP
    1. 在虚拟IP所在行的操作列下,单击“绑定弹性公网IP”。

      弹出“绑定弹性公网IP”对话框。

    2. 在对话框中,选择弹性公网IP ,并单击“确定”。

      返回虚拟IP列表中,可以看到已绑定的弹性公网IP

  4. 在“IP地址管理”页签,执行以下操作,为虚拟IP绑定实例。
    1. 在虚拟IP所在行的操作列下,单击“绑定实例”。

      弹出“绑定实例”对话框。

    2. 在对话框中,选择实例 ,并单击“确定”。

      返回虚拟IP列表中,可以看到已绑定的实例。

登录ECS配置虚拟IP地址

当为一个ECS绑定一个虚拟IP或者多个虚拟IP时,在控制台执行完绑定虚拟IP的操作后,您还需要参考以下章节,登录弹性云服务器手工配置虚拟IP地址。

本文提供以下操作系统的配置示例,其他操作系统,请您参考对应官网帮助文档进行配置。
  • Linux系统:CentOS 8.2 64bit、Ubuntu 22.04 server 64bit、Huawei Cloud EulerOS 2.0 标准版 64位、Debian 12.0.0 64bit、SUSE Linux Enterprise Server 15 SP5 64bit
  • Windows系统:Windows Server
以下操作以“CentOS 8.2 64bit”为例,供您参考。
  1. 执行以下命令,查看并记录需要绑定虚拟IP的网卡及对应连接。

    nmcli connection

    回显类似如下信息:
    [root@ecs-centos ~]# nmcli connection
    NAME         UUID                                  TYPE      DEVICE 
    System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
    System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  --     
    System eth2  3a73717e-65ab-93e8-b518-24f5af32dc0d  ethernet  --     
    System eth3  c5ca8081-6db2-4602-4b46-d771f4330a6d  ethernet  --     
    System eth4  84d43311-57c8-8986-f205-9c78cd6ef5d2  ethernet  -- 

    本示例的回显信息说明如下:

    • DEVICE列的eth0为需要绑定虚拟IP的网卡。
    • NAME列的System eth0为网卡对应的连接。
  2. 执行以下命令,在目标网卡连接中添加虚拟IP。

    nmcli connection modify "网卡对应的连接名称" +ipv4.addresses 虚拟IP地址

    参数说明如下:

    • 网卡对应的连接名称:为1中查到的网卡对应的连接,本示例中为System eth0
    • 虚拟IP地址:待添加的虚拟IP地址,如果一次添加多个虚拟IP地址,多个虚拟IP地址之间用“,”隔开。
    命令示例:
    • 添加单个虚拟IP:nmcli connection modify "System eth0" +ipv4.addresses 192.168.0.22
    • 添加多个虚拟IP:nmcli connection modify "System eth0" +ipv4.addresses 192.168.0.22,192.168.0.23
  3. 执行以下命令,使2的配置生效。

    nmcli connection up "网卡对应的连接名称"

    命令示例:

    nmcli connection up "System eth0"

    回显类似如下信息:
    [root@ecs-centos ~]# nmcli connection up "System eth0"
    Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
  4. 执行以下命令,检查虚拟IP配置是否成功。

    ip a

    回显类似如下信息,可以看到eth0网卡下存在虚拟IP地址,为192.168.0.22
    [root@ecs-centos ~]# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether fa:16:3e:54:ac:fa brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.22/32 scope global noprefixroute eth0
           valid_lft forever preferred_lft forever
        inet 192.168.0.78/24 brd 192.168.0.255 scope global dynamic noprefixroute eth0
           valid_lft 315359994sec preferred_lft 315359994sec
        inet6 fe80::f816:3eff:fe54:acfa/64 scope link 
           valid_lft forever preferred_lft forever

    以上方法配置完成后,弹性云服务器重启后,配置不会丢失。

    如果您需要删除已添加的虚拟IP,可以使用以下方法:

    1. 在目标网卡连接中删除虚拟IP。

      nmcli connection modify "网卡对应的连接名称" -ipv4.addresses 虚拟IP地址

      一次删除多个虚拟IP地址时,多个IP之间用“,”隔开,命令示例:
      • 删除单个虚拟IP:nmcli connection modify "System eth0" -ipv4.addresses 192.168.0.22
      • 删除多个虚拟IP:nmcli connection modify "System eth0" -ipv4.addresses 192.168.0.22,192.168.0.23
    2. 参考3,使删除操作生效。
以下操作以“Ubuntu 22.04 server 64bit”为例,当弹性云服务器的操作系统为Ubuntu 22Ubuntu 20时,请您参考下述方法。
  1. 执行以下命令,查看并记录需要绑定虚拟IP的网卡。

    ifconfig

    回显类似如下信息,本示例中绑定虚拟IP的网卡名称为eth0
    root@ecs-X-ubantu:~# ifconfig
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 172.16.0.210  netmask 255.255.255.0  broadcast 172.16.0.255
            inet6 fe80::f816:3eff:fe01:f1c3  prefixlen 64  scopeid 0x20<link>
            ether fa:16:3e:01:f1:c3  txqueuelen 1000  (Ethernet)
            RX packets 43915  bytes 63606486 (63.6 MB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 3364  bytes 455617 (455.6 KB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    ...
  2. 执行以下命令,进入“/etc/netplan”目录。

    cd /etc/netplan

  3. 执行以下命令,为目标网卡添加虚拟IP地址。
    1. 执行以下命令,打开配置文件“01-netcfg.yaml”。

      vim 01-netcfg.yaml

    2. 按i进入编辑模式。
    3. 在对应网卡配置区域内,添加虚拟IP地址。

      本示例为eth0添加虚拟IP地址,待添加内容如下:

      addresses:

      - 172.16.0.26/32

      添加后文件内容如下:
      network:
          version: 2
          renderer: NetworkManager
          ethernets:
              eth0:
                  dhcp4: true
                  addresses:
                  - 172.16.0.26/32
              eth1:
                  dhcp4: true
              eth2:
                  dhcp4: true
              eth3:
                  dhcp4: true
              eth4:
                  dhcp4: true
    4. 添加完成后,按“ESC”,并输入“:wq!”,保存后退出文件。
  4. 执行以下命令,使3的配置生效。

    netplan apply

  5. 执行以下命令,检查虚拟IP配置是否成功。

    ip a

    回显类似如下信息,可以看到eth0网卡下存在虚拟IP地址,为172.16.0.26
    root@ecs-X-ubantu:/etc/netplan# ip a
    ...
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
        link/ether fa:16:3e:01:f1:c3 brd ff:ff:ff:ff:ff:ff
        altname enp0s3
        altname ens3
        inet 172.16.0.26/32 scope global noprefixroute eth0
           valid_lft forever preferred_lft forever
        inet 172.16.0.210/24 brd 172.16.0.255 scope global dynamic noprefixroute eth0
           valid_lft 107999971sec preferred_lft 107999971sec
        inet6 fe80::f816:3eff:fe01:f1c3/64 scope link 
           valid_lft forever preferred_lft forever

    以上方法配置完成后,弹性云服务器重启后,配置不会丢失。

    如果您需要删除已添加的虚拟IP,可以使用以下方法:

    1. 参考3,打开配置文件“01-netcfg.yaml”,并删除对应网卡下虚拟IP的地址。
    2. 参考4,使删除操作生效。
以下操作以“Huawei Cloud EulerOS 2.0 标准版 64位”为例,供您参考。
  1. 执行以下命令,查看并记录需要绑定虚拟IP的网卡及对应连接。

    nmcli connection

    回显类似如下信息:
    [root@ecs-hce ~]# nmcli connection
    NAME         UUID                                  TYPE      DEVICE 
    System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
    System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  --     
    System eth2  3a73717e-65ab-93e8-b518-24f5af32dc0d  ethernet  --     
    System eth3  c5ca8081-6db2-4602-4b46-d771f4330a6d  ethernet  --     
    System eth4  84d43311-57c8-8986-f205-9c78cd6ef5d2  ethernet  --  

    本示例的回显信息说明如下:

    • DEVICE列的eth0为需要绑定虚拟IP的网卡。
    • NAME列的System eth0为网卡对应的连接。
  2. 执行以下命令,在目标网卡连接中添加虚拟IP。

    nmcli connection modify "网卡对应的连接名称" +ipv4.addresses 虚拟IP地址

    参数说明如下:

    • 网卡对应的连接名称:为1中查到的网卡对应的连接,本示例中为System eth0
    • 虚拟IP地址:待添加的虚拟IP地址,如果一次添加多个虚拟IP地址,多个虚拟IP地址之间用“,”隔开。
    命令示例:
    • 添加单个虚拟IP:nmcli connection modify "System eth0" +ipv4.addresses 192.168.0.23
    • 添加多个虚拟IP:nmcli connection modify "System eth0" +ipv4.addresses 192.168.0.23,192.168.0.25
  3. 执行以下命令,使2的配置生效。

    nmcli connection up "网卡对应的连接名称"

    命令示例:

    nmcli connection up "System eth0"

    回显类似如下信息:
    [root@ecs-hce ~]# nmcli connection up "System eth0"
    Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
  4. 执行以下命令,检查虚拟IP配置是否成功。

    ip a

    回显类似如下信息,可以看到eth0网卡下存在虚拟IP地址,为192.168.0.23
    [root@ecs-hce ~]# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether fa:16:3e:54:ac:af brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.23/32 scope global noprefixroute eth0
           valid_lft forever preferred_lft forever
        inet 192.168.0.3/24 brd 192.168.0.255 scope global dynamic noprefixroute eth0
           valid_lft 315359982sec preferred_lft 315359982sec
        inet6 fe80::f816:3eff:fe54:acaf/64 scope link 
           valid_lft forever preferred_lft forever

    以上方法配置完成后,弹性云服务器重启后,配置不会丢失。

    如果您需要删除已添加的虚拟IP,可以使用以下方法:

    1. 在目标网卡连接中删除虚拟IP。

      nmcli connection modify "网卡对应的连接名称" -ipv4.addresses 虚拟IP地址

      一次删除多个虚拟IP地址时,多个IP之间用“,”隔开,命令示例:
      • 删除单个虚拟IP:nmcli connection modify "System eth0" -ipv4.addresses 192.168.0.22
      • 删除多个虚拟IP:nmcli connection modify "System eth0" -ipv4.addresses 192.168.0.22,192.168.0.23
    2. 参考3,使删除操作生效。
以下操作以“Debian 12.0.0 64bit”为例,供您参考。
  1. 执行以下命令,查看并记录需要绑定虚拟IP的网卡及对应连接。

    nmcli connection

    回显类似如下信息:
    root@ecs-debian:~# nmcli connection
    NAME             UUID                                  TYPE      DEVICE 
    Ifupdown (eth0)  681b428f-beaf-8932-dce4-687ed5bae28e  ethernet  eth0   
    lo               03e619be-07fa-4994-86dc-7b434c9646b7  loopback  lo     
    Ifupdown (eth1)  7b635ed6-2640-7ad8-675d-744db12dd9fa  ethernet  --     
    Ifupdown (eth2)  226544c9-6fc1-ece7-546d-3ee32748889b  ethernet  --     
    Ifupdown (eth3)  7f363dc1-9ded-33e4-2e54-4d44c6c458d1  ethernet  --     
    Ifupdown (eth4)  9186222c-4821-e5d9-f5fd-35125fc70b0a  ethernet  -- 

    本示例的回显信息说明如下:

    • DEVICE列的eth0为需要绑定虚拟IP的网卡。
    • NAME列的Ifupdown (eth0)为网卡对应的连接,表示是由传统的ifupdown工具管理,通过/etc/network/interfaces配置网卡信息。
  1. 执行以下命令,为目标网卡添加虚拟IP地址。
    1. 执行以下命令,打开配置文件。

      vim /etc/network/interfaces

    2. i进入编辑模式。
    3. 在对应网卡配置区域内,添加虚拟IP地址。

      本示例为eth0添加虚拟IP地址,待添加内容如下:

      up ip addr add 192.168.0.22/32 dev eth0

      其中,192.168.0.22/32为虚拟IP地址,请您根据实际情况配置。

      添加后文件内容如下:
      auto eth0
      iface eth0 inet dhcp
          up ip addr add 192.168.0.22/32 dev eth0

      添加多个虚拟IP,则按需每行添加一个即可,例如添加192.168.0.22和192.168.0.23两个虚拟IP,增加如下内容:

      up ip addr add 192.168.0.22/32 dev eth0

      up ip addr add 192.168.0.23/32 dev eth0

    4. 添加完成后,按“ESC”,并输入“:wq!”,保存后退出文件。
  2. 执行以下命令,检查网络服务状态。

    systemctl is-enabled networking

    回显类似如下信息,输出信息不是enabled,请继续执行4,如果回显信息是enabled,则无需执行4
    root@ecs-debian:~# systemctl is-enabled networking
    disabled
  3. 执行以下命令设置开机自启, 确保重启后配置依旧生效。

    systemctl enable networking

    回显类似如下信息:
    root@ecs-debian:~# systemctl enable networking
    Synchronizing state of networking.service with SysV service script with /lib/systemd/systemd-sysv-install.
    Executing: /lib/systemd/systemd-sysv-install enable networking
    Created symlink /etc/systemd/system/multi-user.target.wants/networking.service → /lib/systemd/system/networking.service.
    Created symlink /etc/systemd/system/network-online.target.wants/networking.service → /lib/systemd/system/networking.service.
  4. 执行以下命令,重启ECS使2的配置生效。

    reboot

  5. 执行以下命令,检查虚拟IP配置是否成功。

    ip a

    回显类似如下信息,可以看到eth0网卡下存在虚拟IP地址,为192.168.0.22
    root@ecs-debian:~# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host noprefixroute 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether fa:16:3e:54:ac:c9 brd ff:ff:ff:ff:ff:ff
        altname enp0s3
        altname ens3
        inet 192.168.0.29/24 brd 192.168.0.255 scope global dynamic noprefixroute eth0
           valid_lft 315358226sec preferred_lft 315358226sec
        inet 192.168.0.22/32 scope global eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::c29f:1bdd:5027:6acc/64 scope link noprefixroute 
           valid_lft forever preferred_lft forever

    以上方法配置完成后,弹性云服务器重启后,配置不会丢失。

    如果您需要删除已添加的虚拟IP,可以使用以下方法:

    1. 参考2,打开配置文件,并删除对应网卡下虚拟IP的地址配置信息。
    2. 参考5,重启ECS使删除操作生效。
以下操作以“SUSE Linux Enterprise Server 15 SP5 64bit”为例,供您参考。
  1. 执行以下命令,查看并记录需要绑定虚拟IP的网卡及对应连接。

    ip a

    回显类似如下信息,本示例中绑定虚拟IP的网卡名称为eth0
    ecs-suse:~ # ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether fa:16:3e:54:ac:eb brd ff:ff:ff:ff:ff:ff
        altname enp0s3
        altname ens3
        inet 192.168.0.63/24 brd 192.168.0.255 scope global eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::f816:3eff:fe54:aceb/64 scope link 
           valid_lft forever preferred_lft forever
  1. 执行以下命令,为目标网卡添加虚拟IP地址。
    1. 执行以下命令,打开配置文件。

      vim /etc/sysconfig/network/ifcfg-eth0

    2. i进入编辑模式。
    3. 在对应网卡配置区域内,添加虚拟IP地址。

      本示例为eth0添加虚拟IP地址,待添加内容如下:

      IPADDR_1=192.168.0.22

      NETMASK_1=255.255.255.0

      其中,192.168.0.22为虚拟IP地址,请您根据实际情况配置;255.255.255.0为虚拟IP的掩码,固定值无需修改。

      添加后文件内容如下:
      DEVICE="eth0"
      BOOTPROTO="dhcp"
      STARTMODE="auto"
      TYPE="Ethernet"
      IPADDR_1=192.168.0.22
      NETMASK_1=255.255.255.0

      添加多个虚拟IP,则按需每行添加一个即可,例如添加192.168.0.22和192.168.0.23两个虚拟IP,增加如下内容:

      IPADDR_1=192.168.0.22

      NETMASK_1=255.255.255.0

      IPADDR_2=192.168.0.23

      NETMASK_2=255.255.255.0

    4. 添加完成后,按“ESC”,并输入“:wq!”,保存后退出文件。
  2. 执行以下命令,重启网络服务使2的配置生效。

    systemctl restart network

  3. 执行以下命令,检查虚拟IP配置是否成功。

    ip a

    回显类似如下信息,可以看到eth0网卡下存在虚拟IP地址,为192.168.0.22
    ecs-suse:~ # ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether fa:16:3e:54:ac:eb brd ff:ff:ff:ff:ff:ff
        altname enp0s3
        altname ens3
        inet 192.168.0.22/24 brd 192.168.0.255 scope global eth0
           valid_lft forever preferred_lft forever
        inet 192.168.0.63/24 brd 192.168.0.255 scope global secondary eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::f816:3eff:fe54:aceb/64 scope link 
           valid_lft forever preferred_lft forever

    以上方法配置完成后,弹性云服务器重启后,配置不会丢失。

    如果您需要删除已添加的虚拟IP,可以使用以下方法:

    1. 参考2,打开配置文件,并删除对应网卡下虚拟IP的地址配置信息。
    2. 参考3,重启网络服务使删除操作生效。

以下操作以“Windows Server”为例,供您参考。

  1. 在“控制面板 > 网络和共享中心”路径下,单击对应的本地连接。
  2. 在打开的本地连接页面中,单击“属性”。
  3. 在“网络”页签中选择“Internet 协议版本 4 (TCP/IPv4)”。
  4. 单击“属性”。
  5. 选择“使用下面的IP地址”,IP地址配置为弹性云服务器的私有IP地址,例如:10.0.0.101。
    图1 配置私有IP地址
  6. 单击“高级”。
  7. 在“IP设置”页签内“IP地址”区域,单击“添加”。

    添加虚拟IP地址,例如:10.0.0.154。

    图2 配置虚拟IP地址
  8. 单击“确定”,保存更改。
  9. 在“开始”菜单中打开Windows命令行窗口,执行以下命令确认是否配置了虚拟IP地址。

    ipconfig /all

    回显样例中IPv4 Address包含虚拟IP地址10.0.0.154,表示弹性云服务器内部网卡的虚拟IP地址配置正常。