Megosztás a következőn keresztül:


DNS-zónák kezelése a PowerShell használatával

Ez a cikk bemutatja, hogyan kezelheti a DNS-zónákat az Azure PowerShell használatával. A DNS-zónákat a platformfüggetlen Azure CLI-vel vagy az Azure Portallal is kezelheti.

Ez az útmutató kifejezetten a nyilvános DNS-zónákkal foglalkozik. Az Azure PowerShell privát zónák Azure DNS-ben való kezelésével kapcsolatos információkért tekintse meg az Azure DNS Privát zónák Azure PowerShell-lel való használatának első lépéseit.

A DNS-zóna egy adott tartomány DNS-rekordjait tárolja. A tartománya Azure DNS-ben való üzemeltetésének megkezdéséhez létre kell hoznia egy DNS-zónát az adott tartománynévhez. Ezután a tartománya összes DNS-rekordja ebben a DNS-zónában jön létre.

A „contoso.com” tartomány például számos DNS-rekordot tartalmazhat, például „mail.contoso.com” (levelezési kiszolgálóhoz) és „www.contoso.com” (webhelyhez).

DNS-zóna Azure DNS-ben való létrehozásakor:

  • A zóna nevének egyedinek kell lennie az erőforráscsoporton belül, és nem egyezhet egy meglévő névvel. Ellenkező esetben a művelet sikertelen lesz.
  • Az egyes zónanevek újra felhasználhatók egy másik erőforráscsoportban vagy egy másik Azure-előfizetésben.
  • Abban az esetben, ha több zóna rendelkezik ugyanazzal a névvel, minden példány különböző névkiszolgálócímet kap. Csak egy címkészlet konfigurálható a tartományregisztrálóhoz.

Feljegyzés

Nem kell ahhoz tartománynévvel rendelkeznie, hogy azzal a tartománynévvel létrehozzon egy DNS-zónát az Azure DNS-ben. Azonban ahhoz, hogy az Azure DNS névkiszolgálókat a tartománynév helyes névkiszolgálójaként konfigurálhassa a tartományregisztrálóhoz, birtokolnia kell a tartományt.

További információ: Delegate a domain to Azure DNS (Tartomány delegálása az Azure DNS-be).

Az Azure PowerShell beállítása az Azure DNS-hez

Mielőtt elkezdené

Fontos

A PowerShellből származó Azure-funkció használatához telepíteni kell a modult AzureRM . Ez egy régebbi modul, amely csak a Windows PowerShell 5.1-hez érhető el, és már nem kap új funkciókat. A Az modulok és AzureRM a modulok nem kompatibilisek, ha a PowerShell ugyanazon verzióira vannak telepítve. Ha mindkét verzióra szüksége van:

  1. Távolítsa el az Az modult egy PowerShell 5.1-munkamenetből.
  2. Telepítse az AzureRM modult egy PowerShell 5.1-munkamenetből.
  3. Töltse le és telepítse a PowerShell Core 6.x vagy újabb verzióját.
  4. Telepítse az Az modult egy PowerShell Core-munkamenetben.

A konfigurálás megkezdése előtt győződjön meg arról, hogy rendelkezik a következőkkel.

Jelentkezzen be az Azure-fiókjába

Nyissa meg a PowerShell konzolt, és csatlakozzon a fiókjához. További információ: Bejelentkezés az Azure PowerShell-lel.

Connect-AzAccount

Válassza ki az előfizetést

Keresse meg a fiókot az előfizetésekben.

Get-AzSubscription

Válassza ki, hogy melyek Azure-előfizetését használja.

Select-AzSubscription -SubscriptionName "your_subscription_name"

Erőforráscsoport létrehozása

Az Azure Resource Manager megköveteli, hogy minden erőforráscsoport adjon meg egy helyet. Ez a hely lesz az erőforráscsoport erőforrásainak alapértelmezett helye. Mivel azonban minden DNS-erőforrás globális, nem pedig regionális, az erőforráscsoport kiválasztott helye nincs hatással az Azure DNS szolgáltatásra.

Ezt a lépést kihagyhatja, ha egy meglévő erőforráscsoportot használ.

New-AzResourceGroup -Name MyDNSResourceGroup -location "West US"

DNS-zóna létrehozása

A DNS-zóna az New-AzDnsZone parancsmag használatával hozható létre.

Az alábbi példa létrehoz egy contoso.com nevű DNS-zónát a MyDNSResourceGroup nevű erőforráscsoportban:

New-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup

Az alábbi példa bemutatja, hogyan hozhat létre DNS-zónát két Azure Resource Manager-címkével, a project = demo és az env = teszttel:

New-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup -Tag @{ project="demo"; env="test" }

DNS-zóna lekérése

DNS-zóna lekéréséhez használja a Get-AzDnsZone parancsmagot. Ez a művelet egy DNS-zónaobjektumot ad vissza, amely megfelel az Azure DNS egy meglévő zónájának. Az objektum a zónára vonatkozó adatokat (például a rekordhalmazok számát) tartalmazza, de nem tartalmazza a rekordhalmazokat (lásd Get-AzDnsRecordSet).

Get-AzDnsZone -Name contoso.com –ResourceGroupName MyDNSResourceGroup

