PowerShell kullanarak farklı dağıtım modellerindeki sanal ağları birbirine bağlama

Bu makale, ayrı dağıtım modellerinde yer alan kaynakların birbirleriyle iletişim kurmasına izin vermek için klasik sanal ağları Resource Manager sanal ağlarına bağlamanıza yardımcı olur. Bu makaledeki adımlarda PowerShell kullanılmaktadır.

Bu makale, klasik (eski) dağıtım modeli kullanılarak oluşturulmuş bir sanal ağa zaten sahip olan ve şimdi klasik sanal ağı en son dağıtım modeli kullanılarak oluşturulan başka bir sanal ağa bağlamak isteyen müşterilere yöneliktir. Eski bir sanal ağınız yoksa bunun yerine Sanal ağdan sanal ağa bağlantı oluşturma makalesini kullanın.

Mimari

Klasik bir sanal ağı Resource Manager sanal asına Bağlan, bir sanal ağı şirket içi site konumuna bağlamaya benzer. Her iki bağlantı türü de IPsec/IKE kullanarak güvenli bir tünel sunmak üzere bir VPN ağ geçidi kullanır. Farklı aboneliklerde ve farklı bölgelerde bulunan sanal ağlar arasında bağlantı oluşturabilirsiniz. Ağ geçidi dinamik veya yol tabanlı olduğu sürece şirket içi ağlara zaten bağlantıları olan sanal ağları da bağlayabilirsiniz. Sanal ağdan sanal ağa bağlantılar hakkında daha fazla bilgi için bkz . Sanal Ağdan Sanal Ağa SSS.

Bu yapılandırma için, sanal ağlar arasında bir IPsec/IKE VPN tüneli üzerinden bir VPN ağ geçidi bağlantısı oluşturursunuz. Sanal ağ aralıklarınızdan hiçbirinin birbiriyle veya bağlandıkları yerel ağlarla çakışmadığından emin olun.

Aşağıdaki tabloda örnek sanal ağların ve yerel sitelerin nasıl tanımlandığına ilişkin bir örnek gösterilmektedir:

Sanal Ağ Adres Alanı Bölge Yerel ağ sitesine Bağlan
ClassicVNet (10.1.0.0/16) Batı ABD RMVNetSite (192.168.0.0/16)
RMVNet (192.168.0.0/16) Doğu ABD ClassicVNetSite (10.1.0.0/16)

Önkoşullar

Aşağıdaki adımlar, her sanal ağ için dinamik veya rota tabanlı bir ağ geçidi yapılandırmak ve ağ geçitleri arasında bir VPN bağlantısı oluşturmak için gereken ayarlarda size yol gösterir. Bu yapılandırma statik veya ilke tabanlı ağ geçitlerini desteklemez.

Bu adımlarda eski bir klasik sanal ağınız ve önceden oluşturulmuş bir Resource Manager sanal ağınız olduğu varsayılır.

Örnek ayarlar

Örnekleri daha iyi anlamak için bu değerleri kullanabilirsiniz.

Klasik sanal ağ

Sanal Ağ Adı = ClassicVNet
Kaynak Grubu = ClassicRG Konumu = Batı ABD
Sanal Ağ Adres Alanları = 10.1.0.0/16
Alt Ağ1 = 10.1.0.0/24
GatewaySubnet = 10.1.255.0/27
Yerel Ağ Adı = RMVNetSite
GatewayType = DynamicRouting

Resource Manager sanal ağı

Sanal Ağ Adı = RMVNet
Kaynak Grubu = RMRG
Sanal Ağ IP Adres Alanları = 192.168.0.0/16
Alt ağ1 = 192.168.1.0/24
GatewaySubnet = 192.168.255.0/27
Konum = Doğu ABD
Ağ geçidi genel IP adı = rmgwpip
Yerel Ağ Geçidi = ClassicVNetSite
Sanal Ağ Ağ Geçidi adı = RMGateway
Ağ geçidi IP adresleme yapılandırması = gwipconfig

