華為云計算 云知識 創(chuàng)建子網(wǎng)CreateSubnet
創(chuàng)建子網(wǎng)CreateSubnet

 

功能介紹

創(chuàng)建子網(wǎng)。

調(diào)試

您可以在API Explorer中調(diào)試該接口。

約束與限制

  • 網(wǎng)絡(luò)下存在IPv4子網(wǎng)的情況下,才可以創(chuàng)建IPv6子網(wǎng)。
  • VXLAN類型網(wǎng)絡(luò)下只能有一個IPv4的子網(wǎng)和一個IPv6的子網(wǎng)。

URI

POST /v1/{project_id}/subnets

參數(shù)說明請參見表1。
表1 參數(shù)說明

名稱

是否必選

說明

project_id

項目ID,獲取項目ID請參見獲取項目ID。

請求參數(shù)

表2 請求參數(shù)

名稱

是否必選

參數(shù)類型

說明

subnet

subnet object

subnet對象

表3 subnet對象

名稱

是否必選

參數(shù)類型

說明

name

String

  • 功能說明:子網(wǎng)名稱
  • 取值范圍:1-64個字符,支持數(shù)字、字母、中文、_(下劃線)、-(中劃線)、.(點)

description

String

  • 功能說明:子網(wǎng)描述
  • 取值范圍:0-255個字符,不能包含“<”和“>”。

cidr

String

  • 功能說明:子網(wǎng)的網(wǎng)段
  • 取值范圍:必須在vpc對應cidr范圍內(nèi)
  • 約束:必須是cidr格式。掩碼長度不能大于28

gateway_ip

String

  • 功能說明:子網(wǎng)的網(wǎng)關(guān)
  • 取值范圍:子網(wǎng)網(wǎng)段中的IP地址
  • 約束:必須是ip格式

ipv6_enable

Boolean

  • 功能說明:是否創(chuàng)建IPv6子網(wǎng)
  • 取值范圍:true(開啟),false(關(guān)閉)
  • 約束:不填時默認為false

dhcp_enable

Boolean

  • 功能說明:子網(wǎng)是否開啟dhcp功能
  • 取值范圍:true(開啟),false(關(guān)閉)
  • 約束:不填時默認為true。當設(shè)置為false時,會導致新創(chuàng)建的ECS無法獲取IP地址,Cloud-init無法注入帳號密碼,請謹慎操作。

primary_dns

String

  • 功能說明:子網(wǎng)dns服務(wù)器地址1
  • 約束:ip格式,不支持IPv6地址。不填時,默認為空

內(nèi)網(wǎng) DNS地址 請參見華為云提供的內(nèi)網(wǎng)DNS地址是多少?

可以通過查詢名稱服務(wù)器列表查看DNS服務(wù)器的地址。

secondary_dns

String

  • 功能說明:子網(wǎng)dns服務(wù)器地址2
  • 約束:ip格式,不支持IPv6地址。不填時,默認為空

內(nèi)網(wǎng)DNS地址請參見華為云提供的內(nèi)網(wǎng)DNS地址是多少?

可以通過查詢名稱服務(wù)器列表查看DNS服務(wù)器的地址。

dnsList

Array of strings

  • 功能說明:子網(wǎng)dns服務(wù)器地址的集合;如果想使用兩個以上dns服務(wù)器,請使用該字段
  • 約束:是子網(wǎng)dns服務(wù)器地址1跟子網(wǎng)dns服務(wù)器地址2的合集的父集,不支持IPv6地址。不填時,默認為空

內(nèi)網(wǎng)DNS地址請參見華為云提供的內(nèi)網(wǎng)DNS地址是多少?

可以通過查詢名稱服務(wù)器列表查看DNS服務(wù)器的地址。

availability_zone

String

  • 功能說明:子網(wǎng)所在的可用區(qū)標識,從終端節(jié)點獲取,參考終端節(jié)點(Endpoint)
  • 約束:系統(tǒng)存在的可用區(qū)標識;不填時,默認為空

vpc_id

String

子網(wǎng)所在VPC標識

extra_dhcp_opts

Array of extra_dhcp_opt objects

子網(wǎng)配置的NTP地址或租約時間,詳情請參見extra_dhcp_opt對象。

tags

Array of Strings

  • 功能說明:子網(wǎng)資源標簽。創(chuàng)建子網(wǎng)時,給子網(wǎng)添加資源標簽。
  • 取值范圍:最大10個標簽
    • key:標簽名稱。不能為空,長度不超過128個字符(當前控制臺操作key長度不超過36個字符),由英文字母、數(shù)字、下劃線、中劃線、中文字符組成,同一資源的key值不能重復。
    • value:標簽值。長度不超過255個字符(當前控制臺操作value長度不超過43個字符),由英文字母、數(shù)字、下劃線、點、中劃線、中文字符組成。
  • 格式:[key*value],每一個標簽的key和value之間用*連接
