Udostępnij za pośrednictwem


Zarządzanie rekordami i zestawami rekordów DNS w usłudze Azure DNS przy użyciu interfejsu wiersza polecenia platformy Azure

W tym artykule pokazano, jak zarządzać rekordami DNS dla strefy DNS przy użyciu międzyplatformowego interfejsu wiersza polecenia platformy Azure. Interfejs wiersza polecenia platformy Azure jest dostępny w systemach Windows, Mac i Linux. Rekordy DNS można również zarządzać przy użyciu programu Azure PowerShell lub witryny Azure Portal.

W przykładach w tym artykule założono, że zainstalowano już interfejs wiersza polecenia platformy Azure, zalogowano się i utworzono strefę DNS.

Wprowadzenie

Przed utworzeniem rekordów DNS w usłudze Azure DNS należy najpierw zrozumieć, w jaki sposób usługa Azure DNS organizuje rekordy DNS w zestawy rekordów DNS.

Nazwy rekordów

W usłudze DNS platformy Azure rekordy są określane przy użyciu nazw względnych. W pełni kwalifikowana nazwa domeny (FQDN) zawiera nazwę strefy, natomiast nazwa względna nie. Na przykład względna nazwa www rekordu w strefie contoso.com daje w pełni kwalifikowaną nazwę www.contoso.comrekordu .

Rekord wierzchołka to rekord DNS w katalogu głównym (wierzchołku) strefy DNS. Na przykład w strefie contoso.comDNS rekord wierzchołka ma również w pełni kwalifikowaną nazwę contoso.com (jest to czasami nazywane nagą domeną). Zgodnie z konwencją nazwa względna '@' jest używana do reprezentowania rekordów wierzchołków.

Typy rekordów

Każdy rekord DNS ma nazwę i typ. Rekordy są pogrupowane w różne typy według danych, które zawierają. Najczęściej spotykanym typem jest rekord „A”, który mapuje nazwę na adres IPv4. Innym często spotykanym typem jest rekord „MX”, który mapuje nazwę na serwer poczty e-mail.

Usługa Azure DNS obsługuje wszystkie typowe typy rekordów DNS: A, AAAA, CAA, CNAME, MX, NS, PTR, SOA, SRV i TXT. Należy pamiętać, że rekordy SPF są reprezentowane przy użyciu rekordu TXT.

Dodatkowe typy rekordów są obsługiwane, jeśli strefa jest podpisana przy użyciu rozszerzeń zabezpieczeń DNS (DNSSEC), takich jak delegowanie signer (DS) i Transport Layer Security Authentication (TLSA) rekordy zasobów.

Typy rekordów zasobów DNSSEC, takie jak DNSKEY, RRSIG i NSEC3 rekordy są dodawane automatycznie po podpisaniu strefy przy użyciu protokołu DNSSEC. Tych typów rekordów zasobów DNSSEC nie można utworzyć ani zmodyfikować po podpisaniu strefy.

Zestawy rekordów

Czasami trzeba utworzyć więcej niż jeden rekord DNS określonego typu o danej nazwie. Na przykład załóżmy, że witryna sieci Web „www.contoso.com” jest hostowana pod dwoma różnymi adresami IP. Witryna sieci Web wymaga dwóch różnych rekordów A, po jednym dla każdego adresu IP. Oto przykład zestawu rekordów:

www.contoso.com.        3600    IN    A    134.170.185.46
www.contoso.com.        3600    IN    A    134.170.188.221

System DNS platformy Azure zarządza wszystkimi rekordami DNS za pomocą zestawów rekordów. Zestaw rekordów (określany także jako zestaw rekordów zasobów) jest kolekcją rekordów DNS w strefie, które mają taką samą nazwę i są tego samego typu. Większość zestawów rekordów zawiera jeden rekord. Jednak przykłady, takie jak powyższe, w których zestaw rekordów zawiera więcej niż jeden rekord, nie są rzadkością.

Na przykład załóżmy, że utworzono wcześniej rekord A „www” w strefie „contoso.com” wskazujący na adres IP „134.170.185.46” (pierwszy rekord powyżej). W celu utworzenia drugiego rekordu ten rekord zostanie dodany do istniejącego zestawu rekordów zamiast tworzenia dodatkowego zestawu rekordów.

