Private DNS-Informationen in Azure Resource Graph
Dieser Artikel beschreibt einige der Möglichkeiten, wie Sie den Azure Resource Graph Exporer verwenden können, um Informationen über Ihre Azure Private DNS-Zonen und -Datensätze anzuzeigen. Es werden einige Beispielabfragen bereitgestellt.
Azure Resource Graph (ARG) ist ein Azure-Dienst, mit dem Sie Ihre Azure-Ressourcen mit komplexer Filterung, Gruppierung und Sortierung abfragen können. ARG-Abfragen liefern detaillierte Informationen über Ihre Ressourcen und Sie können die Ergebnisse auf verschiedene Weise anzeigen.
Sie können sich Informationen über Ihre DNS-Zonen anzeigen lassen, einschließlich:
- Die Art und Anzahl der Ressourceneinträge in einer oder allen Zonen
- Eine Liste von Ressourcendatensatznamen und IP-Adressen
- Verknüpfungen virtueller Netzwerke
- Autoregistrierte Ressourceneinträge
Dies ist eine kurze Liste. Viele weitere Details können abgefragt werden.
Die Tabelle dnsresources
Um Resource Graph im Azure-Portal zu verwenden, suchen Sie und wählen Sie Resource Graph Explorer. Wählen Sie im linken Navigationsbereich die Registerkarte Tabelle und sehen Sie sich die Tabelle dnsresources an. Diese Tabelle wird zur Abfrage privater DNS-Zonendaten verwendet. Öffentliche DNS-Zonen werden nicht abgefragt, wenn Sie diese Tabelle verwenden.
Wählen Sie dnsresources, um eine einfache Abfrage zu erstellen, und klicken Sie dann auf Abfrage ausführen, um die Ergebnisse anzuzeigen. Siehe folgendes Beispiel:
Um IDs durch Anzeigenamen zu ersetzen und Werte als Links anzuzeigen, wo dies möglich ist, schalten Sie Formatierte Ergebnisse in der oberen rechten Ecke der Anzeige auf Ein. Um die Details für einen Datensatz anzuzeigen, scrollen Sie nach rechts, und wählen Sie Details anzeigen aus. Die ersten paar Einträge im vorherigen Beispiel sind PTR-Einträge (Typ = microsoft.network/privatednszones/ptr).
Ressourcendatensätze nach Typ zählen
Die folgende Abfrage verwendet die Tabelle dnsresources, um die Anzahl der Ressourceneinträge nach Typ für alle privaten Zonen zu ermitteln:
dnsresources
| summarize count() by recordType = tostring(type)
Die Abfrage zählt alle Datensätze, für die das aktuelle Abonnement die Berechtigung zum Ansehen hat. Sie können die Zählung auch visuell anzeigen, indem Sie die Registerkarte Diagramme und dann den Diagrammtyp auswählen. Im Folgenden sehen Sie ein Beispiel für ein Donut-Diagramm:
Ressourcendatensätze auflisten, filtern, suchen und sortieren
Die Abfrageergebnisse können durch Angabe von Parametern wie Zonenname, Abonnement-ID, Ressourcengruppe oder Eintragstyp gefiltert werden. Die folgende Beispielabfrage gibt beispielsweise eine Liste der A- oder CNAME-Einträge in der Zone private.contoso.com für ein bestimmtes Abonnement und eine Ressourcengruppe zurück. Die Ausgabe dieser Abfrage ist ähnlich wie die Anzeige der privaten Zone, mit der zusätzlichen Möglichkeit, die Ergebnisse nach Name und Typ zu filtern und zu sortieren:
dnsresources
| where managedBy == "private.contoso.com"
| where subscriptionId == "<your subscription ID>"
| where resourceGroup == "<your resource group name>"
| where type in (
"microsoft.network/privatednszones/a",
"microsoft.network/privatednszones/cname"
)
| project name, type, properties
Folgende Datensatztypen können angegeben werden: a, aaaa, cname, mx, ptr, soa, srv und txt.
Sie können auch nach bestimmten IP-Adressen oder Adressbereichen suchen. Die folgende Abfrage gibt private DNS-Einträge zurück, die mit einer bestimmten IPv4-Adresse übereinstimmen:
dnsresources
| where properties['records'][0]['ipv4Address'] == "10.10.2.5"
| project name, type, resourceGroup, properties
Reguläre Ausdrücke
Die Abfragesprache Kusto unterstützt auch reguläre Ausdrücke. Die folgende Abfrage verwendet einen regulären Ausdruck, um alle IPv4-Adressen in der angegebenen privaten DNS-Zone und dem angegebenen Abonnement zu finden und aufzulisten:
dnsresources
| where subscriptionId == "<your subscription ID>"
| where managedBy == "private.contoso.com"
| where properties matches regex @'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'
| extend IP=extract_all(@'(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?:\/\d{1,2}){0,1})',tostring(properties))
| project name, IP, resourceGroup, properties
| mv-expand IP
| order by name
Zonen mit virtuellen Netzwerkverbindungen
Die folgende Abfrage listet alle privaten DNS-Zonen auf, die über virtuelle Netzwerkverbindungen verfügen, und zeigt den Autoregistrierungsstatus an. Diese Abfrage verwendet die generische Ressourcen-tabelle, nicht die dnsresources-Tabelle, und gibt als Ressourcentyp nur privatednszones an.
resources
| where subscriptionId == "<your subscription ID>"
| where ['type'] == "microsoft.network/privatednszones/virtualnetworklinks"
| extend registrationEnabled=(properties.registrationEnabled)
| project name, registrationEnabled, resourceGroup, properties
Autoregistrierte DNS-Einträge
Die folgende Abfrage listet autoregistrierte private IPv4 DNS-Einträge auf:
dnsresources
| where subscriptionId == "<your subscription ID>"
| where isnull(properties.virtualNetworkId) == false
| extend linkname=(properties.virtualNetworkLinkName)
| extend ipaddress=properties['records'][0]['ipv4Address']
| project name, ipaddress, type, linkname, properties
Nächste Schritte
- Erfahren Sie, wie Sie Ressourceneintragssätze und Einträge in Ihrer DNS-Zone verwalten.