DNS privato informazioni in Azure Resource Graph
Questo articolo descrive alcuni dei modi in cui è possibile usare Azure Resource Graph Explorer per visualizzare informazioni sulle zone e i record di Azure DNS privato. Vengono fornite alcune query di esempio.
Azure Resource Graph (ARG) è un servizio di Azure che consente di eseguire query nelle risorse di Azure con filtri, raggruppamenti e ordinamento complessi. Le query ARG forniscono informazioni dettagliate sulle risorse ed è possibile visualizzare i risultati in diversi modi.
È possibile visualizzare informazioni sulle zone DNS, tra cui:
- Tipo e numero di record di risorse in una o tutte le zone
- Elenco di nomi di record di risorse e indirizzi IP
- Collegamenti di rete virtuale
- Record di risorse registrati in modo automatico
Questo è un breve elenco. È possibile eseguire query su molti altri dettagli.
Tabella dnsresources
Per usare Resource Graph nella portale di Azure, cercare e selezionare Resource Graph Explorer. Nel riquadro di spostamento a sinistra selezionare la scheda Tabella ed esaminare la tabella dnsresources . Questa tabella viene usata per eseguire query sui dati della zona DNS privata. Le zone DNS pubbliche non vengono sottoposte a query quando si usa questa tabella.
Selezionare dnsresources per creare una query di base e quindi fare clic su Esegui query per restituire i risultati. Vedere l'esempio seguente:
Per sostituire gli ID con i nomi visualizzati e visualizzare i valori come collegamenti laddove possibile, attivare o disattivare i risultatiformattati su Sì nell'angolo superiore destro della visualizzazione. Per visualizzare i dettagli di un record, scorrere verso destra e selezionare Visualizza dettagli. I primi record mostrati nell'esempio precedente sono record PTR (tipo = microsoft.network/privatednszones/ptr).
Conteggio dei record di risorse per tipo
La query seguente usa la tabella dnsresources per fornire un conteggio dei record di risorse per tipo per tutte le zone private:
dnsresources
| summarize count() by recordType = tostring(type)
La query conta tutti i record per cui la sottoscrizione corrente dispone dell'autorizzazione per la visualizzazione. È anche possibile visualizzare visivamente il conteggio selezionando la scheda Grafici e quindi selezionando il tipo di grafico. Di seguito è riportato un esempio di grafico ad anello:
Elencare, filtrare, cercare e ordinare i record delle risorse
I risultati della query possono essere filtrati specificando parametri come il nome della zona, l'ID sottoscrizione, il gruppo di risorse o il tipo di record. Ad esempio, la query di esempio seguente restituisce un elenco di record A o CNAME nella zona private.contoso.com per una determinata sottoscrizione e gruppo di risorse. L'output di questa query è simile alla visualizzazione della zona privata, con la possibilità di filtrare e ordinare i risultati in base al nome e al tipo:
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
I tipi di record che possono essere specificati sono: a, aaaa, cname, mx, ptr, soa, srv e txt.
È anche possibile eseguire query per indirizzi IP o intervalli di indirizzi IP specifici. La query seguente restituisce record DNS privati che corrispondono a un indirizzo IPv4 specifico:
dnsresources
| where properties['records'][0]['ipv4Address'] == "10.10.2.5"
| project name, type, resourceGroup, properties
Espressioni regolari
Il linguaggio di query Kusto supporta anche espressioni regolari. La query seguente usa un'espressione regolare per trovare una corrispondenza ed elencare tutti gli indirizzi IPv4 nella zona DNS privata specificata e nella sottoscrizione specificata:
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
Zone con collegamenti di rete virtuale
La query seguente elenca tutte le zone DNS private con collegamenti di rete virtuale e visualizza lo stato di registrazione automatica. Questa query usa la tabella delle risorse generiche, non la tabella dnsresources e specifica un tipo di risorsa solo privatednszones.
resources
| where subscriptionId == "<your subscription ID>"
| where ['type'] == "microsoft.network/privatednszones/virtualnetworklinks"
| extend registrationEnabled=(properties.registrationEnabled)
| project name, registrationEnabled, resourceGroup, properties
Record DNS autoregistered
La query seguente elenca i record DNS privati IPv4 autoregistered:
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
Passaggi successivi
- Informazioni su come gestire record e set di record nella zona DNS.