Typy rekordów SOA i CNAME stanowią wyjątki. Standardy systemu DNS nie zezwalają na występowanie wielu rekordów tych typów o takiej samej nazwie, w związku z czym te zestawy rekordów mogą zawierać tylko jeden rekord.

Aby uzyskać więcej informacji na temat rekordów DNS w usłudze Azure DNS, zobacz Strefy i rekordy DNS.

Tworzenie rekordu DNS

Aby utworzyć rekord DNS, użyj az network dns record-set <record-type> add-record polecenia (gdzie <record-type> jest typem rekordu, tj. srv, txt itp.) Aby uzyskać pomoc, zobacz az network dns record-set --help.

Podczas tworzenia rekordu należy określić następujące informacje:

  • Nazwa grupy zasobów
  • Nazwa strefy
  • Nazwa zestawu rekordów
  • Typ rekordu

Podana nazwa zestawu rekordów musi być nazwą względną, co oznacza, że musi wykluczyć nazwę strefy. Jeśli zestaw rekordów jeszcze nie istnieje, to polecenie utworzy go dla Ciebie. To polecenie spowoduje jednak dodanie rekordu, który określisz, czy zestaw rekordów już istnieje.

Jeśli jest tworzony nowy rekord, używany jest domyślny czas wygaśnięcia wynoszący 3600. Aby uzyskać instrukcje dotyczące używania różnych list TTL, zobacz Tworzenie zestawu rekordów DNS.

Poniższy przykład tworzy rekord A o nazwie www w strefie contoso.com w grupie zasobów MyResourceGroup. Adres IP rekordu A to 203.0.113.11.

az network dns record-set a add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name www --ipv4-address 203.0.113.11

Aby utworzyć zestaw rekordów w wierzchołku strefy (w tym przypadku „contoso.com”), użyj nazwy rekordu „@”, wraz z cudzysłowem:

az network dns record-set a add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name "@" --ipv4-address 203.0.113.11

Tworzenie zestawu rekordów DNS

W powyższych przykładach rekord DNS został dodany do istniejącego zestawu rekordów lub zestaw rekordów został utworzony niejawnie. Zestaw rekordów można również utworzyć jawnie przed dodaniem do niego rekordów. Usługa Azure DNS obsługuje "puste" zestawy rekordów, które mogą pełnić rolę symbolu zastępczego, aby zarezerwować nazwę DNS przed utworzeniem rekordów DNS. Puste zestawy rekordów są widoczne na płaszczyźnie sterowania usługi Azure DNS, ale nie są wyświetlane na serwerach nazw usługi Azure DNS.

Zestawy rekordów są tworzone przy użyciu az network dns record-set <record-type> create polecenia . Aby uzyskać pomoc, zobacz az network dns record-set <record-type> create --help.

Utworzenie zestawu rekordów jawnie umożliwia określenie właściwości zestawu rekordów, takich jak czas wygaśnięcia (TTL) i metadane. Metadane zestawu rekordów mogą służyć do kojarzenia danych specyficznych dla aplikacji z każdym zestawem rekordów jako par klucz-wartość.

Poniższy przykład tworzy pusty zestaw rekordów typu "A" z 60-sekundowym czasem wygaśnięcia przy użyciu parametru (skrócona --ttl forma -l):

az network dns record-set a create --resource-group myresourcegroup --zone-name contoso.com --name www --ttl 60

W poniższym przykładzie tworzony jest zestaw rekordów z dwoma wpisami metadanych: "dept=finance" i "environment=production" przy użyciu parametru --metadata :

az network dns record-set a create --resource-group myresourcegroup --zone-name contoso.com --name www --metadata "dept=finance" "environment=production"

Po utworzeniu pustego zestawu rekordów można dodawać rekordy, zgodnie z azure network dns record-set <record-type> add-record opisem w temacie Tworzenie rekordu DNS.

Tworzenie rekordów innych typów

Jak szczegółowo utworzyć rekordy "A", w poniższych przykładach pokazano, jak utworzyć rekord innych typów rekordów obsługiwanych przez usługę Azure DNS.

