ALIYUN::VPC::RouterInterface is used to create a router interface.

Syntax

{
  "Type": "ALIYUN::VPC::RouterInterface",
  "Properties": {
    "OppositeRegionId": String,
    "Description": String,
    "HealthCheckSourceIp": String,
    "RouterType": String,
    "AccessPointId": String,
    "RouterId": String,
    "Role": String,
    "OppositeInterfaceOwnerId": String,
    "OppositeAccessPointId": String,
    "OppositeInterfaceId": String,
    "HealthCheckTargetIp": String,
    "OppositeRouterId": String,
    "Spec": String,
    "OppositeRouterType": String,
    "Name": String,
    "PricingCycle": String, 
    "Period": Number, 
    "AutoPay": Boolean, 
    "InstanceChargeType": String
  }
}

Properties

Property Type Required Editable Description Constraint
RouterId String Yes No The ID of the router to which the router interface belongs. None
Role String Yes No The role of the router interface. A router interface can either be a connection initiator or a connection acceptor. Valid values:
  • InitiatingSide

    This parameter must be set to InitiatingSide when the RouterType parameter is set to VBR.

  • AcceptingSide

    This parameter must be set to AcceptingSide when the OppositeRouterType parameter is set to VBR.

RouterType String No No The type of the router to which the router interface belongs. Valid values:
  • VRouter: VPC router
  • VBR: virtual border router
AccessPointId String No No The ID of the access point of the router interface. This parameter is required when the RouterType parameter is set to VBR. The access point ID cannot be modified after the router interface is created. This parameter cannot be set when the RouterType parameter is set to VRouter.
Spec String No No

The specifications of the router interface.

The following list includes available specifications and the corresponding bandwidth values:
  • Mini.2: 2 Mbit/s
  • Mini.5: 5 Mbit/s
  • Small.1: 10 Mbit/s
  • Small.2: 20 Mbit/s
  • Small.5: 50 Mbit/s
  • Middle.1: 100 Mbit/s
  • Middle.2: 200 Mbit/s
  • Middle.5: 500 Mbit/s
  • Large.1: 1,000 Mbit/s
  • Large.2: 2,000 Mbit/s
  • Large.5: 5,000 Mbit/s
  • Xlarge.1: 10,000 Mbit/s

This parameter is required when the Role parameter is set to InitiatingSide.

The value Negative is used by default when the Role parameter is set to AcceptingSide.

OppositeRegionId String No No The region ID of the peer router interface. None
OppositeInterfaceOwnerId String No Yes The ID of the owner of the peer router interface. The default value is the ID of the current user.
OppositeInterfaceId String No Yes The ID of the peer router interface. None
OppositeRouterId String No Yes The ID of the router to which the peer router interface belongs. None
OppositeRouterType String No Yes The type of the router to which the peer router interface belongs. Valid values:
  • VRouter: VPC router

    This parameter must be set to VRouter when the RouterType parameter is set to VBR.

  • VBR: virtual border router
OppositeAccessPointId String No No The ID of the access point of the peer router interface. This parameter is required when the OppositeRouterType parameter is set to VBR. The access point ID cannot be modified after the router interface is created.

This parameter cannot be set when the OppositeRouterType parameter is set to VRouter.

Note When the OppositeRouterType parameter is set to VBR, the VBR specified by the OppositeRouterId parameter must be in the access point specified by the OppositeAccessPointId parameter.
Description String No Yes The description of the router interface. The description must be 2 to 256 characters in length. It cannot start with http:// or https://.

This parameter is empty by default.

Name String No Yes The display name of the router interface. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with http:// or https://. It can contain letters, digits, periods (.), underscores (_), and hyphens (-).
HealthCheckSourceIp String No No The source IP address of health check packets used in leased line disaster recovery and ECMP scenarios. This parameter is valid only for VRouter interfaces that have a peer router interface on a VBR. It must be an unused IP address in the VPC where the local VRouter is located. The HealthCheckSourceIp and HealthCheckTargetIp parameters must either both be specified or both unspecified.
HealthCheckTargetIp String No No The destination IP address of health check packets used in leased line disaster recovery and ECMP scenarios. This parameter is valid only for VRouter interfaces that have a peer router interface on a VBR. Typically, you can use the IP address of a customer premises equipment (CPE) on the user side of the leased line, which is the IP address of the peer gateway on the VBR where the peer router interface is located. You can also specify another IP address on the user side of the leased line as the destination IP address. The HealthCheckSourceIp and HealthCheckTargetIp parameters must either both be specified or both unspecified.
PricingCycle String No No The billing cycle of the subscription. Valid values:
  • Month
  • Year
