全部產品
Search
文件中心

Elastic Compute Service:輔助私網IP

更新時間:Dec 17, 2024

彈性網卡(包括主網卡和輔助彈性網卡)支援分配一個或多個輔助私網IP地址,以滿足您在多應用、容錯移轉和負載平衡等業務情境下的多IP的需求。本文介紹如何分配並配置輔助私網IP地址,以及回收輔助私網IP地址。

輔助私網IP概述

當ECS執行個體彈性網卡(包括主網卡與輔助彈性網卡)的單一主私網IP無法滿足您對多IP的需求時,您可以為ECS執行個體的網卡分配多個輔助私網IP,從而使單個ECS執行個體擁有多個私網IP。您可以參考下圖來理解ECS執行個體網卡與私網IP的關係。

適用情境

輔助私網IP地址適用於以下情境:

  • 多應用情境:在ECS執行個體上部署了多個應用時,您可以為每個應用程式指派各自的輔助私網IP地址,每個應用對外均呈現一個獨立的IP地址,實現在同一台ECS執行個體上提供多項服務,提升執行個體的利用率。

  • 容錯移轉情境:當執行個體發生故障時,您可以將輔助彈性網卡從故障執行個體解除綁定並綁定至備用執行個體,通過其輔助私網IP訪問的請求流量也隨之切換到備用執行個體,實現容錯移轉。

  • 負載平衡情境:通過為執行個體分配多個輔助私網IP地址,可以實現負載平衡機制,負載平衡器可以根據流量類型將請求分發到不同的私網IP地址,提高系統的延展性和效能。

注意事項

  • 單張彈性網卡最多支援分配的私網IP地址數量與其狀態有關。

    • 彈性網卡處於待綁定狀態時,最多支援分配10個私網IP地址。

    • 彈性網卡處於已綁定狀態時,最多支援分配的私網IP地址數量不能超過執行個體規格的支援上限。更多資訊,請參見執行個體規格類型系列執行個體規格指標明細中的單網卡私人IPv4地址數

  • 專用網路型別安全組可容納的私網IP地址數量存在限制,請合理分配輔助私網IP地址。更多資訊,請參見安全性群組使用限制

為彈性網卡添加輔助私網IP地址

步驟一:為彈性網卡分配輔助私網IP地址

您可以在控制台上目標彈性網卡(包括ECS執行個體的主網卡或輔助彈性網卡)的管理彈性網卡IP頁面進行輔助私網IP的增加或刪除。具體操作樣本如下:

說明

如有需要您也可以通過API的方式為網卡分配輔助私網IP(或IPv6)地址,請參見AssignPrivateIpAddressesAssignIpv6Addresses

  1. 登入ECS管理主控台

  2. 在左側導覽列,選擇網路與安全 > 彈性網卡

  3. 在頁面左側頂部,選擇目標資源所在的資源群組和地區。地區

  4. 彈性網卡頁面,找到待操作的彈性網卡,然後在操作列中單擊管理彈性網卡IP

  5. 管理彈性網卡IP對話方塊中,在輔助私網IPv4或者IPv6參數地區單擊增加,並根據需要分配IP地址。

    • 不設定:系統會從該彈性網卡的IPv4私網網段和IPv6私網網段中隨機分配IP地址。

    • 手動填寫:手動輸入輔助私網IP地址,確保取值在該彈性網卡的IPv4私網網段和IPv6私網網段中即可。

  6. 單擊確定,完成輔助私網IP地址分配。

  7. 確認目標彈性網卡的輔助私網IP正確分配。

    您可以通過查看ECS執行個體的彈性網卡詳情頁確認以上資訊,樣本如下:

    image

步驟二(條件可選):綁定彈性網卡。

當您選擇為輔助彈性網卡添加輔助私網IP時,需要確保輔助彈性網卡已經綁定至ECS執行個體並已經完成配置,具體操作,請參見綁定輔助彈性網卡配置輔助彈性網卡

本文樣本為ECS執行個體主網卡分配輔助私網IP,所以無需進行此步驟操作。

步驟三:配置作業系統識別輔助私網IP地址

為執行個體分配輔助私網IP地址後,您還需要根據作業系統類型和IP地址類型來配置執行個體的輔助私網IP地址。配置的具體操作因作業系統和IP地址類型而異。

配置樣本

說明
  • 本文以配置輔助私網IPv4地址為例說明,配置輔助私網IPv6地址的具體操作,請參見IPv6通訊

  • 本樣本中,網卡分配私網IPv4地址如下所示,您需要根據實際情況,修改下面命令或配置中的IP地址:

    網卡

    主私網IPv4地址

    輔助私網IPv4地址1

    輔助私網IPv4地址2

    主網卡

    192.168.1.201

    192.168.1.202

    192.168.1.203

操作前請確保對應的執行個體處於運行中(Running)狀態。具體操作,請參見啟動執行個體

本文提供了如下主流作業系統的配置步驟,請根據您的作業系統進行配置:

Linux作業系統配置樣本
  1. 遠端連線ECS執行個體。

    具體操作,請參見使用Workbench工具以SSH協議登入Linux執行個體

  2. 查看當前網路設定資訊和路由資訊,確認配置需要的預設閘道和子網路遮罩。

    查看主私網IPv4地址

    執行以下命令,查看網路設定資訊:

    ip a

    通過返回資訊,可以看到當前執行個體的網路設定資訊:

    image

    通過以上資訊可以看到目前網路設定資訊如下:

    • eth0:已啟用,且動態配置主私網IPv4地址192.168.1.201。

    查看子網路遮罩及網關

    執行以下命令,查看路由資訊:

    route -n

    通過返回資訊,可以看到:

    • 子網路遮罩(Genmask):255.255.255.0

    • 預設閘道(Geteway):192.168.1.253

    image

    結合以上資訊,可以看到當前網路設定資訊如下所示:

    網卡

    狀態

    預設閘道

    子網路遮罩

    主私網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(未識別需配置)

  3. 根據您的實際情況,選擇不同的方式配置輔助私網IPv4地址。

    使用nmcli con配置
    說明
    • NetworkManager 是 Linux 系統中一個用於管理網路連接和網路設定的守護進程,它提供了命令列工具nmcli,使得使用者可以輕鬆地管理網路連接。

    • 適用於所有通過NetworkManager管理網路服務的作業系統,包括但不限於Fedora、CentOS、RHEL、Ubuntu/Debian以及基於這些發行版的系統。

    • 樣本串連:網卡eth0對應的串連名稱,您需要根據實際情況修改串連名稱。

    1. 執行以下命令,建立檔案禁用cloud-init的網路設定功能,避免重啟後配置失效,更多資訊參見cloud-init自動初始化網路設定

      sudo vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg

      添加如下配置項:

      network: {config: disabled}
    2. 執行以下命令,查看當前網路連接資訊。

      nmcli con show

      不同Linux發行版網路連接的命名均不同,本文中樣本如下:

      image

    3. 執行以下命令,配置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 modify System\ eth0 ipv4.method manual
    4. 執行以下命令,啟用修改後的網路連接。

      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為例示範操作,您需要根據實際情況修改網路介面標識。

    1. 執行以下命令,確認網卡的主設定檔是否存在。每個網路介面都會有一個對應的設定檔,用於標識具體的網路介面。

      說明
      • 部分作業系統的網卡主設定檔由cloud-init自動產生,無需自己建立,如Alibaba Cloud Linux 3.2。

      • 部分作業系統的網卡主設定檔需要您手動建立並配置網卡基本資料,如CentOS 8.5。

      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
    2. 執行以下命令,配置網卡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地址操作類似,注意以下幾點即可:

    • 注意檔案名稱中序號的修改,不要重複。

    • 注意設定檔中DEVICE命名的修改,不要重複且和檔案命名中序號一致。

    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
    1. 執行以下命令,禁用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}
    2. 執行如下命令,編輯網路設定檔,配置網路介面配置資訊。

      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
    1. 執行以下命令,禁用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}
    2. 執行如下命令,編輯網路設定檔,配置網路介面配置資訊。

      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 #預設閘道
  4. 重啟網路服務,使配置生效。

    說明

    如果您參考上述的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

    • CentOS 6

    • Red Hat 6

    sudo service network restart

    • Alibaba Cloud Linux 3

    • CentOS 8

    • Red Hat 8

    • Anolis 8

    • Fedora 33/34/35

    sudo systemctl restart NetworkManagersudo reboot

    • Ubuntu 18/20/22

    • Debian 12

    sudo netplan apply

    • Ubuntu 14/16

    • Debian 8/9/10/11

    sudo systemctl restart networkingsudo reboot

  5. 再次執行步驟2的操作驗證配置是否成功。

    image

Windows作業系統配置樣本