Parametry używane do określenia danych rekordu różnią się w zależności od typu rekordu. Na przykład w przypadku rekordu typu „A” należy podać adres IPv4 przy użyciu parametru --ipv4-address <IPv4 address>. Parametry dla każdego typu rekordu można wymienić przy użyciu polecenia az network dns record-set <record-type> add-record --help.

W każdym przypadku pokazujemy, jak utworzyć pojedynczy rekord. Rekord jest dodawany do istniejącego zestawu rekordów lub zestaw rekordów utworzony niejawnie. Aby uzyskać więcej informacji na temat jawnego tworzenia zestawów rekordów i definiowania parametru zestawu rekordów, zobacz Tworzenie zestawu rekordów DNS.

Nie ma przykładu do utworzenia zestawu rekordów SOA, ponieważ soA są tworzone i usuwane z każdą strefą DNS. Rekord SOA nie można utworzyć ani usunąć oddzielnie. Można jednak zmodyfikować soa, jak pokazano w późniejszym przykładzie.

Tworzenie rekordu usługi AAAA

az network dns record-set aaaa add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-aaaa --ipv6-address FD00::1

Tworzenie rekordu CAA

az network dns record-set caa add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-caa --flags 0 --tag "issue" --value "ca1.contoso.com"

Tworzenie rekordu CNAME

Uwaga

Standardy DNS nie zezwalają na rekordy CNAME w wierzchołku strefy (--Name "@"), ani nie zezwalają na zestawy rekordów zawierające więcej niż jeden rekord.

Aby uzyskać więcej informacji, zobacz Rekordy CNAME.

az network dns record-set cname set-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-cname --cname www.contoso.com

Tworzenie rekordu MX

W tym przykładzie używamy nazwy zestawu rekordów „@”, aby utworzyć rekord MX w wierzchołku strefy (w tym przypadku „contoso.com”).

az network dns record-set mx add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name "@" --exchange mail.contoso.com --preference 5

Tworzenie rekordu NS

az network dns record-set ns add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-ns --nsdname ns1.fabrikam.com

Tworzenie rekordu PTR

W tym przypadku wartość "my-arpa-zone.com" reprezentuje strefę ARPA reprezentującą zakres adresów IP. Każdy rekord PTR w tej strefie odnosi się do adresu IP w tym zakresie adresów IP. Nazwa rekordu "10" jest ostatnim oktetem adresu IP w tym zakresie adresów IP reprezentowanym przez ten rekord.

az network dns record-set ptr add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name my-arpa.zone.com --ptrdname myservice.contoso.com

Tworzenie rekordu SRV

Podczas tworzenia zestawu rekordów SRV określ _service i _protocol w nazwie zestawu rekordów. Nie ma potrzeby dołączania znaku "@" w nazwie zestawu rekordów podczas tworzenia zestawu rekordów SRV w wierzchołka strefy.

az network dns record-set srv add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name _sip._tls --priority 10 --weight 5 --port 8080 --target sip.contoso.com

Tworzenie rekordu TXT

W poniższym przykładzie pokazano, jak utworzyć rekord TXT. Aby uzyskać więcej informacji na temat maksymalnej długości ciągu obsługiwanej w rekordach TXT, zobacz REKORDY TXT.

az network dns record-set txt add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-txt --value "This is a TXT record"

Pobieranie zestawu rekordów

Aby pobrać istniejący zestaw rekordów, użyj polecenia az network dns record-set <record-type> show. Aby uzyskać pomoc, zobacz az network dns record-set <record-type> show --help.

Podczas tworzenia rekordu lub zestawu rekordów podana nazwa zestawu rekordów musi być nazwą względną. Ta nazwa nie zawiera nazwy strefy. Należy również określić typ rekordu, strefę zawierającą zestaw rekordów i grupę zasobów zawierającą strefę.

Poniższy przykład pobiera rekord www typu A ze strefy contoso.com w grupie zasobów MyResourceGroup:

az network dns record-set a show --resource-group myresourcegroup --zone-name contoso.com --name www

Wyświetlanie listy zestawów rekordów

Wszystkie rekordy w strefie DNS można wyświetlić za pomocą az network dns record-set list polecenia . Aby uzyskać pomoc, zobacz az network dns record-set list --help.

