Az Azure-ban három különböző objektumot neveznek átjárócímnek. A privát címet a GatewaySubnetből osztják ki. A nyilvános cím külön nyilvános IP-erőforrás, amelyre az átjáró IP-konfigurációja mutat. Az előfizetés és a felhőkörnyezet az a kontextus, amellyel a héj az egyiket vagy a másikat megtalálja. Módosítsd az egyiket, a másik kettő a helyén marad, ezért áll meg olyan gyakran félúton a címekkel végzett munka.

Ezeket a változtatásokat négy szakaszban végzem: az objektumok leltára, döntés arról, hogy a nyilvános IP a meglévő átjárón mozog-e vagy az átjárót újraépítik, a módosítás alkalmazása, amíg a régi cím még kéznél van, majd minden bújtatás ellenőrzése mindkét oldalról, mielőtt bármit törölnénk. A szakasz, amelyet kihagynak, a leltár.

Melyik a három objektum közül, amelyet valójában módosítasz

Nevezd meg az objektumot, mielőtt megnyitod a portált. A VPN-átjáró a privát címét olyan alhálózatból kapja, amelynek pontosan GatewaySubnet a neve, és az Azure ebből az előtagból osztja ki; nincs általános mező a rögzítésére. A cím csak azért tűnik stabilnak, mert az alhálózat stabil. Címezze át az alhálózatot, vagy építse újra az átjárót, és vele mozog.

A nyilvános cím szerkeszthető, de az SKU-szabályok döntik el, hogy a szerkesztés jogszerű-e. A Basic átjáró Basic dinamikus nyilvános IP-hez illik, a VpnGw SKU-k Standard statikusat igényelnek, a zónaredundáns átjáró pedig ugyanazokat a zónákat hordozó Standard nyilvános IP-t. A rossz SKU-t a rendszer elutasítja, mielőtt bújtatás elesne.

ObjectWhere it livesWhat a change forces
Private addressGatewaySubnet prefix, assigned at deploymentSubnet resize or rebuild, then routes, NSGs and peer review
Public addressPublic IP resource referenced by the IP configurationGateway reprovision, peer and allowlist edits, new client profiles
Subscription contextYour PowerShell or CLI sessionNothing in Azure, and it clears most not-found errors

Leltár, mielőtt bármi megmozdul

Először bizonyítsd az előfizetést, mert nélküle a többi leltár értéktelen. Rögzítsd az átjárót, annak IP-konfigurációit és minden kapcsolatot, amely rajta végződik, és tartsd a kimenetet a változásjegyzőkönyv mellett.

Get-AzContext | Select-Object Subscription, Tenant, Environment
Get-AzVirtualNetworkGateway -ResourceGroupName rg-hub -Name gw-hub |
  Select-Object Name, Sku, EnableActiveActive, IpConfigurations
Get-AzVirtualNetworkGatewayConnection -ResourceGroupName rg-hub |
  Select-Object Name, ConnectionStatus, ConnectionType

Az erőforrás-azonosítók fontosabbak a neveknél. A kapcsolat hivatkozásokat tart az átjáróra és egy helyi hálózati átjáróra, és ezek az azonosítók olyan szkriptekben, riasztásokban és szabályzat-hozzárendelésekben bukkannak fel, amelyekre senki sem emlékszik. Sorolj fel mindent az Azure-on kívül is: az IP-re mutató DNS-nevet, a partner engedélylistáját, a fióki tűzfalat, amely a régi IP-hez ragaszkodik.

A nyilvános IP cseréje a futó átjárón

Először hozd létre a helyettesítő címet, ugyanabban a régióban és az átjáróhoz illő zónakészlettel, és hagyd a régi erőforrást a helyén. Utána építsd újra az IP-konfigurációt, és egyetlen hívással küldd el a frissítést. Ez a hívás a teljes konfigurációgyűjteményt lecseréli, ezért az aktív-aktív átjárónak mindkettőre szüksége van, különben marad az egyik bújtatás és elvész a másik.

$gw = Get-AzVirtualNetworkGateway -ResourceGroupName rg-hub -Name gw-hub
$pip = New-AzPublicIpAddress -Name pip-gw-hub-2 -ResourceGroupName rg-hub `
  -Location westeurope -AllocationMethod Static -Sku Standard
$conf = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 `
  -SubnetId $gw.IpConfigurations[0].Subnet.Id -PublicIpAddressId $pip.Id
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $gw -IpConfigurations $conf

