@@ -11,7 +11,7 @@ def __init__(
1111 self ,
1212 scope : Construct ,
1313 construct_id : str ,
14- vpn_gateway : ec2 .CfnVpnGateway ,
14+ vpn_gateway : ec2 .CfnVPNGateway ,
1515 psk : str ,
1616 wash_ip : str ,
1717 denv_ip : str ,
@@ -25,7 +25,7 @@ def __init__(
2525 Parent construct.
2626 construct_id : str
2727 A unique string identifier for this construct.
28- vpn_gateway : ec2.CfnVpnGateway
28+ vpn_gateway : ec2.CfnVPNGateway
2929 The Virtual Private Gateway to attach the VPN connections to.
3030 psk : str
3131 Pre-shared key for IKE authentication, retrieved from Secrets Manager.
@@ -116,14 +116,15 @@ def __init__(
116116 # Create the VPN connection between our Virtual Private Gateway (VGW)
117117 # and NOAA's customer gateway. Each connection gets two tunnels by default
118118 # (AWS requirement for redundancy) — both use the same crypto settings.
119- # static_routes_only=True because NOAA uses static routing, not BGP.
119+ # BGP is used (static_routes_only=False) so that if one site (WASH or DENV)
120+ # goes down, BGP automatically reroutes traffic through the other.
120121 # Data flows one way: NOAA sends to us. We do not send to NOAA.
121122 ec2 .CfnVpnConnection (
122123 self ,
123124 f"NoaaVpnConnection{ site } " ,
124125 customer_gateway_id = cgw .ref ,
125126 vpn_gateway_id = vpn_gateway .ref ,
126127 type = "ipsec.1" ,
127- static_routes_only = True ,
128+ static_routes_only = False ,
128129 vpn_tunnel_options_specifications = [tunnel , tunnel ],
129130 )
0 commit comments