Klasik sanal ağı yapılandırma

Bu bölümde, zaten var olan klasik sanal ağınızı yapılandıracaksınız. Sanal ağınızda zaten bir ağ geçidi varsa ağ geçidinin Rota tabanlı olduğunu doğrulayın ve sonraki bölüme geçin. Ağ geçidi Rota tabanlı değilse, sonraki adımlarla ilerlemeden önce ağ geçidini silin. Daha sonra yeni bir ağ geçidi oluşturma fırsatınız olacak.

1. Ağ yapılandırma dosyanızı indirin

  1. Yükseltilmiş haklarla PowerShell konsolunda Azure hesabınızda oturum açın. Aşağıdaki cmdlet, Azure Hesabınız için oturum açma kimlik bilgilerini ister. Oturum açtıktan sonra hesap ayarlarınızı indirerek Azure PowerShell'de kullanılabilmeleri sağlanır. Klasik Hizmet Yönetimi (SM) Azure PowerShell cmdlet'leri bu bölümde kullanılır.

    Add-AzureAccount
    

    Azure aboneliğinizi alın.

    Get-AzureSubscription
    

    Birden fazla aboneliğiniz varsa, kullanmak istediğiniz aboneliği seçin.

    Select-AzureSubscription -SubscriptionName "Name of subscription"
    
  2. Bilgisayarınızda bir dizin oluşturun. Bu örnekte AzureNet'i oluşturduk.

  3. Aşağıdaki komutu çalıştırarak Azure ağ yapılandırma dosyanızı dışarı aktarın. Gerekirse dosyanın konumunu farklı bir konuma dışarı aktaracak şekilde değiştirebilirsiniz.

    Get-AzureVNetConfig -ExportToFile C:\AzureNet\NetworkConfig.xml
    
  4. Düzenlemek için indirdiğiniz .xml dosyasını açın. Ağ yapılandırma dosyası örneği için bkz . Ağ Yapılandırma Şeması.

  5. Değerini not VirtualNetworkSite name= alın. Klasik sanal ağınızı portalı kullanarak oluşturduysanız, ad portalda "ClassicVNet" yerine "Group ClassicRG ClassicVNet" benzeri bir biçime uyar.

2. Ağ geçidi alt akını doğrulama

VirtualNetworkSites öğesinde, henüz oluşturulmamışsa sanal ağınıza bir ağ geçidi alt ağı ekleyin. Ağ geçidi alt ağı "GatewaySubnet" olarak adlandırılmalıdır veya Azure bunu bir ağ geçidi alt ağı olarak tanıyamaz ve kullanamaz.

Önemli

Ağ geçidi alt ağlarıyla çalışırken ağ güvenlik grubunu (NSG) ağ geçidi alt ağıyla ilişkilendirmekten kaçının. Bir ağ güvenlik grubunun bu alt ağ ile ilişkilendirilmesi, sanal ağ geçidinizin (VPN ve ExpressRoute ağ geçitleri) beklendiği gibi çalışmayı durdurmasına neden olabilir. Ağ güvenlik grupları hakkında daha fazla bilgi için bkz . Ağ güvenlik grubu nedir?.

Örnek:

<VirtualNetworkSites>
  <VirtualNetworkSite name="ClassicVNet" Location="West US">
    <AddressSpace>
      <AddressPrefix>10.1.0.0/16</AddressPrefix>
    </AddressSpace>
    <Subnets>
      <Subnet name="Subnet1">
        <AddressPrefix>10.1.0.0/24</AddressPrefix>
      </Subnet>
      <Subnet name="GatewaySubnet">
        <AddressPrefix>10.1.255.0/27</AddressPrefix>
      </Subnet>
    </Subnets>
  </VirtualNetworkSite>
</VirtualNetworkSites>

3. Yerel ağ sitesini ekleyin

