Información sobre DNS privado en Azure Resource Graph
En este artículo se describen algunas de las formas en que puede usar Azure Resource Graph Explorer para ver información sobre las zonas y registros DNS privados de Azure. Se proporcionan algunas consultas de ejemplo.
Azure Resource Graph (ARG) es un servicio de Azure que permite consultar los recursos de Azure con filtrado, agrupación y ordenación complejos. Las consultas ARG proporcionan información detallada sobre los recursos y pueden mostrar los resultados de varias maneras.
Es posible mostrar información sobre las zonas DNS, incluyendo:
- El tipo y el número de registros de recursos en una o todas las zonas
- Una lista de nombres de registro de recursos y direcciones IP
- Vínculos de red virtual
- Registros de recursos registrados automáticamente
Esta es una lista breve. Se pueden consultar muchos otros detalles.
La tabla dnsresources
Para usar Resource Graph en Azure Portal, busque y seleccione Resource Graph Explorer. En el panel de navegación izquierdo, seleccione la pestaña Tabla y revise la tabla dnsresources. Esta tabla se usa para consultar datos de zonas DNS privadas. Las zonas DNS públicas no se consultan al usar esta tabla.
Seleccione dnsresources para crear una consulta básica y, a continuación, haga clic en Ejecutar consulta para devolver los resultados. Observe el ejemplo siguiente:
Para reemplazar los identificadores por nombres para mostrar y mostrar valores como vínculos siempre que sea posible, cambie Resultados con formato a En, en la esquina superior derecha de la pantalla. Para ver los detalles de un registro, desplácese a la derecha y seleccione Ver detalles. Los primeros registros que se muestran en el ejemplo anterior son registros PTR (tipo = microsoft.network/privatednszones/ptr).
Recuento de registros de recursos por tipo
La consulta siguiente usa la tabla dnsresources para proporcionar un recuento de registros de recursos por tipo a todas las zonas privadas:
dnsresources
| summarize count() by recordType = tostring(type)
La consulta cuenta todos los registros que la suscripción actual tiene permiso de visualización. También es posible ver el recuento visualmente seleccionando la pestaña Gráficos y, a continuación, seleccionando el tipo de gráfico. A continuación, se muestra un ejemplo de un gráfico de anillos:
Enumerar, filtrar, buscar y ordenar registros de recursos
Los resultados de la consulta se pueden filtrar especificando parámetros, como el nombre de zona, el id. de suscripción, el grupo de recursos o el tipo de registro. Por ejemplo, la consulta de ejemplo siguiente devuelve una lista de registros A o CNAME en la zona private.contoso.com para una suscripción y un grupo de recursos determinado. La salida de esta consulta es similar a ver la zona privada, con la capacidad adicional de filtrar y ordenar los resultados por nombre y 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
Los tipos de registro que se pueden especificar son: a, aaaa, cname, mx, ptr, soa, srv y txt.
También es posible consultar direcciones IP específicas o intervalos de direcciones. La consulta siguiente devuelve registros DNS privados que coinciden con una dirección IPv4 específica:
dnsresources
| where properties['records'][0]['ipv4Address'] == "10.10.2.5"
| project name, type, resourceGroup, properties
Expresiones regulares
El lenguaje de consulta Kusto también admite expresiones regulares. La consulta siguiente usa una expresión regular para buscar coincidencias y enumerar todas las direcciones IPv4 de la zona DNS privada especificada y la suscripción especificada:
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
Zonas con vínculos de red virtual
En la consulta siguiente, se enumeran todas las zonas DNS privadas que tengan vínculos de red virtual y se muestra el estado de registro automático. Esta consulta usa la tabla resources genérica, no la tabla dnsresources, y especifica un tipo de recurso de solo privatednszones.
resources
| where subscriptionId == "<your subscription ID>"
| where ['type'] == "microsoft.network/privatednszones/virtualnetworklinks"
| extend registrationEnabled=(properties.registrationEnabled)
| project name, registrationEnabled, resourceGroup, properties
Registros DNS registrados automáticamente
En la consulta siguiente se enumeran los registros DNS privados IPv4 registrados automáticamente:
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
Pasos siguientes
- En esta guía se explica cómo administrar conjuntos de registros y registros en la zona DNS.