Eliminación de una puerta de enlace de red virtual mediante PowerShell

Hay un par de enfoques que puede adoptar cuando desee eliminar una puerta de enlace de red virtual correspondiente a una configuración de puerta de enlace VPN.

  • Si quiere eliminar todo el contenido y volver a empezar, como en el caso de un entorno de prueba, puede eliminar el grupo de recursos. Cuando se elimina un grupo de recursos, se quitan todos los recursos de él. Este método solo se recomienda si no desea conservar los recursos del grupo en cuestión. Con este enfoque no podrá eliminar de forma selectiva solo unos pocos recursos.

  • Si desea mantener algunos de los recursos en el grupo de recursos, será algo más complicado eliminar una puerta de enlace de red virtual. Antes de poder eliminar la puerta de enlace de red virtual, primero debe quitar todos los recursos que dependen de la puerta de enlace. Los pasos que seguirá dependerán del tipo de conexiones que creó y de los recursos dependientes de cada conexión.

Eliminación de una VPN de sitio a sitio

Para eliminar una puerta de enlace de red virtual correspondiente a una configuración de S2S, primero debe eliminar cada recurso que pertenece a la puerta de enlace de red virtual. Los recursos deben eliminarse en un orden determinado debido a las dependencias. Cuando trabaja con los ejemplos siguientes, deben especificarse algunos de los valores, mientras que otros son un resultado de salida. Los siguientes valores específicos de los ejemplos se utilizan para fines de demostración:

  • Nombre de la red virtual: VNet1
  • Nombre del grupo de recursos: TestRG1
  • Nombre de la puerta de enlace de red virtual: VNet1GW
  1. Obtenga la puerta de enlace de red virtual que quiera eliminar.

    $GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Compruebe si la puerta de enlace de red virtual tiene todas las conexiones.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    $Conns=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  3. Elimine todas las conexiones. Se le pedirá que confirme la eliminación de cada una de las conexiones.

    $Conns | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    
  4. Elimine la puerta de enlace de red virtual. Se le pedirá que confirme la eliminación de la puerta de enlace. Si tiene una configuración P2S en esta red virtual además de la configuración S2S, eliminando la puerta de enlace de red virtual se desconectarán automáticamente todos los clientes P2S sin previo aviso.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    En este momento, la puerta de enlace de virtual se ha eliminado. Puede usar los pasos siguientes para eliminar los recursos que ya no se usan.

  5. Para eliminar las puertas de enlace de red local, primero obtenga la lista de las puertas de enlace de red local correspondientes.

    $LNG=Get-AzLocalNetworkGateway -ResourceGroupName "TestRG1" | where-object {$_.Id -In $Conns.LocalNetworkGateway2.Id}
    

    A continuación, elimine las puertas de enlace de red local. Se le pedirá que confirme la eliminación de cada una de las puertas de enlace de red locales.

    $LNG | ForEach-Object {Remove-AzLocalNetworkGateway -Name $_.Name -ResourceGroupName $_.ResourceGroupName}
    
  6. Para eliminar los recursos de dirección IP pública, primero obtenga las configuraciones de IP de la puerta de enlace de red virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    

    A continuación, obtenga la lista de recursos de direcciones IP públicas que se usan para esta puerta de enlace de red virtual. Si la puerta de enlace de red virtual era activa-activa, verá dos direcciones IP públicas.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    

    Elimine los recursos de IP pública.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "TestRG1"}
    
  7. Elimine la subred de puerta de enlace y establezca la configuración.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminación de una puerta de enlace VPN de red virtual a red virtual

Para eliminar una puerta de enlace de red virtual correspondiente a una configuración de V2V, primero debe eliminar cada recurso que pertenece a la puerta de enlace de red virtual. Los recursos deben eliminarse en un orden determinado debido a las dependencias. Cuando trabaja con los ejemplos siguientes, deben especificarse algunos de los valores, mientras que otros son un resultado de salida. Los siguientes valores específicos de los ejemplos se utilizan para fines de demostración:

  • Nombre de la red virtual: VNet1
  • Nombre del grupo de recursos: TestRG1
  • Nombre de la puerta de enlace de red virtual: VNet1GW
  1. Obtenga la puerta de enlace de red virtual que quiera eliminar.

    $GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Compruebe si la puerta de enlace de red virtual tiene todas las conexiones.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  3. Puede haber otra conexión a la puerta de enlace de red virtual que forman parte de otro grupo de recursos. Busque conexiones adicionales en cada grupo de recursos extra. En este ejemplo, vamos a comprobar las conexiones desde RG2. Ejecute este comando en cada grupo de recursos que tenga que puede estar conectado a la puerta de enlace de red virtual.

    get-Azvirtualnetworkgatewayconnection -ResourceGroupName "RG2" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}
    
  4. Obtenga la lista de conexiones en ambas direcciones. Como se trata de una configuración de red virtual a red virtual, necesita la lista de conexiones en ambas direcciones.

    $ConnsL=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "TestRG1" | where-object {$_.VirtualNetworkGateway1.Id -eq $GW.Id}
    
  5. En este ejemplo, vamos a comprobar las conexiones desde RG2. Ejecute este comando en cada grupo de recursos que tenga que puede estar conectado a la puerta de enlace de red virtual.

     $ConnsR=get-Azvirtualnetworkgatewayconnection -ResourceGroupName "<NameOfResourceGroup2>" | where-object {$_.VirtualNetworkGateway2.Id -eq $GW.Id}
    
  6. Elimine todas las conexiones. Se le pedirá que confirme la eliminación de cada una de las conexiones.

    $ConnsL | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    $ConnsR | ForEach-Object {Remove-AzVirtualNetworkGatewayConnection -Name $_.name -ResourceGroupName $_.ResourceGroupName}
    
  7. Elimine la puerta de enlace de red virtual. Se le pedirá que confirme la eliminación de la puerta de enlace de red virtual. Si tiene una configuración P2S en esta red virtual además de la configuración V2V, eliminando la puerta de enlace de red virtual se desconectarán automáticamente todos los clientes P2S sin previo aviso.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    En este momento, la puerta de enlace de virtual se ha eliminado. Puede usar los pasos siguientes para eliminar los recursos que ya no se usan.

  8. Para eliminar los recursos de dirección IP pública, obtenga las configuraciones de IP de la puerta de enlace de red virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    
  9. A continuación, obtenga la lista de recursos de direcciones IP públicas que se usan para esta puerta de enlace de red virtual. Si la puerta de enlace de red virtual era activa-activa, verá dos direcciones IP públicas.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    
  10. Elimine los recursos de IP pública. Se le pedirá que confirme la eliminación de la dirección IP pública.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}
    
  11. Elimine la subred de puerta de enlace y establezca la configuración.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminación de una puerta de enlace VPN de sitio a sitio