Eklediğiniz yerel ağ sitesi, bağlanmak istediğiniz RM sanal ağını temsil eder. Henüz yoksa, dosyaya bir LocalNetworkSites öğesi ekleyin. Yapılandırmanın bu noktasında, Resource Manager sanal ağı için ağ geçidini henüz oluşturmadığımız için VPNGatewayAddress geçerli herhangi bir genel IP adresi olabilir. RM ağ geçidini oluşturduktan sonra, bu yer tutucu IP adresini RM ağ geçidine atanmış doğru genel IP adresiyle değiştireceksiniz.

<LocalNetworkSites>
  <LocalNetworkSite name="RMVNetSite">
    <AddressSpace>
      <AddressPrefix>192.168.0.0/16</AddressPrefix>
    </AddressSpace>
    <VPNGatewayAddress>5.4.3.2</VPNGatewayAddress>
  </LocalNetworkSite>
</LocalNetworkSites>

4. Sanal ağı yerel ağ sitesiyle ilişkilendirin

Bu bölümde, sanal ağı bağlamak istediğiniz yerel ağ sitesini belirteceğiz. Bu durumda, daha önce başvurduğunuz Resource Manager sanal ağıdır. Adların eşleştiğinden emin olun. Bu adım bir ağ geçidi oluşturmaz. Ağ geçidinin bağlanacağı yerel ağı belirtir.

<Gateway>
  <ConnectionsToLocalNetwork>
    <LocalNetworkSiteRef name="RMVNetSite">
      <Connection type="IPsec" />
    </LocalNetworkSiteRef>
  </ConnectionsToLocalNetwork>
</Gateway>

5. Dosyayı kaydedin ve karşıya yükleyin

Aşağıdaki komutu çalıştırarak dosyayı kaydedin ve Azure'a aktarın. Ortamınız için gereken dosya yolunu değiştirdiğinizden emin olun.

Set-AzureVNetConfig -ConfigurationPath C:\AzureNet\NetworkConfig.xml

İçeri aktarma işleminin başarılı olduğunu gösteren benzer bir sonuç görürsünüz.

OperationDescription        OperationId                      OperationStatus                                                
--------------------        -----------                      ---------------                                                
Set-AzureVNetConfig        e0ee6e66-9167-cfa7-a746-7casb9    Succeeded 

6. Ağ geçidini oluşturma

Bu örneği çalıştırmadan önce, Azure'ın görmeyi beklediği tam adlar için indirdiğiniz ağ yapılandırma dosyasına bakın. Ağ yapılandırma dosyası, klasik sanal ağlarınızın değerlerini içerir. Portalı kullanarak klasik bir sanal ağ oluşturulduğunda, ağ yapılandırma dosyasında sanal ağ adı farklıdır. Örneğin, Azure portalını kullanarak 'Klasik VNet' adlı klasik bir sanal ağ oluşturduysanız ve bunu 'ClassicRG' adlı bir kaynak grubunda oluşturduysanız, ağ yapılandırma dosyasında yer alan ad 'Group ClassicRG Classic VNet'e dönüştürülür. PowerShell ile çalışırken her zaman ağ yapılandırma dosyasında yer alan adı kullanın.Boşluk içeren bir sanal ağın adını belirttiğinizde, değerin çevresinde tırnak işaretleri kullanın.

Dinamik yönlendirme ağ geçidi oluşturmak için aşağıdaki örneği kullanın:

New-AzureVNetGateway -VNetName ClassicVNet -GatewayType DynamicRouting

Get-AzureVNetGateway cmdlet'ini kullanarak ağ geçidinin durumunu denetleyebilirsiniz.

RM sanal ağ geçidini yapılandırma

