En esta página, se describe cómo agregar un túnel VPN de una puerta de enlace de VPN a otra.
Un túnel VPN es un túnel IPsec encriptado entre la red de una organización y una red remota. Conecta una interfaz VPNGateway
a una interfaz PeerGateway
y usa el recurso VPNBGPPeer
para intercambiar información de enrutamiento a través del túnel.
Antes de comenzar
Para crear un túnel VPN, debes tener lo siguiente:
- Un recurso existente de puerta de enlace de VPN y puerta de enlace de VPN de intercambio de tráfico. Para obtener más información, consulta Crea una puerta de enlace de VPN y una puerta de enlace de intercambio de tráfico.
- Es un objeto de par de BGP de VPN existente. Para obtener más información, consulta Crea una sesión de BGP de VPN.
- Es un secreto existente. Para obtener más información, consulta Crea el secreto con una PSK.
Los roles de identidad y acceso necesarios son los siguientes:
- Administrador de VPN: Tiene permisos de lectura y escritura en todos los recursos relacionados con la VPN. Pídele al administrador de IAM de tu organización que te otorgue el rol de administrador de VPN (
vpn-admin
). - Visualizador de VPN: Tiene permisos de lectura para todos los recursos relacionados con la VPN. Pídele al administrador de IAM de la organización que te otorgue el rol de visualizador de VPN (
vpn-viewer
). - Para obtener más información, consulta Definiciones de roles.
- Administrador de VPN: Tiene permisos de lectura y escritura en todos los recursos relacionados con la VPN. Pídele al administrador de IAM de tu organización que te otorgue el rol de administrador de VPN (
Crear un túnel VPN
Haz referencia a los recursos VPNGateway
, PeerGateway
, VPNBGPPeer
y Secret
creados en los pasos anteriores para crear el túnel.
Para crear un túnel VPN, sigue estos pasos:
Crea el objeto
VPNTunnel
:kubectl --kubeconfig MANAGEMENT_API_SERVER create -n platform -f - <<EOF apiVersion: networking.gdc.goog/v1 kind: VPNTunnel metadata: name: VPN_TUNNEL_NAME spec: vpnInterface: name: VPN_GW_NAME namespace: platform interface: VPN_INTERFACE_NAME peerInterface: name: PEER_GW_NAME namespace: platform interface: PEER_INTERFACE_NAME vpnBGPPeer: name: VPN_BGP_PEER_NAME namespace: platform ikeKey: name: PSK_NAME namespace: platform EOF
Reemplaza lo siguiente:
MANAGEMENT_API_SERVER
: Es la ruta de acceso de kubeconfig del servidor de la API zonal. Si aún no generaste un archivo kubeconfig para el servidor de la API en la zona de destino, consulta Accede para obtener más detalles.VPN_TUNNEL_NAME
: Es el nombre del túnel VPN que se usa.VPN_GW_NAME
: Es el nombre de la puerta de enlace de VPN.VPN_INTERFACE_NAME
: Es el nombre de la interfaz de VPN.PEER_GW_NAME
: Es el nombre de la puerta de enlace de VPN de intercambio de tráfico.PEER_INTERFACE_NAME
: Es el nombre de la interfaz de la puerta de enlace de VPN de intercambio de tráfico.VPN_BGP_PEER_NAME
: Es el nombre del par de BGP de la VPN. Para obtener más información, consulta Crea una sesión de BGP de VPN.PSK_NAME
: Es el nombre de la PSK que creaste en Crea el secreto con una PSK.
Verifica que el objeto
VPN_TUNNEL_NAME
se haya conciliado correctamente examinando el campoStatus
. Obtén los detalles del túnel VPN:kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpntunnel VPN_TUNNEL_NAME
Examina el resultado, que debe ser similar al siguiente ejemplo:
Status: Conditions: Last Transition Time: 2024-05-10T00:33:31Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Reconciled Last Transition Time: 2024-05-10T00:33:31Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Ready Last Transition Time: 2024-05-10T00:33:31Z Message: Tunnel is established. Observed Generation: 1 Reason: Ready Status: True Type: TunnelEstablished State: Established
Los objetos
VPNGateway
,PeerGateway
yVPNBGPPeer
deben tener estados actualizados después de que unVPNTunnel
haga referencia a ellos. Por ejemplo, si verificas que elVPNBGPPeer
se concilió correctamente, verás valores de estado actualizados. Obtén los detalles del objetoVPNBGPPeer
:kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpnbgppeer VPN_BGP_PEER_NAME
Examina el resultado. Los valores de estado ahora están actualizados:
Status: Advertised: Prefix: 10.0.0.16/28 Prefix: 10.0.1.32/27 Prefix: 172.16.0.0/14 Prefix: 172.20.0.0/17 Prefix: 172.20.128.0/17 Prefix: 2002:4860:100e:fa00::/58 Conditions: Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ValidIPs Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: TunnelsAttached Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Reconciled Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: AdvertisedRoutesReady Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ReceivedRoutesValid Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ReceivedRoutesReady Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Ready Received: Prefix: 192.168.100.0/24 Prefix: 193.188.200.0/24 State: Established