Ten przykład zwraca wszystkie zestawy rekordów w contoso.com strefy w grupie zasobów MyResourceGroup:

az network dns record-set list --resource-group myresourcegroup --zone-name contoso.com

Ten przykład zwraca wszystkie zestawy rekordów zgodne z danym typem rekordu (w tym przypadku rekordy "A"):

az network dns record-set a list --resource-group myresourcegroup --zone-name contoso.com 

Dodawanie rekordu do istniejącego zestawu rekordów

Oba te elementy az network dns record-set <record-type> add-record umożliwiają utworzenie rekordu w nowym zestawie rekordów lub dodanie rekordu do istniejącego zestawu rekordów.

Aby uzyskać więcej informacji, zobacz Tworzenie rekordu DNS i Tworzenie rekordów innych typów powyżej.

Usuń rekord z istniejącego zestawu rekordów.

Aby usunąć rekord DNS z istniejącego zestawu rekordów, użyj polecenia az network dns record-set <record-type> remove-record. Aby uzyskać pomoc, zobacz az network dns record-set <record-type> remove-record -h.

To polecenie usuwa rekord DNS z zestawu rekordów. Jeśli ostatni rekord w zestawie rekordów zostanie usunięty, sam zestaw rekordów zostanie również usunięty. Aby zamiast tego zachować pusty zestaw rekordów, użyj --keep-empty-record-set opcji .

W przypadku użycia az network dns record-set <record-type> add-record polecenia należy określić rekord, z którego ma zostać usunięty rekord, oraz strefę do usunięcia. Te parametry opisano w temacie Tworzenie rekordu DNS i Tworzenie rekordów innych typów powyżej.

Poniższy przykład usuwa rekord A o wartości "203.0.113.11" z zestawu rekordów o nazwie www w strefie contoso.com w grupie zasobów MyResourceGroup.

az network dns record-set a remove-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name "www" --ipv4-address 203.0.113.11

Modyfikowanie istniejącego zestawu rekordów

Każdy zestaw rekordów zawiera rekordy czasu wygaśnięcia (TTL), metadane i rekordy DNS. W poniższych sekcjach opisano sposób modyfikowania każdej z tych właściwości.

Aby zmodyfikować rekord A, AAAA, CAA, MX, NS, PTR, SRV lub TXT

Aby zmodyfikować istniejący rekord typu A, AAAA, CAAA, MX, NS, PTR, SRV lub TXT, należy najpierw dodać nowy rekord, a następnie usunąć istniejący rekord. Aby uzyskać szczegółowe instrukcje dotyczące usuwania i dodawania rekordów, zobacz wcześniejsze sekcje tego artykułu.

W poniższym przykładzie pokazano, jak zmodyfikować rekord "A" z adresu IP 203.0.113.11 na adres IP 203.0.113.22:

az network dns record-set a add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name www --ipv4-address 203.0.113.22
az network dns record-set a remove-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name www --ipv4-address 203.0.113.11

Nie można dodawać, usuwać ani modyfikować rekordów w automatycznie utworzonym zestawie rekordów NS w wierzchołku strefy (--Name "@"w tym cudzysłowy). W przypadku tego zestawu rekordów jedynymi dozwolonymi zmianami są modyfikowanie czasu wygaśnięcia i metadanych zestawu rekordów.

Aby zmodyfikować rekord CNAME

W przeciwieństwie do większości innych typów rekordów zestaw rekordów CNAME może zawierać tylko jeden rekord. Dlatego nie można zastąpić bieżącej wartości przez dodanie nowego rekordu i usunięcie istniejącego rekordu, takiego jak inne typy rekordów.

Zamiast tego, aby zmodyfikować rekord CNAME, użyj polecenia az network dns record-set cname set-record. Aby uzyskać pomoc, zobacz az network dns record-set cname set-record --help

Przykład modyfikuje zestaw rekordów CNAME www w strefie contoso.com w grupie zasobów MyResourceGroup, aby wskazać wartość "www.fabrikam.net" zamiast istniejącej wartości:

az network dns record-set cname set-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name test-cname --cname www.fabrikam.net

Aby zmodyfikować rekord SOA

