In this article we will outline the steps required to create an active-active VPN tunnel with BGP dynamic routing between Amazon Web Services (AWS) and the Total Uptime Cloud Platform.
By default, Total Uptime requires your devices (servers) to have internet-routable IPv4 or IPv6 addresses so we can direct traffic to them. By creating VPN tunnels between the Total Uptime platform and AWS, you can avoid the requirement for public IP space and securely route traffic to your cloud devices with a very high degree of availability.
Regardless of whether you use a VPN or not, Total Uptime already has direct network connectivity to Amazon Web Services with private peering to ensure high performance connectivity. Adding a VPN simply encrypts that traffic and allows you to use RFC1918 space.
To begin you will require a few things.
In the navigation pane under the VPN Connections heading select Customer Gateways.
Click the Create Customer Gateway button.
OPTIONAL: Type a name for the Customer Gateway. This will create a tag with a key of Name and the value you specify.
For Routing select Dynamic, then specify a BGP ASN from the prerequisites.
For IP Address, enter the first VPN gateway IP from above.
Click the Create Customer Gateway button.
A Create Customer Gateway Request Succeeded page will be displayed.
Click the Close button.
Click the Create Customer Gateway button.
OPTIONAL: Type a name for the Customer Gateway. This will create a tag with a key of Name and the value you specify.
For Routing select Dynamic, then specify a BGP ASN from the prerequisites.
For IP Address, enter the second VPN gateway IP from above.
Click the Create Customer Gateway button.
A Create Customer Gateway Request Succeeded page will be displayed.
Click the Close button.
In the navigation pane under the Virtual Private Cloud heading select Route Tables.
Select the route table which is associated with the approved subnet(s) listed in the prerequisites section above that you want routed via Total Uptime, then open the Route Propagation tab.
Click the Edit button.
Put a check mark in the Propagate box of the Virtual Private Gateway you just created.
Click the Save button.
In the navigation pane under the Security heading select Security Groups.
Select the default security group for the VPC, then open the Inbound Rules tab.
Click the Edit button.
Click the Add another rule button and create rules for each of the Total Uptime source IP subnets.
Click the Save button
In the navigation pane under the VPN Connections heading select VPN Connections.
Click the Create VPN Connection button.
OPTIONAL: Type a name for the VPN connection. This will create a tag with a key of Name and the value you specify.
For Virtual Private Gateway select the gateway we created earlier in step 1.
For Customer Gateway select Existing.
For Customer Gateway ID select the first customer gateway we created.
For Routing Options select Dynamic (requires BGP).
For Tunnel Options specify your own inside IP CIDR and pre-shared key for the tunnels.
Click the Create VPN Connection button.
A Create VPN Connection Request Succeeded page will be displayed.
Click the Close button.
Click the Create VPN Connection button.
OPTIONAL: Type a name for the VPN connection. This will create a tag with a key of Name and the value you specify.
For Virtual Private Gateway select the gateway we created earlier.
For Customer Gateway select Existing.
For Customer Gateway ID select the second customer gateway we created.
For Routing Options select Dynamic (requires BGP).
For Tunnel Options specify your own inside IP CIDR and pre-shared key for the tunnels.
Click the Create VPN Connection button.
A Create VPN Connection Request Succeeded page will be displayed.
Click the Close button.
Select the first VPN connection.
Click the Download Configuration button.
Click the Download button.
Close the Download Configuration window.
Perform the previous steps for the second VPN.
Provide the downloaded configurations to Total Uptime. We will complete the VPN configurations, build the BGP tunnels and complete. If you have production infrastructure at AWS that is currently behind the Total Uptime network using elastic (static) IP addresses, please let us know.