Period Number No No The subscription period. Valid values:
  • Valid values when the PricingCycle parameter is set to Month: 1 to 9.
  • Valid values when the PricingCycle parameter is set to Year: 1 to 3.
AutoPay Boolean No No Specifies whether to enable automatic payment. Default value: false. Valid values:
  • true
  • false
InstanceChargeType String No No The billing method of the router interface. Valid values:
  • Postpaid: pay-as-you-go
  • Prepaid: subscription

Response parameters

Fn::GetAtt

RouterInterfaceId: the ID of the router interface.

Examples

JSON format

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "OppositeInterfaceId": {
      "Type": "String",
      "Description": "The ID of the peer router interface."
    },
    "OppositeInterfaceOwnerId": {
      "Type": "String",
      "Description": "Owner account ID of the connection peer RouterInterface. The default value is current user Id."
    },
    "Description": {
      "Type": "String",
      "Description": "Custom description of the RouterInterface, [2, 256] characters. Don't fill or empty, the default is empty."
    },
    "OppositeRouterId": {
      "Type": "String",
      "Description": "The router ID of the connection peer RouterInterface."
    },
    "OppositeRegionId": {
      "Type": "String",
      "Description": "The region where the connection peer RouterInterface locates. The default value is region where stack is created."
    },
    "PricingCycle": {
      "Type": "String",
      "Description": "Unit of the payment cycle. It could be Month (default) or Year.",
      "AllowedValues": [
        "Month",
        "Year"
      ]
    },
    "InstanceChargeType": {
      "Type": "String",
      "Description": "The billing method of the router interface. Valid values: PrePaid (Subscription), PostPaid (default, Pay-As-You-Go)",
      "AllowedValues": [
        "PrePaid",
        "PostPaid"
      ],
      "Default": "PostPaid"
    },
    "HealthCheckSourceIp": {
      "Type": "String",
      "Description": "Source IP address of the packet for leased line HealthCheck in leased line disaster tolerance and ECMP scenarios. It is valid only for a VRouter RouterInterface with a peer on a VBR. The source IP address must be in the VPC of the local VRouter and is not used. HealthCheckSourceIp and HealthCheckTargetIp parameters must be both specified or left unspecified."
    },
    "Period": {
      "Type": "Number",
      "Description": "Prepaid time period. It could be from 1 to 9 when PricingCycle is Month, or 1 to 3 when PricingCycle is Year. Default value is 3.",
      "AllowedValues": [
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ]
    },
    "RouterId": {
      "Type": "String",
      "Description": "The router ID to create RouterInterface."
    },
    "AutoPay": {
      "Type": "Boolean",
      "Description": "Indicates whether automatic payment is enabled. Valid values:false: Automatic payment is disabled. You need to go to Orders to make the payment once an order is generated. true: Automatic payment is enabled. The payment is automatically made.",
      "AllowedValues": [
        "True",
        "true",
        "False",
        "false"
      ]
    },
    "Name": {
      "Type": "String",
      "Description": "Custom name of the RouterInterface, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'"
    },
    "Role": {
      "Type": "String",
      "Description": "RouterInterface role. Now support 'InitiatingSide|AcceptingSide'. If 'RouterType' is specified as 'VBR', the value must be 'InitiatingSide'.If 'OppositeRouterType' is specified as 'VBR', the value must be 'AcceptingSide'.",
      "AllowedValues": [
        "InitiatingSide",
        "AcceptingSide"
      ]
    },
    "OppositeRouterType": {
      "Type": "String",
      "Description": "Router type of the connection peer router. Now support 'VRouter|VBR'. If 'RouterType' is specified as 'VBR', the value must be 'VRouter'.",
      "AllowedValues": [
        "VRouter",
        "VBR"
      ],
      "Default": "VRouter"
    },
    "RouterType": {
      "Type": "String",
      "Description": "Router type. Now support 'VRouter|VBR'",
      "AllowedValues": [
        "VRouter",
        "VBR"
      ],
      "Default": "VRouter"
    },
    "AccessPointId": {
      "Type": "String",
      "Description": "Access point ID. If 'RouterType' is specified as 'VBR', the value is required."
    },
    "OppositeAccessPointId": {
      "Type": "String",
      "Description": "Access point ID of the connection peer RouterInterface. If 'OppositeRouterType' is specified as 'VBR', the value is required."
    },
    "Spec": {
      "Type": "String",
      "Description": "RouterInterface specification. If 'Role' is specified as 'InitiatingSide', the value is required. If 'Role' is specified as 'AcceptingSide', the value is set as 'Negative' by default."
    },
    "HealthCheckTargetIp": {
      "Type": "String",
      "Description": "Target IP address of the packet for leased line HealthCheck in leased line disaster tolerance and ECMP scenarios. It is valid only for a VRouter RouterInterface with a peer on a VBR. Usually you can use the CPE IP address of the leased line user's client (that is, the PeerGatewayIP on the VBR of the peer RouterInterface), you can also specify another IP address of the leased line user's client as the HealthCheck target IP address. HealthCheckSourceIp and HealthCheckTargetIp parameters must be both specified or left unspecified."
    }
  },
  "Resources": {
    "RouterInterface": {
      "Type": "ALIYUN::VPC::RouterInterface",
      "Properties": {
        "OppositeInterfaceId": {
          "Ref": "OppositeInterfaceId"
        },
        "OppositeInterfaceOwnerId": {
          "Ref": "OppositeInterfaceOwnerId"
        },
        "Description": {
          "Ref": "Description"
        },
        "OppositeRouterId": {
          "Ref": "OppositeRouterId"
        },
        "OppositeRegionId": {
          "Ref": "OppositeRegionId"
        },
        "PricingCycle": {
          "Ref": "PricingCycle"
        },
        "InstanceChargeType": {
          "Ref": "InstanceChargeType"
        },
        "HealthCheckSourceIp": {
          "Ref": "HealthCheckSourceIp"
        },
        "Period": {
          "Ref": "Period"
        },
        "RouterId": {
          "Ref": "RouterId"
        },
        "AutoPay": {
          "Ref": "AutoPay"
        },
        "Name": {
          "Ref": "Name"
        },
        "Role": {
          "Ref": "Role"
        },
        "OppositeRouterType": {
          "Ref": "OppositeRouterType"
        },
        "RouterType": {
          "Ref": "RouterType"
        },
        "AccessPointId": {
          "Ref": "AccessPointId"
        },
        "OppositeAccessPointId": {
          "Ref": "OppositeAccessPointId"
        },
        "Spec": {
          "Ref": "Spec"
        },
        "HealthCheckTargetIp": {
          "Ref": "HealthCheckTargetIp"
        }
      }
    }
  },
  "Outputs": {
    "RouterInterfaceId": {
      "Description": "The ID of created RouterInterface.",
      "Value": {
        "Fn::GetAtt": [
          "RouterInterface",
          "RouterInterfaceId"
        ]
      }
    }
  }
}