A bújtatások elesnek, amíg az átjáró újraépül. A túloldalnak ütemezés kell: a partner tűzfala addig kínálja a régi címet, amíg valaki nem szerkeszti, és az a kapcsolat, amelynek túloldala az előző IP-t várja, lent marad, akármilyen egészségesnek látszik az Azure. Az ablak előtt csökkentsd a DNS TTL-t.

A pont-hely ügyfeleknek friss profil kell, mert a letöltött csomag hordozza a végpontot. Az átjáró előtti egyéni DNS-név megkímél az újraosztástól: tartsd meg a nevet, módosítsd a rekordot.

Az átjáró áthelyezése másik előfizetésbe

Az erőforrás-áthelyezés egy készletet mozgat, és az átjáró egymaga a legkevésbé hasznos tagja. A virtuális hálózat, a nyilvános IP-erőforrások, a helyi hálózati átjárók és a kapcsolatok együtt utaznak, mert mindegyik hivatkozik egy másikra. A célelőfizetésnek ugyanabban a bérlőben kell lennie, a Microsoft.Network-nek regisztrálva kell lennie ott, és mindkét oldalon írási jogosultság kell.

Az érvényesítés minden változás előtt lefut, ezért az elutasított áthelyezés a helyén hagyja az erőforrásokat. Ezért érdemel az áthelyezés egy kísérletet az újraépítés előtt: a sikeres áthelyezés magával viszi a nyilvános IP-t, így a partnerek és az engedélylisták tovább működnek, míg az újraépített átjáró ritkán adja vissza ugyanazt a címet.

az resource move --destination-group rg-hub `
  --destination-subscription-id 00000000-0000-0000-0000-000000000000 `
  --ids /subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg-hub/providers/Microsoft.Network/virtualNetworkGateways/gw-hub

Olvasd el az érvényesítési hibát ahelyett, hogy megismételnéd. A szokásos okok a hátrahagyott függőség, a nem áthelyezhető erőforrástípus vagy valamelyik erőforráscsoport zárolása. Ha az áthelyezés lehetetlen, építsd újra a célban, és válts át: erősítsd meg az útválasztást és a hitelesítést egy tesztalhálózatból, állítsd le a régi kapcsolatokat a törlésük helyett, majd egy későbbi ablakban távolítsd el a régi útvonalat.

Amikor az átjáró hiányzónak tűnik, ellenőrizd a kontextust

A nem található hiba általában hatókörhiba. A több előfizetéssel rendelkező fiók rossz előfizetésre irányít egy cmdletet, és az üzenet az erőforrást hibáztatja. Inkább a teljes erőforrás-azonosítóval keresd meg az objektumot: az azonosító a saját előfizetését hordozza, tehát ha feloldódik, semmi sem hiányzik, és az alapértelmezett kontextusod hibás.

Két további eltérés ugyanígy olvasható. A kereskedelmi felhő átjárója nem létezik kormányzati vagy kínai környezetre irányított munkamenetben, és a régebbi modulverziók kihagyják azokat az erőforrásformákat, amelyeket az API már visszaad. Rögzítsd az előfizetést, igazítsd a környezetet, aztán nyiss esetet.

Set-AzContext -SubscriptionId 11111111-1111-1111-1111-111111111111
Get-AzResource -ResourceId /subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg-hub/providers/Microsoft.Network/virtualNetworkGateways/gw-hub

Mindkét oldalról ellenőrizz a takarítás előtt

A csatlakoztatva állapot, nem bizonyíték. Ellenőrizd a bújtatás állapotát kapcsolatonként, a BGP-társ állapotát dinamikus útválasztás esetén, és a tényleges útvonalakat egy számítási alhálózaton. Utána küldj át egy valódi kérést egy olyan alkalmazáson, amely függ a bújtatástól. Egy kapcsolat jelenthet csatlakoztatott állapotot úgy, hogy a szükséges előtag hiányzik az útvonaltáblából.

Get-AzVirtualNetworkGatewayBGPPeerStatus -VirtualNetworkGatewayName gw-hub -ResourceGroupName rg-hub
Get-AzEffectiveRouteTable -NetworkInterfaceName nic-app -ResourceGroupName rg-app

Tartsd a régi nyilvános IP-t leválasztva, nem törölve, amíg a visszaállítási ablak bezárul, és írd le a partner- és tűzfalmódosításokat, hogy sorrendben vissza lehessen fordítani őket.

  • A kontextus az átjárót birtokló előfizetéshez rögzítve
  • A régi nyilvános IP megőrizve, függőségei feljegyezve
  • Minden kapcsolat zöld, és egy valódi kérés rajta keresztül
  • A pont-hely felhasználók átállítva a frissített profilra
  • A DNS-rekord módosítva, korábbi értéke rögzítve

Kapcsolódó cikkek