Para eliminar una puerta de enlace de red virtual correspondiente a una configuración de P2S, primero debe eliminar cada recurso que pertenece a la puerta de enlace de red virtual. Los recursos deben eliminarse en un orden determinado debido a las dependencias. Cuando trabaja con los ejemplos siguientes, deben especificarse algunos de los valores, mientras que otros son un resultado de salida. Los siguientes valores específicos de los ejemplos se utilizan para fines de demostración:

  • Nombre de la red virtual: VNet1
  • Nombre del grupo de recursos: TestRG1
  • Nombre de la puerta de enlace de red virtual: VNet1GW

Nota:

Cuando se elimina la puerta de enlace VPN, se desconectarán todos los clientes conectados de la red virtual sin previo aviso.

  1. Obtenga la puerta de enlace de red virtual que quiera eliminar.

    GW=get-Azvirtualnetworkgateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Elimine la puerta de enlace de red virtual. Se le pedirá que confirme la eliminación de la puerta de enlace de red virtual.

    Remove-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    

    En este momento, la puerta de enlace de virtual se ha eliminado. Puede usar los pasos siguientes para eliminar los recursos que ya no se usan.

  3. Para eliminar los recursos de dirección IP pública, primero obtenga las configuraciones de IP de la puerta de enlace de red virtual.

    $GWIpConfigs = $Gateway.IpConfigurations
    

    A continuación, obtenga la lista de direcciones IP públicas que se usan para esta puerta de enlace de red virtual. Si la puerta de enlace de red virtual era activa-activa, verá dos direcciones IP públicas.

    $PubIP=Get-AzPublicIpAddress | where-object {$_.Id -In $GWIpConfigs.PublicIpAddress.Id}
    
  4. Elimine las direcciones IP públicas. Se le pedirá que confirme la eliminación de la dirección IP pública.

    $PubIP | foreach-object {remove-AzpublicIpAddress -Name $_.Name -ResourceGroupName "<NameOfResourceGroup1>"}
    
  5. Elimine la subred de puerta de enlace y establezca la configuración.

    $GWSub = Get-AzVirtualNetwork -ResourceGroupName "TestRG1" -Name "VNet1" | Remove-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet"
    Set-AzVirtualNetwork -VirtualNetwork $GWSub
    

Eliminación de una puerta de enlace VPN mediante la eliminación del grupo de recursos

Si no desea mantener ninguno de los recursos del grupo, sino que desea empezar de nuevo, puede eliminar dicho grupo por completo. Se trata de una forma rápida de quitarlos todos.

  1. Obtenga una lista de todos los grupos de recursos de la suscripción:

    Get-AzResourceGroup
    
  2. Localice el grupo de recursos que desea eliminar.

    Localice el grupo de recursos que quiera eliminar y vea la lista de recursos de dicho grupo. En el ejemplo, el nombre del grupo de recursos es TestRG1. Modifique el ejemplo para recuperar una lista de todos los recursos.

    Find-AzResource -ResourceGroupNameContains TestRG1
    
  3. Compruebe los recursos de la lista.

    Cuando se devuelve la lista, revísela para comprobar que desea eliminar todos los recursos del grupo de recursos y el mismo grupo. Si desea mantener algunos de los recursos del grupo de recursos, utilice los pasos de las secciones anteriores de este artículo para eliminar la puerta de enlace.

  4. Elimine el grupo de recursos y los recursos. Para eliminar el grupo de recursos y todos los recursos de este, modifique el ejemplo y ejecútelo.

    Remove-AzResourceGroup -Name TestRG1
    
  5. Compruebe el estado. Azure tarda unos minutos en eliminar todos los recursos. Puede comprobar el estado de su grupo de recursos con este cmdlet.

    Get-AzResourceGroup -ResourceGroupName TestRG1
    

    El resultado que se devuelve se muestra "Correcto".

    ResourceGroupName : TestRG1
    Location          : eastus
    ProvisioningState : Succeeded
    

Pasos siguientes

Para más información sobre las preguntas más frecuentes, vea Preguntas más frecuentes sobre Azure VPN Gateway.