Önkoşullar, zaten bir RM sanal ağı oluşturduğunuzu varsayar. Bu adımda RM sanal ağı için bir VPN ağ geçidi oluşturursunuz. Klasik sanal ağın ağ geçidinin genel IP adresini alana kadar bu adımları başlatmayın.

  1. PowerShell konsolunda Azure hesabınızda oturum açın. Aşağıdaki cmdlet, Azure Hesabınız için oturum açma kimlik bilgilerini ister. Oturum açtıktan sonra hesap ayarlarınız indirilir ve böylece Azure PowerShell'de kullanılabilir. İsteğe bağlı olarak "Deneyin" özelliğini kullanarak Azure Cloud Shell'i tarayıcıda başlatabilirsiniz.

    Azure Cloud Shell kullanıyorsanız aşağıdaki cmdlet'i atlayın:

    Connect-AzAccount
    

    Doğru aboneliği kullandığınızı doğrulamak için aşağıdaki cmdlet'i çalıştırın:

    Get-AzSubscription
    

    Birden fazla aboneliğiniz varsa, kullanmak istediğiniz aboneliği belirtin.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    
  2. Yerel ağ geçidi oluşturma. Sanal bir ağda, yerel ağ geçidi genellikle şirket içi konumunuz anlamına gelir. Bu durumda, yerel ağ geçidi Klasik sanal ağınıza başvurur. Azure'ın başvurabileceği bir ad verin ve adres alanı ön ekini belirtin. Azure, belirttiğiniz IP adresi ön ekini kullanarak hangi trafiğin şirket içi konumunuza gönderileceğini belirler. Buradaki bilgileri daha sonra ayarlamanız gerekirse, ağ geçidinizi oluşturmadan önce değerleri değiştirebilir ve örneği yeniden çalıştırabilirsiniz.

    -Name , yerel ağ geçidine başvurmak için atamak istediğiniz addır.
    -AddressPrefix , klasik sanal ağınızın Adres Alanıdır.
    -GatewayIpAddress , klasik sanal ağın ağ geçidinin genel IP adresidir. Aşağıdaki örnek "n.n.n.n" metnini doğru IP adresini yansıtacak şekilde değiştirdiğinizden emin olun.

    New-AzLocalNetworkGateway -Name ClassicVNetSite `
    -Location "West US" -AddressPrefix "10.1.0.0/16" `
    -GatewayIpAddress "n.n.n.n" -ResourceGroupName RMRG
    
  3. Resource Manager sanal ağı için sanal ağ geçidine bir genel IP adresi ayrılmasını isteyin. Kullanmak istediğiniz IP adresini belirtemezsiniz. IP adresi sanal ağ geçidine dinamik olarak ayrılır. Ancak bu, IP adresinin değiştiği anlamına gelmez. Sanal ağ geçidi IP adresi yalnızca ağ geçidinin silinip yeniden oluşturulmasıyla değişir. Ağ geçidinin yeniden boyutlandırma, sıfırlama veya diğer iç bakım/yükseltme işlemlerinde değişmez.

    Bu adımda, sonraki bir adımda kullanılacak bir değişken de ayarlayacağız.

    $ipaddress = New-AzPublicIpAddress -Name rmgwpip `
    -ResourceGroupName RMRG -Location 'EastUS' `
    -AllocationMethod Dynamic
    
  4. Sanal ağınızın bir ağ geçidi alt ağına sahip olduğunu doğrulayın. Ağ geçidi alt ağı yoksa bir alt ağ ekleyin. Ağ geçidi alt unun GatewaySubnet olarak adlandırdığından emin olun.

    $vnet = Get-AzVirtualNetwork -ResourceGroupName RMRG -Name RMVNet
    Add-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 192.168.255.0/27 -VirtualNetwork $vnet
    Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  5. Aşağıdaki komutu çalıştırarak ağ geçidi için kullanılan alt ağı alın. Bu adımda, bir sonraki adımda kullanılacak bir değişken de ayarlayacağız.

    -Name , Resource Manager sanal ağınızın adıdır.
    -ResourceGroupName , sanal ağın ilişkili olduğu kaynak grubudur. Bu sanal ağ için ağ geçidi alt ağı zaten mevcut olmalı ve düzgün çalışması için GatewaySubnet olarak adlandırılmalıdır.

    $subnet = Get-AzVirtualNetworkSubnetConfig -Name GatewaySubnet `
    -VirtualNetwork (Get-AzVirtualNetwork -Name RMVNet -ResourceGroupName RMRG)
    
  6. Ağ geçidi IP adresleme yapılandırmasını oluşturun. Ağ geçidi yapılandırması, kullanılacak alt ağı ve genel IP adresini tanımlar. Ağ geçidi yapılandırmanızı oluşturmak için aşağıdaki örneği kullanın.

    Bu adımda, -SubnetId ve -PublicIpAddressId parametreleri sırasıyla alt ağdan ID özelliğine ve IP adresi nesnelerine geçirilmelidir. Basit bir dize kullanamazsınız. Bu değişkenler, genel IP istemek için adımında ve alt ağı alma adımında ayarlanır.

    $gwipconfig = New-AzVirtualNetworkGatewayIpConfig `
    -Name gwipconfig -SubnetId $subnet.id `
    -PublicIpAddressId $ipaddress.id
    
  7. Aşağıdaki komutu çalıştırarak Resource Manager sanal ağ geçidini oluşturun. , -VpnType RouteBased olmalıdır. Ağ geçidinin oluşturulması 45 dakika veya daha uzun sürebilir.

    New-AzVirtualNetworkGateway -Name RMGateway -ResourceGroupName RMRG `
    -Location "EastUS" -GatewaySKU Standard -GatewayType Vpn `
    -IpConfigurations $gwipconfig `
    -EnableBgp $false -VpnType RouteBased
    
  8. VPN ağ geçidi oluşturulduktan sonra genel IP adresini kopyalayın. Bunu, Klasik sanal ağınız için yerel ağ ayarlarını yapılandırırken kullanırsınız. Genel IP adresini almak için aşağıdaki cmdlet'i kullanabilirsiniz. Genel IP adresi, dönüşte IpAddress olarak listelenir.

    Get-AzPublicIpAddress -Name rmgwpip -ResourceGroupName RMRG
    