說明
  • 適用的作業系統:Windows。

  • 樣本作業系統:Windows Server 2022。

  • 樣本網卡:以主網卡乙太網路為例示範操作。如果您的操作對象為輔助網卡,請根據實際情況修改網卡標識符,如乙太網路2

  1. 遠端連線Windows執行個體。

    具體操作,請參見使用Workbench工具以RDP協議登入Windows執行個體

  2. 查看當前的網路設定和路由資訊,確認配置需要的預設閘道和子網路遮罩。

    1. 開啟命令提示字元或Windows PowerShell工具。

    2. 執行以下命令,查看當前網卡及IP資訊。

      ipconfig

      通過返回資訊,可以看到目前網卡及IP識別資訊:

      image

    3. 可以看到目前網路設定和路由資訊如下:

      網卡

      網路遮罩

      預設閘道

      主私網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(未識別需配置)

  3. 開啟網路和共用中心。

  4. 單擊更改適配器設定

  5. 雙擊當前主網卡網路名稱乙太網路,然後在乙太網路狀態對話方塊中單擊屬性

    image

  6. 乙太網路屬性對話方塊中,雙擊網際網路通訊協定 (IP)版本4(TCP/IPv4)

    image

  7. 網際網路通訊協定 (IP)版本4(TCP/IPv4)屬性對話方塊中,選擇使用下面的IP地址,然後單擊進階

    重要

    此處改變了自動擷取IP的策略,完全為手動設定,因此下面的配置也需要配置網卡的主私網IP地址。否則會導致執行個體無法通過主私網IP遠端連線。

    image

  8. 進階TCP/IP設定對話方塊中,設定IP地址。

    1. IP地址地區,單擊添加,然後輸入已指派的乙太網路的主私網IP地址和輔助私網IP地址和查詢擷取的子網路遮罩

      本樣本中,輸入乙太網路申請的兩個輔助私網IP

    2. 預設閘道地區,單擊添加,然後輸入查詢擷取的預設閘道

      image

  9. 單擊確定儲存各對話方塊中的設定,完成輔助私網IPv4的配置。再次執行步驟2的操作驗證配置是否成功。

    image

其他動作系統配置樣本
Ubuntu 14/16、Debian 8/9/10/11

  1. 執行如下命令,編輯網路設定檔,配置網路介面資訊。

    sudo vi /etc/network/interfaces
    說明
    • 從Debian10部分版本開始,/etc/network/interfaces檔案通常只包含對/etc/network/interfaces.d/目錄下檔案的引用,而具體的網路介面配置則分散在interfaces.d目錄下的不同檔案中。

    • 您根據實際環境,選擇對應的設定檔即可,配置項基本相同。

    配置項樣本如下所示:

    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
  2. 重啟網路服務,使配置生效。

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地址之前,請確認以下資訊:

  • 彈性網卡已指派輔助私網IP地址。

  • 彈性網卡處於可用(Available)或者已綁定(InUse)狀態。

  • 回收主網卡上分配的輔助私網IP地址時,主網卡綁定的執行個體必須處於運行中(Running)或者已停止(Stopped)狀態。

操作步驟

說明

如有需要您也可以通過API的方式為彈性網卡回收一個或多個輔助私網IP(或IPv6)地址:UnassignPrivateIpAddressesUnassignIpv6Addresses

  1. 登入ECS管理主控台

  2. 在左側導覽列,選擇網路與安全 > 彈性網卡

  3. 在頁面左側頂部,選擇目標資源所在的資源群組和地區。地區

  4. 彈性網卡列表頁面,找到目標彈性網卡,在操作列,單擊管理彈性網卡IP

  5. 管理彈性網卡IP對話方塊的輔助私網IPv4地區,找到要回收的一個或多個輔助私網IP地址,單擊IP地址所在行右側的image.png表徵圖。

  6. 單擊確定

    重新整理列表,如果目標彈性網卡的IP地址列不再出現該IP地址,說明您已成功回收輔助私網IP地址。

擴充閱讀

cloud-init自動初始化網路設定

cloud-init是一款開源初始化工具,能夠為Linux作業系統提供初始化密碼、設定主機名稱、執行自訂指令碼等初始化配置能力。阿里雲所有公用鏡像已預設安裝cloud-init,在ECS執行個體啟動時,cloud-init會自動產生系統的網路設定資訊。

  • 網路設定檔中關於cloud-init的說明

    您可以在對應的網路設定檔中,看到關於cloud-init自動產生的說明。以Alibaba Cloud Linux 3.2的網路設定檔/etc/sysconfig/network-scripts/ifcfg-eth0為例說明:

    image

  • 禁用cloud-init的網路設定功能

    • 什麼時候需要禁用cloud-init的網路設定功能:以下情況下,您可能需要先禁用cloud-init的網路設定功能,否則在系統重啟時候,cloud-init自動產生的配置可能會覆蓋您自訂的網路設定。

      • 靜態配置網路:通過修改cloud-init自動建立的網路設定檔手動設定網路

      • 通過其他網路管理服務(如NetworkManager)來管理網路

    • 如何禁用cloud-init的網路設定功能:建立/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg檔案,並且添加配置network: {config: disabled}即可。

      重要

      關於cloud-init更詳細的說明,可以登入Linux執行個體系統查看/etc/cloud/cloud.cfg.d/README中的資訊。

配置IP地址的方式

作業系統中配置IP地址的方式,包括預設的DHCP和static(靜態配置)。在配置輔助私網IP時候,您需要根據實際情況選擇配置方式。

  • 靜態配置:需要手動設定必要的網路參數,如子網路遮罩、預設閘道、DNS伺服器位址等。

  • DHCP動態擷取:DHCP是一種網路通訊協定,允許網路中的裝置自動擷取IP地址、子網路遮罩、預設閘道、DNS伺服器位址等配置資訊。您也可以在保持DHCP動態擷取的前提下,為Linux執行個體配置輔助私網IP地址。