表4 extra_dhcp_opt對象

名稱

是否必選

參數(shù)類型

說明

opt_value

String

  • 功能說明:子網(wǎng)配置的NTP地址或子網(wǎng)配置的租約到期時間。
  • 約束:

    opt_name配置為“ntp”,則表示是子網(wǎng)ntp地址,目前只支持IPv4地址,每個IP地址以逗號隔開,IP地址個數(shù)不能超過4個,不能存在相同地址。該字段為null表示取消該子網(wǎng)NTP的設(shè)置,不能為“ ”(空字符串)。

    opt_name配置為“addresstime”,則該值表示是子網(wǎng)租約到期時間,取值格式有兩種,取-1,表示無限租約;數(shù)字+h,數(shù)字范圍是1~30000,比如5h,默認值為24h。

opt_name

String

  • 功能說明:子網(wǎng)配置的NTP地址名稱或子網(wǎng)配置的租約到期名稱。
  • 約束:目前只支持填寫字符串“ntp”或“addresstime”。

請求示例

  • 創(chuàng)建一個子網(wǎng),所在vpc的id為3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85,命名為subent,設(shè)置cidr為192.168.20.0/24,網(wǎng)關(guān)IP為192.168.20.1。
    POST https://{Endpoint}/v1/{project_id}/subnets
    
    {
        "subnet": {
            "name": "subnet",
            "description": "",
            "cidr": "192.168.20.0/24",
            "gateway_ip": "192.168.20.1",
            "ipv6_enable": true,
            "dhcp_enable": true,
            "primary_dns": "114.xx.xx.114",
            "secondary_dns": "114.xx.xx.115",
            "dnsList": [
                "114.xx.xx.114",
                "114.xx.xx.115"
            ],
            "availability_zone": "aa-bb-cc",
            "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85",
            "extra_dhcp_opts": [
                {
                    "opt_value": "10.100.0.33,10.100.0.34",
                    "opt_name": "ntp"
                },
                {
                    "opt_value": "24h",
                    "opt_name": "addresstime"
                }
            ]
        }
    }

響應參數(shù)

表5 響應參數(shù)

名稱

參數(shù)類型

說明

subnet

subnet object

subnet對象

表6 subnet對象

名稱

參數(shù)類型

說明

id

String

uuid形式的一個資源標識

name

String

  • 功能說明:子網(wǎng)名稱
  • 取值范圍:1-64個字符,支持數(shù)字、字母、中文、_(下劃線)、-(中劃線)、.(點)

description

String

  • 功能說明:子網(wǎng)描述
  • 取值范圍:0-255個字符,不能包含“<”和“>”。

cidr

String

  • 功能說明:子網(wǎng)的網(wǎng)段
  • 取值范圍:必須在vpc對應cidr范圍內(nèi)
  • 約束:必須是cidr格式。掩碼長度不能大于28

gateway_ip

String

  • 功能說明:子網(wǎng)的網(wǎng)關(guān)
  • 取值范圍:子網(wǎng)網(wǎng)段中的IP地址
  • 約束:必須是ip格式

ipv6_enable

Boolean

是否創(chuàng)建IPv6子網(wǎng)

cidr_v6

String

IPv6子網(wǎng)的網(wǎng)段,如果子網(wǎng)為IPv4子網(wǎng),則不返回此參數(shù)

gateway_ip_v6

String

IPv6子網(wǎng)的網(wǎng)關(guān),如果子網(wǎng)為IPv4子網(wǎng),則不返回此參數(shù)

dhcp_enable

Boolean

子網(wǎng)是否開啟dhcp功能

primary_dns

String

  • 功能說明:子網(wǎng)dns服務(wù)器地址1
  • 約束:ip格式,不支持IPv6地址。不填時,默認為空

secondary_dns

String

  • 功能說明:子網(wǎng)dns服務(wù)器地址2
  • 約束:ip格式,不支持IPv6地址。不填時,默認為空

dnsList

Array of strings

  • 功能說明:子網(wǎng)dns服務(wù)器地址的集合;如果想使用兩個以上dns服務(wù)器,請使用該字段
  • 約束:是子網(wǎng)dns服務(wù)器地址1跟子網(wǎng)dns服務(wù)器地址2的合集的父集,不支持IPv6地址。不填時,默認為空

availability_zone