YAML format

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  OppositeInterfaceId:
    Type: String
    Description: The ID of the peer router interface.
  OppositeInterfaceOwnerId:
    Type: String
    Description: >-
      Owner account ID of the connection peer RouterInterface. The default value
      is current user Id.
  Description:
    Type: String
    Description: >-
      Custom description of the RouterInterface, [2, 256] characters. Don't fill
      or empty, the default is empty.
  OppositeRouterId:
    Type: String
    Description: The router ID of the connection peer RouterInterface.
  OppositeRegionId:
    Type: String
    Description: >-
      The region where the connection peer RouterInterface locates. The default
      value is region where stack is created.
  PricingCycle:
    Type: String
    Description: Unit of the payment cycle. It could be Month (default) or Year.
    AllowedValues:
      - Month
      - Year
  InstanceChargeType:
    Type: String
    Description: >-
      The billing method of the router interface. Valid values: PrePaid
      (Subscription), PostPaid (default, Pay-As-You-Go)
    AllowedValues:
      - PrePaid
      - PostPaid
    Default: PostPaid
  HealthCheckSourceIp:
    Type: String
    Description: >-
      Source IP address of the packet for leased line HealthCheck in leased line
      disaster tolerance and ECMP scenarios. It is valid only for a VRouter
      RouterInterface with a peer on a VBR. The source IP address must be in the
      VPC of the local VRouter and is not used. HealthCheckSourceIp and
      HealthCheckTargetIp parameters must be both specified or left unspecified.
  Period:
    Type: Number
    Description: >-
      Prepaid time period. It could be from 1 to 9 when PricingCycle is Month,
      or 1 to 3 when PricingCycle is Year. Default value is 3.
    AllowedValues:
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
  RouterId:
    Type: String
    Description: The router ID to create RouterInterface.
  AutoPay:
    Type: Boolean
    Description: >-
      Indicates whether automatic payment is enabled. Valid values:false:
      Automatic payment is disabled. You need to go to Orders to make the
      payment once an order is generated. true: Automatic payment is enabled.
      The payment is automatically made.
    AllowedValues:
      - 'True'
      - 'true'
      - 'False'
      - 'false'
  Name:
    Type: String
    Description: >-
      Custom name of the RouterInterface, [2, 128] English or Chinese
      characters, must start with a letter or Chinese in size, can contain
      numbers, '_' or '.', '-'
  Role:
    Type: String
    Description: >-
      RouterInterface role. Now support 'InitiatingSide|AcceptingSide'. If
      'RouterType' is specified as 'VBR', the value must be 'InitiatingSide'.If
      'OppositeRouterType' is specified as 'VBR', the value must be
      'AcceptingSide'.
    AllowedValues:
      - InitiatingSide
      - AcceptingSide
  OppositeRouterType:
    Type: String
    Description: >-
      Router type of the connection peer router. Now support 'VRouter|VBR'. If
      'RouterType' is specified as 'VBR', the value must be 'VRouter'.
    AllowedValues:
      - VRouter
      - VBR
    Default: VRouter
  RouterType:
    Type: String
    Description: Router type. Now support 'VRouter|VBR'
    AllowedValues:
      - VRouter
      - VBR
    Default: VRouter
  AccessPointId:
    Type: String
    Description: >-
      Access point ID. If 'RouterType' is specified as 'VBR', the value is
      required.
  OppositeAccessPointId:
    Type: String
    Description: >-
      Access point ID of the connection peer RouterInterface. If
      'OppositeRouterType' is specified as 'VBR', the value is required.
  Spec:
    Type: String
    Description: >-
      RouterInterface specification. If 'Role' is specified as 'InitiatingSide',
      the value is required. If 'Role' is specified as 'AcceptingSide', the
      value is set as 'Negative' by default.
  HealthCheckTargetIp:
    Type: String
    Description: >-
      Target IP address of the packet for leased line HealthCheck in leased line
      disaster tolerance and ECMP scenarios. It is valid only for a VRouter
      RouterInterface with a peer on a VBR. Usually you can use the CPE IP
      address of the leased line user's client (that is, the PeerGatewayIP on
      the VBR of the peer RouterInterface), you can also specify another IP
      address of the leased line user's client as the HealthCheck target IP
      address. HealthCheckSourceIp and HealthCheckTargetIp parameters must be
      both specified or left unspecified.
