/AWS1/IF_EC2=>CREATECUSTOMERGATEWAY()¶
About CreateCustomerGateway¶
Provides information to Amazon Web Services about your customer gateway device. The customer gateway device is the appliance at your end of the VPN connection. You must provide the IP address of the customer gateway device’s external interface. The IP address must be static and can be behind a device performing network address translation (NAT).
For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN. For more information, see Customer gateway options for your Site-to-Site VPN connection in the Amazon Web Services Site-to-Site VPN User Guide.
To create more than one customer gateway with the same VPN type, IP address, and BGP ASN, specify a unique device name for each customer gateway. An identical request returns information about the existing customer gateway; it doesn't create a new customer gateway.
Method Signature¶
METHODS /AWS1/IF_EC2~CREATECUSTOMERGATEWAY
IMPORTING
!IV_BGPASN TYPE /AWS1/EC2INTEGER OPTIONAL
!IV_PUBLICIP TYPE /AWS1/EC2STRING OPTIONAL
!IV_CERTIFICATEARN TYPE /AWS1/EC2STRING OPTIONAL
!IV_TYPE TYPE /AWS1/EC2GATEWAYTYPE OPTIONAL
!IT_TAGSPECIFICATIONS TYPE /AWS1/CL_EC2TAGSPECIFICATION=>TT_TAGSPECIFICATIONLIST OPTIONAL
!IV_DEVICENAME TYPE /AWS1/EC2STRING OPTIONAL
!IV_IPADDRESS TYPE /AWS1/EC2STRING OPTIONAL
!IV_BGPASNEXTENDED TYPE /AWS1/EC2LONG OPTIONAL
!IV_DRYRUN TYPE /AWS1/EC2BOOLEAN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_ec2createcusgwresult
RAISING
/AWS1/CX_EC2CLIENTEXC
/AWS1/CX_EC2SERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_type TYPE /AWS1/EC2GATEWAYTYPE /AWS1/EC2GATEWAYTYPE¶
The type of VPN connection that this customer gateway supports (
ipsec.1).
Optional arguments:¶
iv_bgpasn TYPE /AWS1/EC2INTEGER /AWS1/EC2INTEGER¶
For customer gateway devices that support BGP, specify the device's ASN. You must specify either
BgpAsnorBgpAsnExtendedwhen creating the customer gateway. If the ASN is larger than2,147,483,647, you must useBgpAsnExtended.Default: 65000
Valid values:
1to2,147,483,647
iv_publicip TYPE /AWS1/EC2STRING /AWS1/EC2STRING¶
This member has been deprecated. The Internet-routable IP address for the customer gateway's outside interface. The address must be static.
iv_certificatearn TYPE /AWS1/EC2STRING /AWS1/EC2STRING¶
The Amazon Resource Name (ARN) for the customer gateway certificate.
it_tagspecifications TYPE /AWS1/CL_EC2TAGSPECIFICATION=>TT_TAGSPECIFICATIONLIST TT_TAGSPECIFICATIONLIST¶
The tags to apply to the customer gateway.
iv_devicename TYPE /AWS1/EC2STRING /AWS1/EC2STRING¶
A name for the customer gateway device.
Length Constraints: Up to 255 characters.
iv_ipaddress TYPE /AWS1/EC2STRING /AWS1/EC2STRING¶
The IP address for the customer gateway device's outside interface. The address must be static. If
OutsideIpAddressTypein your VPN connection options is set toPrivateIpv4, you can use an RFC6598 or RFC1918 private IPv4 address. IfOutsideIpAddressTypeis set toIpv6, you can use an IPv6 address.
iv_bgpasnextended TYPE /AWS1/EC2LONG /AWS1/EC2LONG¶
For customer gateway devices that support BGP, specify the device's ASN. You must specify either
BgpAsnorBgpAsnExtendedwhen creating the customer gateway. If the ASN is larger than2,147,483,647, you must useBgpAsnExtended.Valid values:
2,147,483,648to4,294,967,295
iv_dryrun TYPE /AWS1/EC2BOOLEAN /AWS1/EC2BOOLEAN¶
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation. Otherwise, it isUnauthorizedOperation.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_ec2createcusgwresult /AWS1/CL_EC2CREATECUSGWRESULT¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->createcustomergateway(
it_tagspecifications = VALUE /aws1/cl_ec2tagspecification=>tt_tagspecificationlist(
(
new /aws1/cl_ec2tagspecification(
it_tags = VALUE /aws1/cl_ec2tag=>tt_taglist(
(
new /aws1/cl_ec2tag(
iv_key = |string|
iv_value = |string|
)
)
)
iv_resourcetype = |string|
)
)
)
iv_bgpasn = 123
iv_bgpasnextended = 123
iv_certificatearn = |string|
iv_devicename = |string|
iv_dryrun = ABAP_TRUE
iv_ipaddress = |string|
iv_publicip = |string|
iv_type = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_customergateway = lo_result->get_customergateway( ).
IF lo_customergateway IS NOT INITIAL.
lv_string = lo_customergateway->get_certificatearn( ).
lv_string = lo_customergateway->get_devicename( ).
LOOP AT lo_customergateway->get_tags( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_string = lo_row_1->get_key( ).
lv_string = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
lv_string = lo_customergateway->get_bgpasnextended( ).
lv_string = lo_customergateway->get_customergatewayid( ).
lv_string = lo_customergateway->get_state( ).
lv_string = lo_customergateway->get_type( ).
lv_string = lo_customergateway->get_ipaddress( ).
lv_string = lo_customergateway->get_bgpasn( ).
ENDIF.
ENDIF.
To create a customer gateway¶
This example creates a customer gateway with the specified IP address for its outside interface.
DATA(lo_result) = lo_client->createcustomergateway(
iv_bgpasn = 65534
iv_publicip = |12.1.2.3|
iv_type = |ipsec.1|
).