W przeciwieństwie do większości innych typów rekordów zestaw rekordów SOA może zawierać tylko jeden rekord. Dlatego nie można zastąpić bieżącej wartości przez dodanie nowego rekordu i usunięcie istniejącego rekordu, takiego jak inne typy rekordów.

Zamiast tego, aby zmodyfikować rekord SOA, użyj polecenia az network dns record-set soa update. Aby uzyskać pomoc, zobacz az network dns record-set soa update --help.

W poniższym przykładzie pokazano, jak ustawić właściwość "email" rekordu SOA dla strefy contoso.com:

az network dns record-set soa update --resource-group myresourcegroup --zone-name contoso.com --email admin.contoso.com

Aby zmodyfikować rekordy NS w wierzchołku strefy

Zestaw rekordów NS w wierzchołkach strefy jest tworzony automatycznie przy użyciu każdej strefy DNS. Zawiera nazwy serwerów nazw usługi Azure DNS przypisanych do strefy.

Do tego zestawu rekordów NS można dodać więcej serwerów nazw, aby obsługiwać domeny współhostowania z więcej niż jednym dostawcą DNS. Można również zmodyfikować czas wygaśnięcia i metadane dla tego zestawu rekordów. Nie można jednak usunąć ani zmodyfikować wstępnie wypełnionych serwerów nazw usługi Azure DNS.

To ograniczenie dotyczy tylko zestawu rekordów NS w wierzchołkach strefy. Inne zestawy rekordów NS w strefie (używane do delegowania stref podrzędnych) można modyfikować bez ograniczeń.

W poniższym przykładzie pokazano, jak dodać inny serwer nazw do zestawu rekordów NS w wierzchołkach strefy:

az network dns record-set ns add-record --resource-group myresourcegroup --zone-name contoso.com --record-set-name "@" --nsdname ns1.fabrikam.com 

Aby zmodyfikować czas wygaśnięcia istniejącego zestawu rekordów

Aby zmodyfikować czas wygaśnięcia istniejącego zestawu rekordów, użyj polecenia azure network dns record-set <record-type> update. Aby uzyskać pomoc, zobacz azure network dns record-set <record-type> update --help.

W poniższym przykładzie pokazano, jak zmodyfikować czas wygaśnięcia zestawu rekordów, w tym przypadku do 60 sekund:

az network dns record-set a update --resource-group myresourcegroup --zone-name contoso.com --name www --set ttl=60

Aby zmodyfikować metadane istniejącego zestawu rekordów

Metadane zestawu rekordów mogą służyć do kojarzenia danych specyficznych dla aplikacji z każdym zestawem rekordów jako par klucz-wartość. Aby zmodyfikować metadane istniejącego zestawu rekordów, użyj polecenia az network dns record-set <record-type> update. Aby uzyskać pomoc, zobacz az network dns record-set <record-type> update --help.

W poniższym przykładzie pokazano, jak zmodyfikować zestaw rekordów z dwoma wpisami metadanych: "dept=finance" i "environment=production". Wszystkie istniejące metadane są zastępowane przez podane wartości.

az network dns record-set a update --resource-group myresourcegroup --zone-name contoso.com --name www --set metadata.dept=finance metadata.environment=production

Usuwanie zestawu rekordów

Zestawy rekordów można usunąć za pomocą az network dns record-set <record-type> delete polecenia . Aby uzyskać pomoc, zobacz azure network dns record-set <record-type> delete --help. Usunięcie zestawu rekordów powoduje również usunięcie wszystkich rekordów w zestawie rekordów.

Uwaga

Nie można usunąć zestawów rekordów SOA i NS w wierzchołku strefy (--name "@"). Są one tworzone automatycznie po utworzeniu strefy i są usuwane automatycznie po usunięciu strefy.

Poniższy przykład usuwa zestaw rekordów o nazwie www typu A ze strefy contoso.com w grupie zasobów MyResourceGroup:

az network dns record-set a delete --resource-group myresourcegroup --zone-name contoso.com --name www

Zostanie wyświetlony monit o potwierdzenie operacji usuwania. Aby pominąć ten monit, użyj przełącznika --yes .

Następne kroki

Dowiedz się więcej o strefach i rekordach w usłudze Azure DNS.
Dowiedz się, jak chronić strefy i rekordy podczas korzystania z usługi Azure DNS.