---
name: "VM::EC2::VPC::VpnConnection"
section: "3pm"
platform: "linux"
package: "libvm-ec2-perl"
version: "1.28-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/VM::EC2::VPC::VpnConnection"
---

# VM::EC2::VPC::VpnConnection(3pm)

VPC VPN connection

## NAME

VM::EC2::VPC::VpnConnection - VPC VPN connection

## SYNOPSIS

```
 use VM::EC2;
 my $ec2 = VM::EC2->new(...);
 my $vpn = $ec2->describe_vpn_connections(-vpn_connection_id=>'vpn-12345678');
 my $state = $vpn->state;
 my $vpn_gateway = $vpn->vpn_gateway;
 my $customer_gateway = $vpn->customer_gateway;
```

## DESCRIPTION

This object represents an Amazon EC2 VPC VPN connection, and is returned by VM::EC2-\>**describe\_vpn\_connections()**

## METHODS

These object methods are supported:

```
 vpnConnectionId              -- The ID of the VPN connection.
 state                        -- The current state of the VPN connection.
                                 Valid values: pending | available | deleting | deleted
 customerGatewayConfiguration -- Configuration information for the VPN connection's
                                 customer gateway (in the native XML format). This
                                 element is always present in the CreateVpnConnection
                                 response; however, it's present in the
                                 DescribeVpnConnections response only if the VPN
                                 connection is in the pending or available state.
 type                         -- The type of VPN connection (ipsec.1)
 customerGatewayId            -- ID of the customer gateway at your end of the VPN
                                 connection.
 vpnGatewayId                 -- ID of the virtual private gateway at the VPC end of
                                 the VPN connection.
 tagSet                       -- Tags assigned to the resource.
 vgwTelemetry                 -- Information about the virtual private gateway.
 vpn_telemetry                -- Alias for vgwTelemetry
```

The following convenience methods are supported:

```
 vpn_gateway                  -- Returns a L<VM::EC2::VPC::VpnGateway> object
 customer_gateway             -- Returns a L<VM::EC2::VPC::CustomerGateway> object
```

The object also supports the **tags()** method described in VM::EC2::Generic:

## STRING OVERLOADING

When used in a string context, this object will interpolate the vpnConnectionId.

## SEE ALSO

VM::EC2 VM::EC2::Generic VM::EC2::Tag VM::EC2::VPC VM::EC2::VPC::CustomerGateway VM::EC2::VPC::VpnGateway

## AUTHOR

Lance Kinley \<lkinley@loyaltymethods.com\>.

Copyright (c) 2012 Loyalty Methods, Inc.

This package and its accompanying libraries is free software; you can redistribute it and/or modify it under the terms of the GPL (either version 1, or at your option, any later version) or the Artistic License 2.0.  Refer to LICENSE for the full license text. In addition, please see DISCLAIMER.txt for disclaimers of warranty.