Name                  : contoso.com
ResourceGroupName     : myresourcegroup
Etag                  : 00000003-0000-0000-8ec2-f4879750d201
Tags                  : {project, env}
NameServers           : {ns1-01.azure-dns.com., ns2-01.azure-dns.net., ns3-01.azure-dns.org.,
                        ns4-01.azure-dns.info.}
NumberOfRecordSets    : 2
MaxNumberOfRecordSets : 5000

DNS-zónák listázása

Ha kihagyja a zóna nevét a Get-AzDnsZone parancsból, felsorolhatja az egy erőforráscsoportba tartozó összes zónát. Ez a művelet zónaobjektumok tömbjét adja vissza.

$zoneList = Get-AzDnsZone -ResourceGroupName MyDNSResourceGroup
$zoneList

Ha a zóna és az erőforráscsoport nevét is kihagyja a Get-AzDnsZone parancsból, felsorolhatja az Azure-előfizetéshez tartozó összes zónát.

$zoneList = Get-AzDnsZone
$zoneList

DNS-zóna frissítése

A DNS-zóna erőforrásai a Set-AzDnsZone parancsmaggal módosíthatók. Ez a parancsmag nem frissíti a zónán belüli DNS-rekordkészleteket (lásd: Dns-rekordok kezelése). Csak a zónaerőforrás tulajdonságainak frissítésére használatos. A írható zónatulajdonságok jelenleg a zónaerőforrás Azure Resource Manager -címkéire korlátozódnak.

A DNS-zónák frissítéséhez használja az alábbi két módszer egyikét:

Adja meg a zónát a zónanév és az erőforráscsoport használatával

Ez a módszer lecseréli a meglévő zónacímkéket a megadott értékekre.

Set-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup -Tag @{ project="demo"; env="test" }

Zóna megadása egy $zone objektum használatával

Ez a módszer lekéri a meglévő zónaobjektumot, módosítja a címkéket, majd véglegesíti a módosításokat. Ily módon a meglévő címkék megőrizhetők.

# Get the zone object
$zone = Get-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup

# Remove an existing tag
$zone.Tags.Remove("project")

# Add a new tag
$zone.Tags.Add("status","approved")

# Commit changes
Set-AzDnsZone -Zone $zone

Ha egy $zone objektummal használjaSet-AzDnsZone, az etag-ellenőrzésekkel biztosítható, hogy az egyidejű módosítások ne legyenek felülírva. Az opcionális -Overwrite kapcsolóval letilthatja ezeket az ellenőrzéseket.

DNS-zóna törlése

A DNS-zónák a Remove-AzDnsZone parancsmaggal törölhetők.

Feljegyzés

A DNS-zónák törlésével a zónában található összes DNS-rekord is törlődni fog. Ez a művelet nem vonható vissza. Ha a DNS-zóna használatban van, a zónát használó szolgáltatások futtatása meghiúsul a zóna törlésekor.

A zónák véletlen törlése elleni védelemről további információt talál a DNS-zónák és -rekordok védelme című szakaszban.

DNS-zónák törléséhez használja az alábbi két módszer egyikét:

Zóna megadása a zóna és az erőforráscsoport nevének használatával

Remove-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup

Zóna megadása egy $zone objektum használatával

A törölni kívánt zóna egy, a Get-AzDnsZone parancs által visszaadott $zone objektummal adható meg.

$zone = Get-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup
Remove-AzDnsZone -Zone $zone

A zónaobjektum paraméterként való továbbítása helyett át is adhatja azt.

Get-AzDnsZone -Name contoso.com -ResourceGroupName MyDNSResourceGroup | Remove-AzDnsZone

Set-AzDnsZoneA zóna objektummal való $zone megadása lehetővé teszi az Etag-ellenőrzéseknek, hogy az egyidejű módosítások ne legyenek törölve. A kapcsolóval -Overwrite letilthatja ezeket az ellenőrzéseket.

Megerősítési kérések

A New-AzDnsZone, Set-AzDnsZone és Remove-AzDnsZone parancsmagok mind támogatják a megerősítési kérések használatát.

A New-AzDnsZone és a Set-AzDnsZone egyaránt kér megerősítést, ha a $ConfirmPreference PowerShell-preferenciaváltozó értéke Medium vagy kisebb. Mivel a DNS-zóna törlése nemkívánatos feltételeket okozhat, a Remove-AzDnsZone parancsmag megerősítést kér, ha a $ConfirmPreference PowerShell-változó értéke nem Noneaz .

Mivel a $ConfirmPreference alapértelmezett értéke High, csak a Remove-AzDnsZone parancsmag kér alapértelmezés szerint megerősítést.

A jelenlegi $ConfirmPreference beállítás a -Confirm paraméter használatával írható felül. Ha -Confirm vagy -Confirm:$True értéket ad meg, a parancsmag megerősítést fog kérni a futtatása előtt. Ha megadja -Confirm:$False , a parancsmag nem kéri a megerősítést.

A -Confirm és $ConfirmPreference értékekkel kapcsolatos további információt a preferenciaváltozók bemutatását tartalmazó részben talál.

Következő lépések

Megtudhatja, hogyan kezelheti a rekordhalmazokat és -rekordokat a DNS-zónában.
Megtudhatja, hogyan delegálhatja tartományát az Azure DNS-be.
Tekintse át az Azure DNS PowerShell referenciadokumentációját.