更新时间:2024-04-18 GMT+08:00

创建SNAT规则

功能介绍

创建SNAT规则。

接口约束

创建规则时,要求网关状态status = "ACTIVE"。

调用方法

请参见如何调用API

URI

POST /v3/{project_id}/private-nat/snat-rules

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目的ID。

最小长度:1

最大长度:36

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。 用户Token也就是调用获取用户Token获取请求认证接口的响应值,该接口是唯一不需要认证的接口。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。

最小长度:1

最大长度:10240

表3 请求Body参数

参数

是否必选

参数类型

描述

snat_rule

CreatePrivateSnatOption object

创建SNAT规则的请求体。

表4 CreatePrivateSnatOption

参数

是否必选

参数类型

描述

gateway_id

String

私网NAT网关实例的ID。

最小长度:36

最大长度:36

cidr

String

功能说明:规则匹配的CIDR。取值约束:与virsubnet_id参数二选一。

最小长度:9

最大长度:18

virsubnet_id

String

功能说明:规则匹配的子网的ID。 取值约束:与cidr参数二选一。

最小长度:36

最大长度:36

description

String

SNAT规则的描述。长度范围小于等于255个字符,不能包含“<”和“>”。

最小长度:0

最大长度:255

transit_ip_ids

Array of strings

功能说明:中转IP的ID的列表。 取值约束:中转IP的ID个数不能超过1个。

最小长度:36

最大长度:36

数组长度:1 - 1

响应参数

状态码: 201

表5 响应Body参数

参数

参数类型

描述

snat_rule

PrivateSnat object

SNAT规则的响应体。

request_id

String

请求ID。

最小长度:1

最大长度:36

表6 PrivateSnat

参数

参数类型

描述

id

String

SNAT规则的ID。

最小长度:36

最大长度:36

project_id

String

项目的ID。

最小长度:36

最大长度:36

gateway_id

String

私网NAT网关实例的ID。

最小长度:36

最大长度:36

cidr

String

功能说明:规则匹配的CIDR。 取值约束:

  • 与virsubnet_id参数二选一。

  • cidr不能与已有snat规则的网段相同。

最小长度:9

最大长度:18

virsubnet_id

String

功能说明:规则匹配的子网的ID。 取值约束:与cidr参数二选一。

最小长度:36

最大长度:36

description

String

SNAT规则的描述。长度范围小于等于255个字符,不能包含“<”和“>”。

最小长度:1

最大长度:36

transit_ip_associations

Array of AssociatedTransitIp objects

关联的中转IP详情列表。

数组长度:1 - 1

created_at

String

SNAT规则的创建时间,遵循UTC时间,格式是yyyy-mm-ddThh:mm:ssZ。

最小长度:1

最大长度:36

updated_at

String

SNAT规则的更新时间,遵循UTC时间,格式是yyyy-mm-ddThh:mm:ssZ。

最小长度:1

最大长度:36

enterprise_project_id

String

企业项目id

最小长度:1

最大长度:36

表7 AssociatedTransitIp

参数

参数类型

描述

transit_ip_id

String

中转IP的ID。

最小长度:36

最大长度:36

transit_ip_address

String

中转IP地址。

最小长度:7

最大长度:35

请求示例

创建SNAT规则,其中,SNAT规则的描述为my_snat_rule01,私网NAT网关实例的id为80da6f26-94eb-4537-97f0-5a56f4d04cfb,规则匹配的子网的id为5b9ea497-727d-4ad0-a99e-3984b3f5aaed。

POST https://{Endpoint}/v3/cfa563efb77d4b6d9960781d82530fd8/private-nat/snat-rules

{
  "snat_rule" : {
    "description" : "my_snat_rule01",
    "gateway_id" : "80da6f26-94eb-4537-97f0-5a56f4d04cfb",
    "virsubnet_id" : "5b9ea497-727d-4ad0-a99e-3984b3f5aaed",
    "transit_ip_ids" : [ "36a3049a-1682-48b3-b1cf-cb986a3350ef" ]
  }
}

响应示例

状态码: 201

创建SNAT规则成功。

{
  "snat_rule" : {
    "id" : "af4dbb83-7ca0-4ed1-b28b-668c1f9c6b81",
    "project_id" : "cfa563efb77d4b6d9960781d82530fd8",
    "description" : "snat rule description",
    "gateway_id" : "80da6f26-94eb-4537-97f0-5a56f4d04cfb",
    "cidr" : "",
    "virsubnet_id" : "5b9ea497-727d-4ad0-a99e-3984b3f5aaed",
    "transit_ip_associations" : [ {
      "transit_ip_id" : "36a3049a-1682-48b3-b1cf-cb986a3350ef",
      "transit_ip_address" : "172.20.1.10"
    } ],
    "created_at" : "2019-10-22T03:31:19",
    "updated_at" : "2019-10-22T03:31:19"
  },
  "request_id" : "2937502e-73f9-4ba5-ae75-2293a0b35fb8"
}

状态码

状态码

描述

201

创建SNAT规则成功。

错误码

请参见错误码