Skip to main content Configure secure, high-performance connectivity between on-premises infrastructure and cloud platforms using VPN and dedicated connections. Use when building hybrid cloud architectures, connecting data centers to cloud, or implementing secure cross-premises networking.
npx skills add wshobson/agents --skill hybrid-cloud-networking agents claude claude-code subagents anthropic automation
Hybrid Cloud Networking
Configure secure, high-performance connectivity between on-premises and cloud environments using VPN, Direct Connect, ExpressRoute, Interconnect, and FastConnect.
Purpose
Establish secure, reliable network connectivity between on-premises data centers and cloud providers (AWS, Azure, GCP, OCI).
When to Use
Connect on-premises to cloud
Extend datacenter to cloud
Implement hybrid active-active setups
Meet compliance requirements
Migrate to cloud gradually
Connection Options
AWS Connectivity
1. Site-to-Site VPN
IPSec VPN over internet
Up to 1.25 Gbps per tunnel
Cost-effective for moderate bandwidth
Higher latency, internet-dependent
resource "aws_vpn_gateway" "main" {
vpc_id = aws_vpc.main.id
tags = {
Name = "main-vpn-gateway"
}
}
resource "aws_customer_gateway" "main" {
bgp_asn = 65000
ip_address = "203.0.113.1"
type = "ipsec.1"
}
resource "aws_vpn_connection" "main" {
vpn_gateway_id = aws_vpn_gateway.main.id
customer_gateway_id = aws_customer_gateway.main.id
type = "ipsec.1"
static_routes_only = false
}
2. AWS Direct Connect
Dedicated network connection
1 Gbps to 100 Gbps
Lower latency, consistent bandwidth
More expensive, setup time required Reference: See references/direct-connect.md
Azure Connectivity
1. Site-to-Site VPN resource "azurerm_virtual_network_gateway" "vpn" {
name = "vpn-gateway"
location = azurerm_resource_group.main.location
resource_group_name = azurerm_resource_group.main.name
type = "Vpn"
vpn_type = "RouteBased"
sku = "VpnGw1"
ip_configuration {
name = "vnetGatewayConfig"
public_ip_address_id = azurerm_public_ip.vpn.id
private_ip_address_allocation = "Dynamic"
subnet_id = azurerm_subnet.gateway.id
}
}
2. Azure ExpressRoute
Private connection via connectivity provider
Up to 100 Gbps
Low latency, high reliability
Premium for global connectivity
GCP Connectivity
1. Cloud VPN
IPSec VPN (Classic or HA VPN)
HA VPN: 99.99% SLA
Up to 3 Gbps per tunnel
2. Cloud Interconnect
Dedicated (10 Gbps, 100 Gbps)
Partner (50 Mbps to 50 Gbps)
Lower latency than VPN
OCI Connectivity
1. IPSec VPN Connect
IPSec VPN with redundant tunnels
Dynamic routing through DRG
Good fit for branch offices and migration phases
2. OCI FastConnect
Private dedicated connectivity through Oracle or partner edge
Suitable for predictable throughput and lower-latency hybrid traffic
Commonly paired with DRG for hub-and-spoke designs
Hybrid Network Patterns
Pattern 1: Hub-and-Spoke On-Premises Datacenter
↓
VPN/Direct Connect
↓
Transit Gateway (AWS) / vWAN (Azure)
↓
├─ Production VPC/VNet
├─ Staging VPC/VNet
└─ Development VPC/VNet
Pattern 2: Multi-Region Hybrid On-Premises
├─ Direct Connect → us-east-1
└─ Direct Connect → us-west-2
↓
Cross-Region Peering
Pattern 3: Multi-Cloud Hybrid On-Premises Datacenter
├─ Direct Connect → AWS
├─ ExpressRoute → Azure
├─ Interconnect → GCP
└─ FastConnect → OCI
Routing Configuration
BGP Configuration On-Premises Router:
- AS Number: 65000
- Advertise: 10.0.0.0/8
Cloud Router:
- AS Number: 64512 (AWS), 65515 (Azure), provider-assigned for GCP/OCI
- Advertise: Cloud VPC/VNet CIDRs
Route Propagation
Enable route propagation on route tables
Use BGP for dynamic routing
Implement route filtering
Monitor route advertisements
Security Best Practices
Use private connectivity (Direct Connect/ExpressRoute/Interconnect/FastConnect)
Implement encryption for VPN tunnels
Use VPC endpoints to avoid internet routing
Configure network ACLs and security groups
Enable VPC Flow Logs for monitoring
Implement DDoS protection
Use PrivateLink/Private Endpoints
Monitor connections with CloudWatch/Azure Monitor/Cloud Monitoring/OCI Monitoring
Implement redundancy (dual tunnels)
Regular security audits
High Availability
Dual VPN Tunnels resource "aws_vpn_connection" "primary" {
vpn_gateway_id = aws_vpn_gateway.main.id
customer_gateway_id = aws_customer_gateway.primary.id
type = "ipsec.1"
}
resource "aws_vpn_connection" "secondary" {
vpn_gateway_id = aws_vpn_gateway.main.id
customer_gateway_id = aws_customer_gateway.secondary.id
type = "ipsec.1"
}
Active-Active Configuration
Multiple connections from different locations
BGP for automatic failover
Equal-cost multi-path (ECMP) routing
Monitor health of all connections
Monitoring and Troubleshooting
Key Metrics
Tunnel status (up/down)
Bytes in/out
Packet loss
Latency
BGP session status
Troubleshooting # AWS VPN
aws ec2 describe-vpn-connections
aws ec2 get-vpn-connection-telemetry
# Azure VPN
az network vpn-connection show
az network vpn-connection show-device-config-script
# OCI IPSec VPN
oci network ip-sec-connection list
oci network cpe list
Cost Optimization
Right-size connections based on traffic
Use VPN for low-bandwidth workloads
Consolidate traffic through fewer connections
Minimize data transfer costs
Use dedicated private links for high bandwidth
Implement caching to reduce traffic
Related Skills
multi-cloud-architecture - For architecture decisions
terraform-module-library - For IaC implementation
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).