Klasik sanal ağ yerel site ayarlarını değiştirme

Bu bölümde klasik sanal ağ ile çalışacaksınız. Resource Manager sanal ağ geçidine bağlanmak için kullanılacak yerel site ayarlarını belirtirken kullandığınız yer tutucu IP adresini değiştirirsiniz. Klasik sanal ağ ile çalıştığınız için Azure Cloud Shell TryIt'i değil, yerel olarak bilgisayarınıza yüklenen PowerShell'i kullanın.

  1. Ağ yapılandırma dosyasını dışarı aktarın.

    Get-AzureVNetConfig -ExportToFile C:\AzureNet\NetworkConfig.xml
    
  2. Metin düzenleyicisi kullanarak VPNGatewayAddress değerini değiştirin. Yer tutucu IP adresini Resource Manager ağ geçidinin genel IP adresiyle değiştirin ve değişiklikleri kaydedin.

    <VPNGatewayAddress>13.68.210.16</VPNGatewayAddress>
    
  3. Değiştirilen ağ yapılandırma dosyasını Azure'a aktarın.

    Set-AzureVNetConfig -ConfigurationPath C:\AzureNet\NetworkConfig.xml
    

Ağ geçitleri arasında bağlantı oluşturma

Ağ geçitleri arasında bağlantı oluşturmak için PowerShell gerekir. PowerShell cmdlet'lerinin klasik sürümünü kullanmak için Azure Hesabınızı eklemeniz gerekebilir. Bunu yapmak için Add-AzureAccount kullanın.

  1. PowerShell konsolunda paylaşılan anahtarınızı ayarlayın. Cmdlet'leri çalıştırmadan önce, Azure'ın görmeyi beklediği tam adlar için indirdiğiniz ağ yapılandırma dosyasına bakın. Boşluk içeren bir sanal ağın adını belirtirken, değerin çevresinde tek tırnak işareti kullanın.

    Aşağıdaki örnekte, -VNetName klasik sanal ağın adı, -LocalNetworkSiteName ise yerel ağ sitesi için belirttiğiniz addır. Daha önce indirdiğiniz ağ yapılandırma dosyasında her ikisinin adlarını doğrulayın.

    -SharedKey, oluşturduğunuz ve belirttiğiniz bir değerdir. Örnekte 'abc123' kullandık, ancak daha karmaşık bir şey oluşturup kullanabilirsiniz. Önemli olan, burada belirttiğiniz değerin, bağlantınızı oluştururken sonraki adımda belirttiğiniz değerle aynı olması gerektiğidir. Dönüşte Durum: Başarılı gösterilmelidir.

    Set-AzureVNetGatewayKey -VNetName ClassicVNet `
    -LocalNetworkSiteName RMVNetSite -SharedKey abc123
    
  2. Aşağıdaki komutları çalıştırarak VPN bağlantısını oluşturun:

    Değişkenleri ayarlayın.

    $vnet01gateway = Get-AzLocalNetworkGateway -Name ClassicVNetSite -ResourceGroupName RMRG
    $vnet02gateway = Get-AzVirtualNetworkGateway -Name RMGateway -ResourceGroupName RMRG
    

    Bağlantıyı oluşturun. -Bağlan ionType'ın Vnet2Vnet değil IPsec olduğuna dikkat edin.

    New-AzVirtualNetworkGatewayConnection -Name RM-Classic -ResourceGroupName RMRG `
    -Location "East US" -VirtualNetworkGateway1 `
    $vnet02gateway -LocalNetworkGateway2 `
    $vnet01gateway -ConnectionType IPsec -RoutingWeight 10 -SharedKey 'abc123'
    

