Import a export souboru privátní zóny DNS pro privátní DNS Azure
Tento článek vás provede importem a exportem souborů zón DNS pro Azure DNS pomocí Azure CLI.
Úvod do migrace zón DNS
Soubor zóny DNS je textový soubor, který obsahuje podrobnosti o každém záznamu DNS (Domain Name System) v zóně. Využívá standardní formát, který je vhodný pro přenos záznamů DNS mezi systémy DNS. Použití souboru zóny je rychlý, spolehlivý a pohodlný způsob přenosu zóny DNS do nebo z Azure DNS.
Privátní DNS Azure podporuje import a export souborů zón prostřednictvím Azure CLI. Import souborů zón prostřednictvím Azure PowerShellu nebo webu Azure Portal se v současné době nepodporuje.
Azure CLI je multiplatformní nástroj příkazového řádku používaný ke správě služeb Azure. Je k dispozici pro platformy Windows, Mac a Linux ze stránky se soubory ke stažení Azure. Podpora mezi platformami je důležitá pro import a export souborů zón, protože nejběžnější software názvového serveru BIND, obvykle běží v Linuxu.
Získání existujícího souboru zóny DNS
Před importem souboru zóny DNS do Azure DNS potřebujete získat kopii souboru zóny. Zdroj tohoto souboru závisí na tom, kde je aktuálně hostovaná zóna DNS.
- Pokud je vaše zóna DNS hostovaná partnerskou službou (například doménovým registrátorem, vyhrazeným poskytovatelem hostingu DNS nebo alternativním poskytovatelem cloudu), měla by tato služba poskytnout možnost stáhnout soubor zóny DNS.
- Pokud je vaše zóna DNS hostovaná v DNS systému Windows, výchozí složka pro soubory zóny je %systemroot%\system32\dns. Úplná cesta ke každému souboru zóny se také zobrazuje na kartě Obecné v konzole DNS.
- Pokud je vaše zóna DNS hostovaná pomocí BIND, umístění souboru zóny pro každou zónu se zadává v konfiguračním souboru BIND s názvem.conf.
Import souboru zóny DNS do privátního DNS Azure
Import souboru zóny vytvoří novou zónu v privátním DNS Azure, pokud ještě neexistuje. Pokud už zóna existuje, musí se sady záznamů v souboru zóny sloučit s existujícími sadami záznamů.
Sloučení chování
- Ve výchozím nastavení se existující a nové sady záznamů sloučí. Identické záznamy ve sloučené sadě záznamů jsou duplicitní.
- Při sloučení sad záznamů se použije hodnota TTL (Time to Live) existujících sad záznamů.
- Parametry SOA (Start of Authority) (s výjimkou
host
) se vždy přebíjejí z importovaného souboru zóny. Podobně platí, že pro sadu záznamů názvového serveru na vrcholu zóny se hodnota TTL vždy přebírá z importovaného souboru zóny. - Importovaný záznam CNAME nenahrazuje existující záznam CNAME stejným názvem.
- Když dojde ke konfliktu mezi záznamem CNAME a jiným záznamem se stejným názvem, ale jiným typem (bez ohledu na to, který je existující nebo nový), stávající záznam se zachová.
Další informace o importu
Následující poznámky obsahují další technické podrobnosti o procesu importu zóny.
- Direktiva
$TTL
je nepovinná a podporuje se. Pokud není zadána žádná$TTL
direktiva, záznamy bez explicitního hodnoty TTL se naimportují na výchozí hodnotu TTL 3600 sekund. Pokud dva záznamy ve stejné sadě záznamů určují různé hodnoty TTL, použije se nižší hodnota. - Direktiva
$ORIGIN
je nepovinná a podporuje se. Pokud není nastavena žádná$ORIGIN
hodnota, výchozí hodnota je název zóny zadaný na příkazovém řádku (plus ukončení "."). - Tyto direktivy
$INCLUDE
$GENERATE
nejsou podporovány. - Podporují se tyto typy záznamů: A, AAAA, CAA, CNAME, MX, NS, SOA, SRV a TXT.
- Záznam SOA se automaticky vytvoří službou Azure DNS při vytvoření zóny. Při importu souboru zóny se všechny parametry SOA převezmou ze souboru zóny s výjimkou parametru
host
. Tento parametr používá hodnotu, kterou poskytuje Azure DNS. Důvodem je to, že tento parametr musí odkazovat na primární názvový server, který poskytuje Azure DNS. - Sada záznamů názvového serveru na vrcholu zóny se při vytváření zóny vytvoří automaticky také službou Azure DNS. Importuje se pouze hodnota TTL této sady záznamů. Tyto záznamy obsahují názvy názvových serverů, které poskytuje Azure DNS. Data záznamu nejsou přepsána hodnotami obsaženými v importovaném souboru zóny.
- Azure DNS podporuje pouze záznamy TXT s jedním řetězcem. Víceřetězné záznamy TXT budou zřetězeny a zkráceny na 255 znaků.
Formát a hodnoty rozhraní příkazového řádku
Formát příkazu Azure CLI pro import zóny DNS je následující:
az network private-dns zone import -g <resource group> -n <zone name> -f <zone file name>
Hodnoty:
<resource group>
je název skupiny prostředků pro zónu v Azure DNS.<zone name>
je název zóny.<zone file name>
je cesta/název souboru zóny, který se má importovat.
Pokud zóna s tímto názvem ve skupině prostředků neexistuje, vytvoří se za vás. Pokud už zóna existuje, importované sady záznamů se sloučí s existujícími sadami záznamů.
Import souboru zóny
Import souboru zóny pro contoso.com zóny.
Pokud ho ještě nemáte, musíte vytvořit skupinu prostředků Resource Manageru.
az group create --resource-group myresourcegroup -l westeurope
Pokud chcete importovat zónu contoso.com ze souboru contoso.com.txt do nové zóny DNS ve skupině prostředků myresourcegroup, spustíte příkaz
az network private-dns zone import
.
Tento příkaz načte soubor zóny a parsuje ho. Příkaz spustí řadu příkazů ve službě Azure DNS, které vytvoří zónu a všechny sady záznamů v zóně. Příkaz hlásí průběh v okně konzoly spolu s chybami nebo upozorněními. Vzhledem k tomu, že se sady záznamů vytvářejí v řadě, může import velkého souboru zóny trvat několik minut.az network private-dns zone import -g myresourcegroup -n contoso.com -f contoso.com.txt
Ověření zóny
K ověření zóny DNS po importu souboru můžete použít některou z následujících metod:
Záznamy můžete zobrazit pomocí následujícího příkazu Azure CLI:
az network private-dns record-set list -g myresourcegroup -z contoso.com
Můžete použít
nslookup
k ověření překladu ip adres pro záznamy. Vzhledem k tomu, že zóna ještě není delegovaná, musíte explicitně zadat správné názvové servery Azure DNS. Následující ukázka ukazuje, jak načíst názvy názvových serverů přiřazených k zóně. To také ukazuje, jak dotazovat "www" záznam pomocínslookup
.
Export souboru zóny DNS z Azure DNS
Formát příkazu Azure CLI pro export zóny DNS je následující:
az network private-dns zone export -g <resource group> -n <zone name> -f <zone file name>
Hodnoty:
<resource group>
je název skupiny prostředků pro zónu v Azure DNS.<zone name>
je název zóny.<zone file name>
je cesta/název souboru zóny, který se má exportovat.
Stejně jako při importu zóny se musíte nejdřív přihlásit, zvolit předplatné a nakonfigurovat Azure CLI tak, aby používalo režim Resource Manageru.
Export souboru zóny
Pokud chcete exportovat existující zónu Azure DNS contoso.com ve skupině prostředků myresourcegroup do souboru contoso.com.txt (v aktuální složce), spusťte azure network private-dns zone export
příkaz . Tento příkaz volá službu Azure DNS k vytvoření výčtu sad záznamů v zóně a exportu výsledků do souboru zóny kompatibilního s BIND.
az network private-dns zone export -g myresourcegroup -n contoso.com -f contoso.com.txt
Další kroky
- Zjistěte, jak spravovat sady záznamů a záznamy ve vaší zóně DNS.