@@ -389,6 +389,97 @@ function Test-VirtualNetworkGatewayConnectionWithActiveActiveGateway
389
389
}
390
390
}
391
391
392
+ <#
393
+ . SYNOPSIS
394
+ Virtual network gateway connection test with Active-Active feature enabled virtual network gateway
395
+ #>
396
+ function Test-VirtualNetworkGatewayConnectionWithZeroSaData
397
+ {
398
+ # Setup
399
+ $rgname = Get-ResourceName
400
+ $rname1 = Get-ResourceName
401
+ $rname2 = Get-ResourceName
402
+ $domainNameLabel11 = Get-ResourceName
403
+ $domainNameLabel12 = Get-ResourceName
404
+ $domainNameLabel2 = Get-ResourceName
405
+ $vnetName1 = Get-ResourceName
406
+ $vnetName2 = Get-ResourceName
407
+ $vnetConnectionName1 = Get-ResourceName
408
+ $vnetConnectionName2 = Get-ResourceName
409
+ $publicIpName11 = Get-ResourceName
410
+ $publicIpName12 = Get-ResourceName
411
+ $publicIpName2 = Get-ResourceName
412
+ $vnetGatewayConfigName11 = Get-ResourceName
413
+ $vnetGatewayConfigName12 = Get-ResourceName
414
+ $vnetGatewayConfigName2 = Get-ResourceName
415
+ $rglocation = Get-ProviderLocation ResourceManagement
416
+ $resourceTypeParent = " Microsoft.Network/connections"
417
+ $location = Get-ProviderLocation $resourceTypeParent
418
+
419
+ try
420
+ {
421
+ # Create the resource group
422
+ $resourceGroup = New-AzResourceGroup - Name $rgname - Location $rglocation - Tags @ { testtag = " testval" }
423
+
424
+ # Create the Virtual Network1
425
+ $subnet1 = New-AzVirtualNetworkSubnetConfig - Name " GatewaySubnet" - AddressPrefix 10.0 .0.0 / 24
426
+ $vnet1 = New-AzVirtualNetwork - Name $vnetName1 - ResourceGroupName $rgname - Location $location - AddressPrefix 10.0 .0.0 / 16 - Subnet $subnet1
427
+ $vnet1 = Get-AzVirtualNetwork - Name $vnetName1 - ResourceGroupName $rgname
428
+ $subnet1 = Get-AzVirtualNetworkSubnetConfig - Name " GatewaySubnet" - VirtualNetwork $vnet1
429
+
430
+ # Create Active-Active feature enabled virtualnetworkgateway1 & Get virtualnetworkgateway1
431
+ $publicip11 = New-AzPublicIpAddress - ResourceGroupName $rgname - name $publicIpName11 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel11
432
+ $vnetIpConfig11 = New-AzVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName11 - PublicIpAddress $publicip11 - Subnet $subnet1
433
+
434
+ $publicip12 = New-AzPublicIpAddress - ResourceGroupName $rgname - name $publicIpName12 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel12
435
+ $vnetIpConfig12 = New-AzVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName12 - PublicIpAddress $publicip12 - Subnet $subnet1
436
+
437
+ $vnetGateway1 = New-AzVirtualNetworkGateway - ResourceGroupName $rgname - name $rname1 - Location $location - IpConfigurations $vnetIpConfig11 , $vnetIpConfig12 - GatewayType Vpn - VpnType RouteBased - EnableBgp $false - GatewaySku HighPerformance - EnableActiveActiveFeature
438
+ $vnetGateway1 = Get-AzVirtualNetworkGateway - ResourceGroupName $rgname - name $rname1
439
+
440
+ # Create IpsecPolicy and test SADataSizeKilobytes when passed 0
441
+ $ipsecPolicy = New-AzIpsecPolicy - SALifeTimeSeconds 3000 - SADataSizeKilobytes 0 - IpsecEncryption " GCMAES256" - IpsecIntegrity " GCMAES256" - IkeEncryption " AES256" - IkeIntegrity " SHA256" - DhGroup " DHGroup14" - PfsGroup " PFS2048"
442
+ Assert-AreEqual $ipsecPolicy.SADataSizeKilobytes 0
443
+
444
+ # Create the Virtual Network2
445
+ $subnet2 = New-AzVirtualNetworkSubnetConfig - Name " GatewaySubnet" - AddressPrefix 192.168 .200.0 / 26
446
+ $vnet2 = New-AzVirtualNetwork - Name $vnetName2 - ResourceGroupName $rgname - Location $location - AddressPrefix 192.168 .0.0 / 16 - Subnet $subnet2
447
+ $vnet2 = Get-AzVirtualNetwork - Name $vnetName2 - ResourceGroupName $rgname
448
+ $subnet2 = Get-AzVirtualNetworkSubnetConfig - Name " GatewaySubnet" - VirtualNetwork $vnet2
449
+
450
+ # Create the publicip2
451
+ $publicip2 = New-AzPublicIpAddress - ResourceGroupName $rgname - name $publicIpName2 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel2
452
+
453
+ # Create VirtualNetworkGateway2
454
+ $vnetIpConfig2 = New-AzVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName2 - PublicIpAddress $publicip2 - Subnet $subnet2
455
+
456
+ $vnetGateway2 = New-AzVirtualNetworkGateway - ResourceGroupName $rgname - name $rname2 - location $location - IpConfigurations $vnetIpConfig2 - GatewayType Vpn - VpnType RouteBased - GatewaySku Standard
457
+ $vnetGateway2 = Get-AzVirtualNetworkGateway - ResourceGroupName $rgname - name $rname2
458
+
459
+ # Create & Get VirtualNetworkGatewayConnection1, VirtualNetworkGatewayConnection2
460
+ $connection1 = New-AzVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName1 - location $location - VirtualNetworkGateway1 $vnetGateway1 - VirtualNetworkGateway2 $vnetGateway2 - ConnectionType Vnet2Vnet - RoutingWeight 3 - SharedKey abc - IpsecPolicies $ipsecPolicy
461
+ $connection2 = New-AzVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName2 - location $location - VirtualNetworkGateway1 $vnetGateway2 - VirtualNetworkGateway2 $vnetGateway1 - ConnectionType Vnet2Vnet - RoutingWeight 3 - SharedKey abc - IpsecPolicies $ipsecPolicy
462
+
463
+ $connection1 = Get-AzVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName1
464
+ $connection2 = Get-AzVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName2
465
+
466
+ Assert-AreEqual $connection1.IpsecPolicies [0 ].SADataSizeKilobytes $connection2.IpsecPolicies [0 ].SADataSizeKilobytes
467
+ Assert-AreEqual $connection1.IpsecPolicies [0 ].SADataSizeKilobytes 0
468
+ Assert-AreEqual $connection2.IpsecPolicies [0 ].SADataSizeKilobytes 0
469
+
470
+ # Delete VirtualNetworkGatewayConnections
471
+ $delete = Remove-AzVirtualNetworkGatewayConnection - ResourceGroupName $connection1.ResourceGroupName - name $vnetConnectionName1 - PassThru - Force
472
+ Assert-AreEqual true $delete
473
+ $delete = Remove-AzVirtualNetworkGatewayConnection - ResourceGroupName $connection2.ResourceGroupName - name $vnetConnectionName2 - PassThru - Force
474
+ Assert-AreEqual true $delete
475
+ }
476
+ finally
477
+ {
478
+ # Cleanup
479
+ Clean - ResourceGroup $rgname
480
+ }
481
+ }
482
+
392
483
function Test-VirtualNetworkGatewayConnectionCRUD
393
484
{
394
485
# Setup
0 commit comments