Bağlantılarınızı doğrulama

Klasik sanal ağdan RM sanal asına

'Get-AzureVNet Bağlan ion' cmdlet'ini kullanarak bağlantınızın başarılı olduğunu doğrulayabilirsiniz. Bu cmdlet bilgisayarınızda yerel olarak çalıştırılmalıdır.

  1. Aşağıdaki cmdlet örneğini kullanın ve değerleri, kendi değerlerinizle eşleşecek şekilde yapılandırın. Boşluklar içeriyorsa, sanal ağın adı tırnak içinde olmalıdır. Ağ yapılandırma dosyasında olduğu gibi sanal ağın adını kullanın.

    Get-AzureVNetConnection "ClassicVNet"
    
  2. cmdlet tamamlandıktan sonra değerleri görüntüleyin. Aşağıdaki örnekte, Bağlan ivity State değeri 'Bağlan' olarak gösterilir ve giriş ve çıkış baytlarını görebilirsiniz.

    ConnectivityState         : Connected
    EgressBytesTransferred    : 0
    IngressBytesTransferred   : 0
    LastConnectionEstablished : 4/25/2022 4:24:34 PM
    LastEventID               : 24401
    LastEventMessage          : The connectivity state for the local network site 'RMVNetSite' changed from Not Connected to Connected.
    LastEventTimeStamp        : 4/25/2022 4:24:34 PM
    LocalNetworkSiteName      : RMVNetSite
    OperationDescription      :
    OperationId               :
    OperationStatus           :
    

RM sanal adan klasik sanal ağa

'-Debug' ile veya olmadan 'Get-AzVirtualNetworkGateway Bağlan ion' cmdlet'ini kullanarak bağlantınızın başarılı olduğunu doğrulayabilirsiniz.

  1. Aşağıdaki cmdlet örneğini kullanın ve değerleri, kendi değerlerinizle eşleşecek şekilde yapılandırın. İstendiğinde "Tümünü" çalıştırmak için "A" seçeneğini belirleyin. Örnekte bulunan "-Name", test etmek istediğiniz bağlantının adıdır.

    Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1
    
  2. cmdlet tamamlandıktan sonra değerleri görüntüleyin. Aşağıdaki örnekte bağlantı durumu 'Bağlan' olarak gösterilir ve giriş ve çıkış baytlarını görebilirsiniz.

    "connectionStatus": "Connected",
    "ingressBytesTransferred": 33509044,
    "egressBytesTransferred": 4142431
    

Sonraki adımlar

Sanal ağdan sanal ağa bağlantılar hakkında daha fazla bilgi için bkz . VPN Gateway SSS.