Resources:
  RouterInterface:
    Type: 'ALIYUN::VPC::RouterInterface'
    Properties:
      OppositeInterfaceId:
        Ref: OppositeInterfaceId
      OppositeInterfaceOwnerId:
        Ref: OppositeInterfaceOwnerId
      Description:
        Ref: Description
      OppositeRouterId:
        Ref: OppositeRouterId
      OppositeRegionId:
        Ref: OppositeRegionId
      PricingCycle:
        Ref: PricingCycle
      InstanceChargeType:
        Ref: InstanceChargeType
      HealthCheckSourceIp:
        Ref: HealthCheckSourceIp
      Period:
        Ref: Period
      RouterId:
        Ref: RouterId
      AutoPay:
        Ref: AutoPay
      Name:
        Ref: Name
      Role:
        Ref: Role
      OppositeRouterType:
        Ref: OppositeRouterType
      RouterType:
        Ref: RouterType
      AccessPointId:
        Ref: AccessPointId
      OppositeAccessPointId:
        Ref: OppositeAccessPointId
      Spec:
        Ref: Spec
      HealthCheckTargetIp:
        Ref: HealthCheckTargetIp
Outputs:
  RouterInterfaceId:
    Description: The ID of created RouterInterface.
    Value:
      'Fn::GetAtt':
        - RouterInterface
        - RouterInterfaceId