String

  • 功能說明:子網(wǎng)所在的可用區(qū)標識,從終端節(jié)點獲取,參考終端節(jié)點(Endpoint)
  • 約束:系統(tǒng)存在的可用區(qū)標識;不填時,默認為空

vpc_id

String

子網(wǎng)所在VPC標識

status

String

  • 功能說明:子網(wǎng)的狀態(tài)。
  • 取值范圍:ACTIVE,UNKNOWN,ERROR
    • ACTIVE表示子網(wǎng)已掛載到VPC上
    • UNKNOWN表示子網(wǎng)還未掛載到VPC上
    • ERROR表示子網(wǎng)狀態(tài)故障
  • 創(chuàng)建子網(wǎng)的流程為:先創(chuàng)建子網(wǎng),然后在線程中將子網(wǎng)掛載在VPC上。

    在并發(fā)場景下,由于使用相同的cidr來創(chuàng)建子網(wǎng),底層發(fā)生校驗后使得掛載VPC失敗,回滾創(chuàng)建子網(wǎng)的過程,子網(wǎng)創(chuàng)建失敗。

    創(chuàng)建子網(wǎng)接口返回時,狀態(tài)為UNKNOWN。

neutron_network_id

String

對應網(wǎng)絡(luò)(OpenStack Neutron接口)id

neutron_subnet_id

String

對應子網(wǎng)(OpenStack Neutron接口)id

neutron_subnet_id_v6

String

對應IPv6子網(wǎng)(OpenStack Neutron接口)id,如果子網(wǎng)為IPv4子網(wǎng),則不返回此參數(shù)

extra_dhcp_opts

Array of extra_dhcp_opt objects

子網(wǎng)配置的NTP地址或租約時間,詳情請參見表7。

scope

String

子網(wǎng)作用域。

取值范圍:

  • center:表示作用域為中心
  • {azId}:表示作用域為具體的可用區(qū)

tenant_id

String

功能說明:項目ID。

created_at

String

  • 功能說明:資源創(chuàng)建時間,UTC時間
  • 格式:yyyy-MM-ddTHH:mm:ss

updated_at

String

  • 功能說明:資源更新時間,UTC時間
  • 格式:yyyy-MM-ddTHH:mm:ss
表7 extra_dhcp_opt對象

名稱

是否必選

參數(shù)類型

說明

opt_value

String

  • 功能說明:子網(wǎng)配置的NTP地址或子網(wǎng)配置的租約到期時間。
  • 約束:

    opt_name配置為“ntp”,則表示是子網(wǎng)ntp地址,目前只支持IPv4地址,每個IP地址以逗號隔開,IP地址個數(shù)不能超過4個,不能存在相同地址。該字段為null表示取消該子網(wǎng)NTP的設(shè)置,不能為“ ”(空字符串)。

    opt_name配置為“addresstime”,則該值表示是子網(wǎng)租約到期時間,取值格式有兩種,取-1,表示無限租約;數(shù)字+h,數(shù)字范圍是1~30000,比如5h,默認值為24h。

opt_name

String

  • 功能說明:子網(wǎng)配置的NTP地址名稱或子網(wǎng)配置的租約到期名稱。
  • 約束:目前只支持填寫字符串“ntp”或“addresstime”。

響應示例

{
    "subnet": {
        "id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d",
        "name": "subnet",
        "description": "",
        "cidr": "192.168.20.0/24",
        "dnsList": [
            "114.xx.xx.114",
            "114.xx.xx.115"
        ],
        "status": "UNKNOWN",
        "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85",
        "gateway_ip": "192.168.20.1",
        "ipv6_enable": true, 
        "cidr_v6": "2001:db8:a583::/64",
        "gateway_ip_v6": "2001:db8:a583::1",
        "dhcp_enable": true,
        "primary_dns": "114.xx.xx.114",
        "secondary_dns": "114.xx.xx.115",
        "availability_zone": "aa-bb-cc",
        "neutron_network_id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d",
        "neutron_subnet_id": "213cb9d-3122-2ac1-1a29-91ffc1231a12",
        "neutron_subnet_id_v6": "e0fa7de1-a6e2-44c9-b052-b9d8cebe93c4",  
        "extra_dhcp_opts": [
            {
                "opt_value": "10.100.0.33,10.100.0.34",
                "opt_name": "ntp"
            },
            {
                "opt_value": "24h",
                "opt_name": "addresstime"
            }
        ],
        "tenant_id": "087679f0aa80d32a2f4ec0172f5e902b",
        "created_at": "2022-12-15T02:42:07",
        "updated_at": "2022-12-15T02:42:07"
    }
}

狀態(tài)碼

請參見狀態(tài)碼

錯誤碼

請參考錯誤碼。