调用ModifyForwardEntry接口修改指定的DNAT条目。

使用说明

  • ModifyForwardEntry接口属于异步接口,即系统会先返回一个请求ID,但DNAT条目并未修改完成,系统后台的修改任务仍在进行。您可以调用DescribeForwardTableEntries查询DNAT条目的状态:
    • 当DNAT条目处于Pending状态时,表示DNAT条目正在修改中,在该状态下,您只能执行查询操作,不能执行其他操作。
    • 当DNAT条目处于Available状态时,表示DNAT条目修改完成。
  • ModifyForwardEntry接口在同一个DNAT条目下不支持并发修改指定的DNAT条目。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ModifyForwardEntry

系统规定参数。取值:ModifyForwardEntry

ForwardTableId String ftb-8vbx8xu2lqj9qb334****

DNAT条目所属的DNAT列表的ID。

ForwardEntryId String fwd-8vbn3bc8roygjp0gy****

要修改的DNAT条目的ID。

ExternalIp String 116.85.XX.XX
  • 当修改公网NAT网关的DNAT条目时,该参数为提供公网访问的公网IP地址。
  • 当修改VPC NAT网关的DNAT条目时,该参数为供外部网络访问的NAT IP地址。
ExternalPort String 80
  • 当修改公网NAT网关的DNAT条目时,该参数为DNAT条目中进行端口转发的外部端口或端口段。
    • 修改的端口范围需要在1~65535之间。
    • 如果需要修改端口段,请在输入时以正斜线(/)隔开起始端口,例如10/20
    • 如果需要同时修改ExternalPortInternalPort,而且ExternalPort为端口段,则InternalPort也需要设置为端口段,且端口段的端口个数相同,例如ExternalPort设置为10/20InternalPor设置为80/90
  • 当修改VPC NAT网关的DNAT条目时,该参数为被外部网络访问的端口,取值范围:1~65535
InternalIp String 10.0.0.78
  • 当修改公网NAT网关的DNAT条目时,该参数为通过DNAT条目进行公网通信的ECS实例的私网IP地址。
  • 当修改VPC NAT网关的DNAT条目时,该参数为需要通过DNAT规则进行通信的私网IP地址。
InternalPort String 80
  • 当修改公网NAT网关的DNAT条目时,该参数为DNAT条目中进行端口转发的内部端口或端口段,取值范围:1~65535
  • 当修改VPC NAT网关的DNAT条目时,该参数为需要映射的目标ECS实例端口,取值范围:1~65535
IpProtocol String TCP

协议类型,取值:

  • TCP:转发TCP协议的报文。
  • UDP:转发UDP协议的报文。
  • Any:转发所有协议的报文。
ForwardEntryName String test

修改后的DNAT条目名称。

长度为2~128个字符,必须以字母或中文开头,但不能以http://https://开头。

RegionId String cn-hangzhou

NAT网关所在的地域ID。

您可以通过调用DescribeRegions接口获取地域ID。

ClientToken String 123e4567-e89b-12d3-a456-426655440000

客户端Token,用于保证请求的幂等性。

从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。

说明 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。
PortBreak Boolean false

是否开启端口突破,取值:

  • true:开启端口突破。
  • false:不开启端口突破。当DNAT条目和SNAT条目使用同一个公网IP地址时,如果您需要配置大于1024的端口号,您需要指定PortBreaktrue

返回数据

名称 类型 示例值 描述
RequestId String 2315DEB7-5E92-423A-91F7-4C1EC9AD97C3

请求ID。

示例

请求示例

http(s)://[Endpoint]/?Action=ModifyForwardEntry
&ForwardTableId=ftb-8vbx8xu2lqj9qb334****
&ForwardEntryId=fwd-8vbn3bc8roygjp0gy****
&ExternalIp=116.85.XX.XX
&ExternalPort=80
&InternalIp=10.0.0.78
&InternalPort=80
&IpProtocol=TCP
&ForwardEntryName=test
&RegionId= cn-hangzhou
&ClientToken=123e4567-e89b-12d3-a456-426655440000
&PortBreak=false
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<ModifyForwardEntryResponse>
    <RequestId>2315DEB7-5E92-423A-91F7-4C1EC9AD97C3</RequestId>
</ModifyForwardEntryResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "2315DEB7-5E92-423A-91F7-4C1EC9AD97C3"
}

错误码

HttpCode 错误码 错误信息 描述
400 ExclusiveParam.%sAnd%s The param of %s and %s are mutually exclusive. 参数 %s 和 %s 相互排斥。
400 InvalidIp.NotInNatgw The specified Ip not belong to natgateway. 该 IP 地址不属于该 NAT 网关。
400 OperationUnsupported.ForwardEntry Duplicated destination ip port is unsupported. 不支持重复的目标IP端口。
400 IncorrectStatus.NatIp The status of %s [%s] is incorrect. NatIp当前状态不正确。
400 IncorrectStatus.ForwardEntry The status of %s [%s] is incorrect. 要删除的DNAT条目实例状态不对
400 InvalidExternalIp.Malformed The specified ExternalIp is not a valid IP address. 该公网IP不合法。
400 InvalidInternalIp.Malformed The specified InternalIp is not a valid IP address. 该目标私网IP不合法。
400 InvalidExternalPort.Malformed The specified ExternalPort is not a valid port. 该公网端口不合法。
400 InvalidInternalPort.Malformed The specified InternalPort is not a valid port. 该私网端口不合法。
400 Forbidden.DestnationIpOutOfVpcCIDR The specified Destination Ip is Out of VPC CIDR. 该私网IP不在VPC的网段范围内,请您填写在VPC的网段范围内的私网IP。
400 InvalidProtocal.ValueNotSupported The specified IpProtocol does not support. 该协议类型不支持。
400 IncorretForwardEntryStatus Some Forward entry status blocked this operation.. 无法执行该操作。DNAT表中有DNAT条目的状态处于Pending或Modifying状态。
400 QuotaExceeded Forward entry quota exceeded in this route table. 同一个路由表中自定义路由条目不能超过200条,可以在配额管理页面申请调整数量。
400 Forbidden.ExternalIp.UsedInSnatTable The specified ExternalIp is already used in SnatTable 该公网IP已经被SNAT使用,请更换其他公网IP或将当前公网IP的SNAT规则删除。
400 Forbidden.Already.Bounded The specified instance already bounded 实例已经被绑定,请不要重复绑定。
400 InvalidParameter.Name.Malformed The specified Name is not valid. 该名称不合法,请您按照正确的格式书写名称。
400 IllegalParam.AnyPortNotZero Any port port must be zero. 参数非法,DNAT转发协议为Any时,源端口和目标端口必须为0
400 InvalidForwardEntryId.NotFound Specified forward entry ID does not exist 该DNAT条目不存在。
400 OperationUnsupported.EipInBinding Create snat entry with eip in associating status is unsupported. 创建snat不可以使用绑定中的eip
400 QuotaExceeded.ForwardEntrySessionManytoOne The dnat session quota is exceed. dnat session 多对一的配额超限。
404 ResourceNotFound.NatIp The specified resource of %s is not found. NatIp资源找不到。
404 InvalidRegionId.NotFound The specified RegionId does not exist in our records. 指定的RegionId不存在。
404 InvalidExternalIp.NotFound Specified External Ip address does not found on the VRouter 该公网IP不存在。
404 InvalidForwardTableId.NotFound Specified forward table does not exist. 指定的 DNAT 表不存在,请您检查输入参数是否正确。

访问错误中心查看更多错误码。