En este documento, se explica cómo configurar y usar Cloud DNS como proveedor de DNS para tus clústeres de Google Kubernetes Engine (GKE).
Cloud DNS administra automáticamente los registros DNS de tus servicios de Kubernetes. De forma predeterminada, solo se puede acceder a estos registros desde el clúster (alcance del clúster).
Si necesitas resolver Services sin interfaz gráfica desde fuera de tu clúster, por ejemplo, desde VMs de Compute Engine, debes habilitar el permiso de VPC o el permiso de VPC adicional.
Este documento está dirigido a los usuarios de GKE, incluidos los desarrolladores, los administradores y los arquitectos. Para obtener más información sobre los roles comunes y las tareas de ejemplo en Google Cloud, consulta Roles de usuario y tareas comunes de GKE Enterprise.
Para aprovechar al máximo este documento, debes estar familiarizado con lo siguiente:
- Servicio de Kubernetes.
- Services de varios clústeres.
- Acerca del descubrimiento de servicios
- Acerca de Cloud DNS
Para que los servicios ClusterIP o NodePort sean accesibles desde fuera del clúster, debes exponer el servicio con un LoadBalancer o algún otro método, y registrar su dirección IP externa en Cloud DNS.
Si deseas obtener más información para usar kube-dns como proveedor de DNS, consulta Descubrimiento de servicios y DNS.
Para aprender a usar una versión personalizada de kube-dns o un proveedor de DNS personalizado, consulta Configura una implementación personalizada de kube-dns.
Precios
Cuando Cloud DNS es el proveedor de DNS para clústeres de GKE Standard, las consultas de DNS de Pods que se encuentran dentro del clúster de GKE se facturan según los precios de Cloud DNS.
Las consultas a una zona del DNS con permiso de VPC administrada por GKE se facturan con los precios estándar de Cloud DNS.
Restricciones y limitaciones
Se aplica la siguiente limitación:
- El permiso de la VPC no es compatible con los clústeres de Autopilot, solo se admite el permiso del clúster. Si necesitas resolver nombres de servicios sin interfaz gráfica que se ejecutan en clústeres de GKE Autopilot, debes usar el permiso de VPC adicional.
- Solo puedes habilitar el permiso adicional de VPC en los clústeres de GKE Autopilot durante la creación del clúster. No se admite la habilitación ni la inhabilitación del permiso de VPC adicional en clústeres de GKE Autopilot existentes.
- No se admite la creación de clústeres con permiso de VPC adicional en proyectos de servicio de redes de VPC compartida.
- Cloud DNS para GKE no está disponible para la carga de trabajo garantizada con un régimen de cumplimiento de IL4.
kube-dnsse fuerza en esos entornos regulados. - Los cambios manuales a las zonas del DNS privadas administradas no son compatibles y el controlador de Cloud DNS los reemplaza. Las modificaciones en los registros DNS de esas zonas no persisten cuando se reinicia el controlador.
- Después de habilitar Cloud DNS para GKE en un clúster,
kube-dnscontinuará ejecutándose en el clúster. Puedes inhabilitarkube-dnsescalando el Deployment dekube-dnsy el escalador automático a cero. - No puedes cambiar el permiso de DNS en un clúster después de haber establecido el permiso con la marca
--cluster-dns-scope. Si necesitas cambiar el permiso de DNS, debes volver a crear el clúster con otro permiso de DNS. - Se aplican las limitaciones de los recursos de Cloud DNS. En particular, se puede vincular, como máximo, una zona de política de respuesta a una red de VPC a la vez. En el caso de los alcances de VPC y de VPC aditivos, la creación del clúster falla si ya existe una zona de política de respuesta que no sigue la convención de nomenclatura vinculada a la red de VPC del clúster.
- Los dominios personalizados de stub y los parámetros de configuración del servidor DNS ascendentes se aplican a la configuración de DNS de Pods y nodos. Los Pods que usan redes del host o procesos que se ejecutan directamente en el host también usan el dominio de stub y los parámetros de configuración de servidores de nombres ascendentes. Este comportamiento solo se admite en la versión estándar.
- Los dominios de stub personalizados y los servidores de nombres ascendentes que se configuran a través de
kube-dnsConfigmap se aplican automáticamente a Cloud DNS para el DNS del permiso del clúster. El DNS del permiso de VPC ignora el ConfigMap dekube-dnsy debes aplicar estas opciones de configuración directamente en Cloud DNS. Este comportamiento solo se admite en la versión estándar. - La migración de
kube-dnsal permiso de VPC es una operación perjudicial. Vuelve a crear el clúster cuando cambies dekube-dnsal permiso de VPC, o viceversa. - En el caso del alcance de VPC, el rango de direcciones IP secundario para los objetos Service no debe compartirse con ningún otro clúster de esa subred.
- Para el alcance de VPC, la política de respuesta asociada con un registro PTR se adjunta a la red de VPC. Si hay alguna otra política de respuesta vinculada a la red del clúster, la resolución del registro PTR para las direcciones IP del servicio de Kubernetes falla.
- Si intentas crear un servicio sin interfaz gráfica con una cantidad de Pods que exceda la cuota permitida, Cloud DNS no creará conjuntos de registros ni registros para el servicio.
- Los nombres de los servicios y los puertos tienen un límite de 62 caracteres, aunque las etiquetas de DNS tienen un límite máximo de 63 caracteres. Este comportamiento se debe a que GKE agrega un prefijo de guion bajo a los registros DNS.
Antes de comenzar
Antes de comenzar, asegúrate de haber realizado las siguientes tareas:
- Habilita la API de Google Kubernetes Engine. Habilitar la API de Google Kubernetes Engine
- Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta el comando
gcloud components updatepara obtener la versión más reciente. Es posible que las versiones anteriores de gcloud CLI no admitan la ejecución de los comandos que se describen en este documento.
Habilita la API de Cloud DNS en tu proyecto:
Para usar Cloud DNS en el alcance del clúster, necesitas una de las siguientes versiones:
- Para Standard: versiones 1.24.7-gke.800 o 1.25.3-gke.700 de GKE, o versiones posteriores
- Para Autopilot: versiones 1.25.9-gke.400 o 1.26.4-gke.500 de GKE, o versiones posteriores
- Versión 411.0.0 o posterior de Google Cloud CLI.
Para usar Cloud DNS en el permiso adicional de VPC, necesitas una de las siguientes versiones:
- Versión de GKE 1.28.3-gke.1430000 o posterior.
- Versión 503.0.0 o posterior de Google Cloud CLI.
Habilita el DNS del alcance del clúster
En el DNS del permiso de clúster, solo los nodos que se ejecutan en el clúster de GKE pueden
resolver los nombres de servicio, y estos no entran en conflicto entre los clústeres. Este comportamiento es el mismo que kube-dns en los clústeres de GKE, lo que significa que puedes migrar clústeres de kube-dns al permiso del clúster de Cloud DNS sin tiempo de inactividad ni cambios en tus aplicaciones.
En el siguiente diagrama, se muestra cómo Cloud DNS crea una zona de DNS privada para un clúster de GKE. Solo los procesos y los Pods que se ejecutan en los nodos del clúster pueden resolver los registros DNS del clúster, ya que solo los nodos están en el permiso de DNS.
Habilita el permiso de clúster en un clúster nuevo
Los clústeres de Autopilot nuevos en las versiones 1.25.9-gke.400, 1.26.4-gke.500 o posteriores tienen el permiso del clúster de Cloud DNS de forma predeterminada. En la siguiente sección, se muestra cómo habilitar el permiso de clúster en un clúster de Standard nuevo.
Crea un clúster de Standard con el alcance del clúster habilitado
Puedes crear un clúster de GKE Standard con el permiso del clúster de Cloud DNS habilitado con gcloud CLI o la Google Cloud consola:
gcloud
Crea un clúster con la marca --cluster-dns:
gcloud container clusters create CLUSTER_NAME \
--cluster-dns=clouddns \
--cluster-dns-scope=cluster \
--location=COMPUTE_LOCATION
Reemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerCOMPUTE_LOCATION: la ubicación de Compute Engine para el clúster.
La marca --cluster-dns-scope=cluster es opcional en el comando, ya que cluster es el valor predeterminado.
Console
En la consola de Google Cloud , ve a la página Crea un clúster de Kubernetes.
En el panel de navegación, en Clúster, haz clic en Herramientas de redes.
En la sección Proveedor de DNS, haz clic en Cloud DNS.
Selecciona Alcance del clúster.
Configura tu clúster según sea necesario.
Haz clic en Crear.
Habilita el permiso del clúster en un clúster existente
No se admite la migración de un clúster de Autopilot existente de kube-dns al permiso del clúster de Cloud DNS. Para habilitar el permiso del clúster de Cloud DNS, vuelve a crear los clústeres de Autopilot en las versiones 1.25.9-gke.400, 1.26.4-gke.500 o posteriores de GKE.
Puedes migrar un clúster estándar existente de kube-dns al permiso del clúster de Cloud DNS con gcloud CLI o la consola deGoogle Cloud .
Cuando migras un clúster existente de kube-dns a Cloud DNS, debes volver a crear los nodos para que el cambio surta efecto. Migra clústeres que ejecutan aplicaciones sin interrumpir la comunicación del clúster. Para ello, habilita Cloud DNS como proveedor de DNS en cada grupo de nodos por separado. Un subconjunto de los nodos está operativo en todo momento porque algunos grupos de nodos usan kube-dns y otros usan Cloud DNS.
gcloud
Actualiza el clúster existente:
gcloud container clusters update CLUSTER_NAME \ --cluster-dns=clouddns \ --cluster-dns-scope=cluster \ --location=COMPUTE_LOCATIONReemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerCOMPUTE_LOCATION: la ubicación de Compute Engine del clúster.
La marca
--cluster-dns-scope=clusteres opcional en el comando, ya queclusteres el valor predeterminado.La respuesta es similar a lo que se muestra a continuación:
All the node-pools in the cluster need to be re-created by the user to start using Cloud DNS for DNS lookups. It is highly recommended to complete this step shortly after enabling Cloud DNS. Do you want to continue (Y/n)?Después de confirmar, el controlador de Cloud DNS se ejecuta en el plano de control de GKE. Sin embargo, tus Pods no usan Cloud DNS para la resolución de DNS hasta que actualices tu grupo de nodos o agregues grupos de nodos nuevos al clúster.
Actualiza los grupos de nodos en el clúster para usar Cloud DNS:
gcloud container clusters upgrade CLUSTER_NAME \ --node-pool=POOL_NAME \ --location=COMPUTE_LOCATIONReemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerPOOL_NAME: el nombre del grupo de nodos que se actualizará
Si el grupo de nodos y el plano de control ejecutan la misma versión, primero actualiza el plano de control, como se describe en Actualiza manualmente el plano de control. Luego, realiza la actualización del grupo de nodos.
Confirma la respuesta y repite este comando para cada grupo de nodos del clúster. Si tu clúster tiene un solo grupo de nodos, omite la marca
--node-pool.
Console
Ve a la página de Google Kubernetes Engine en la consola de Google Cloud .
Haz clic en el nombre del clúster que deseas modificar.
En Herramientas de redes, en el campo Proveedor de DNS, haz clic en edit Editar proveedor de DNS.
Haz clic en Cloud DNS.
Haz clic en Alcance del clúster.
Haz clic en Guardar cambios.
Habilita el permiso adicional de VPC
En esta sección, se describen los pasos para habilitar o inhabilitar el permiso adicional de VPC, como un complemento del permiso del clúster de Cloud DNS.
Habilita el permiso adicional de VPC en un clúster nuevo
Puedes habilitar el DNS de permiso adicional de VPC en un clúster nuevo de GKE con gcloud CLI o la consola de Google Cloud .
Crea un clúster de Autopilot con un permiso de VPC adicional
gcloud container clusters create-auto CLUSTER_NAME \
--additive-vpc-scope-dns-domain=UNIQUE_CLUSTER_DOMAIN
Reemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerUNIQUE_CLUSTER_DOMAIN: Es el nombre de un dominio. Debes asegurarte de que este nombre sea único dentro de la VPC, ya que GKE no confirma este valor. No puedes cambiar este valor después de configurarlo. No debes usar un dominio que termine en.localo podrías experimentar fallas en la resolución de DNS.
Crea un clúster estándar con permiso de VPC adicional
gcloud container clusters create CLUSTER_NAME \
--cluster-dns=clouddns \
--cluster-dns-scope=cluster \
--additive-vpc-scope-dns-domain=UNIQUE_CLUSTER_DOMAIN
La marca --cluster-dns-scope=cluster es opcional porque cluster es el valor predeterminado.
Reemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerUNIQUE_CLUSTER_DOMAIN: Es el nombre de un dominio. Debes asegurarte de que este nombre sea único dentro de la VPC, ya que GKE no confirma este valor. No puedes cambiar este valor después de configurarlo. No debes usar un dominio que termine en.localo podrías experimentar fallas en la resolución de DNS.
Habilita el permiso adicional de VPC en un clúster Standard existente
No se admite la habilitación del permiso adicional de VPC en un clúster de Autopilot existente.
Para habilitar el permiso adicional de VPC en un clúster estándar existente, ejecuta el siguiente comando:
gcloud container clusters update CLUSTER_NAME \
--additive-vpc-scope-dns-domain=UNIQUE_CLUSTER_DOMAIN \
--location=COMPUTE_LOCATION
Reemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerUNIQUE_CLUSTER_DOMAIN: Es el nombre de un dominio. Debes asegurarte de que este nombre sea único dentro de la VPC, ya que GKE no confirma este valor. No puedes cambiar este valor después de configurarlo. No debes usar un dominio que termine en.localo podrías experimentar fallas en la resolución de DNS.COMPUTE_LOCATION: la ubicación de Compute Engine para el clúster.
Habilita el DNS de alcance de VPC
En el DNS del permiso de VPC, los nombres de DNS de un clúster se pueden resolver dentro de la VPC completa. Cualquier cliente en la VPC puede resolver los registros DNS del clúster.
El DNS del permiso de VPC habilita los siguientes casos de uso:
- Descubrimiento de servicios sin interfaz gráfica para clientes que no son de GKE dentro de la misma VPC.
- Resolución del Servicio de GKE de clientes locales o de la nube de terceros. Para obtener más información, consulta Política del servidor entrante.
- Resolución de servicio en la que un cliente puede decidir con qué clúster comunicarse usando el dominio DNS personalizado del clúster.
En el siguiente diagrama, dos clústeres de GKE usan DNS del permiso de VPC en la misma VPC. Ambos clústeres tienen un dominio DNS personalizado, .cluster1 y .cluster2, en lugar del dominio .cluster.local predeterminado. Una VM se comunica con el servicio de backend sin interfaz gráfica mediante la resolución de backend.default.svc.cluster1. Cloud DNS resuelve el Service sin interfaz gráfica a las direcciones IP del Pod individuales en el Service, y la VM se comunica directamente con las direcciones IP del Pod.
También puedes realizar este tipo de resolución desde otras redes cuando te conectas a la VPC a través de Cloud Interconnect o Cloud VPN. Las políticas de servidor DNS permiten a los clientes de redes conectadas a la VPC resolver nombres en Cloud DNS, incluidos los servicios de GKE si el clúster usa DNS del permiso de VPC.
Habilita el permiso de VPC en un clúster existente
La migración al permiso de la VPC solo es compatible con Standard y no con Autopilot.
Puedes migrar un clúster existente de Standard de kube-dns al permiso de VPC de Cloud DNS con gcloud CLI o la consola de Google Cloud .
Cuando migras al alcance de la VPC, debes volver a crear los nodos para que el cambio se aplique.
gcloud
Actualiza el clúster existente:
gcloud container clusters update CLUSTER_NAME \ --cluster-dns=clouddns \ --cluster-dns-scope=vpc \ --cluster-dns-domain=CUSTOM_DOMAIN \ --location=COMPUTE_LOCATIONReemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerCOMPUTE_LOCATION: la ubicación de Compute Engine para el clúster.CUSTOM_DOMAIN: Es el nombre de un dominio. Debes asegurarte de que este nombre sea único dentro de la VPC, ya que GKE no confirma este valor. No puedes cambiar este valor después de configurarlo. No debes usar un dominio que termine en.localo podrías experimentar fallas en la resolución de DNS.
La respuesta es similar a lo que se muestra a continuación:
All the node-pools in the cluster need to be re-created by the user to start using Cloud DNS for DNS lookups. It is highly recommended to complete this step shortly after enabling Cloud DNS. Do you want to continue (Y/n)?Después de confirmar, el controlador de Cloud DNS se ejecuta en el plano de control de GKE. Tus Pods no usan Cloud DNS para la resolución de DNS hasta que actualices tu grupo de nodos o agregues grupos de nodos nuevos al clúster.
Actualiza los grupos de nodos en el clúster para usar Cloud DNS:
gcloud container clusters upgrade CLUSTER_NAME \ --node-pool=POOL_NAMEReemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerPOOL_NAME: el nombre del grupo de nodos que se actualizará
Si el grupo de nodos y el plano de control ejecutan la misma versión, primero actualiza el plano de control, como se describe en Actualiza manualmente el plano de control. Luego, realiza la actualización del grupo de nodos.
Confirma la respuesta y repite este comando para cada grupo de nodos del clúster. Si tu clúster tiene un solo grupo de nodos, omite la marca
--node-pool.
Console
Ve a la página de Google Kubernetes Engine en la consola de Google Cloud .
Haz clic en el nombre del clúster que deseas modificar.
En Herramientas de redes, en el campo Proveedor de DNS, haz clic en edit Editar proveedor de DNS.
Haz clic en Cloud DNS.
Haz clic en Permiso de la VPC.
Haga clic en Guardar cambios.
Verifica Cloud DNS
Verifica que Cloud DNS para GKE funcione de forma correcta en tu clúster:
Para verificar que los nodos usen Cloud DNS, conéctate a un Pod en un nodo y ejecuta el comando
cat /etc/resolv.conf:kubectl exec -it POD_NAME -- cat /etc/resolv.conf | grep nameserverReemplaza
POD_NAMEcon el nombre del pod.Según el modo de clúster, el resultado es similar al siguiente:
Clúster de GKE Autopilot
nameserver 169.254.20.10Debido a que NodeLocal DNSCache está habilitado de forma predeterminada en GKE Autopilot, el Pod usa NodeLocal DNSCache.
Si la caché local no tiene una entrada para el nombre que se busca, NodeLocal DNSCache reenvía la solicitud a Cloud DNS.
Clúster de GKE Standard
nameserver 169.254.169.254Este Pod de ejemplo usa
169.254.169.254comonameserver, que es la dirección IP del servidor de metadatos en el que el plano de datos de Cloud DNS escucha las solicitudes en el puerto53. Los nodos ya no usan la dirección del serviciokube-dnspara la resolución de DNS, y toda la resolución de DNS se produce en el nodo local.Si el resultado es una dirección IP similar a
10.x.y.10, el Pod usakube-dns. Para comprender por qué tu Pod aún usakube-dns, consulta la sección Soluciona problemas .Si el resultado es
169.254.20.10, habilitaste NodeLocal DNSCache en tu clúster y el Pod usa NodeLocal DNSCache.Implementa una aplicación de muestra en tu clúster.
kubectl run dns-test --image us-docker.pkg.dev/google-samples/containers/gke/hello-app:2.0Expón la aplicación de muestra con un Service:
kubectl expose pod dns-test --name dns-test-svc --port 8080Verifica que el Service se haya implementado de forma correcta:
kubectl get svc dns-test-svcEl resultado es similar a lo siguiente:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE dns-test-svc ClusterIP 10.47.255.11 <none> 8080/TCP 6m10sEl valor de la columna
CLUSTER-IPes la dirección IP virtual de tu clúster. En este ejemplo, la dirección IP virtual es10.47.255.11.Verifica que el nombre de tu Service se haya creado como un registro en la zona de DNS privado para tu clúster:
gcloud dns record-sets list \ --zone=PRIVATE_DNS_ZONE \ --name=dns-test-svc.default.svc.DOMAIN_NAME.Reemplaza lo siguiente:
PRIVATE_DNS_ZONE: Es el nombre de la zona DNS administrada que crea GKE. Puedes encontrar los nombres de las zonas en la página de zonas de Cloud DNS en la consola de Google Cloud o consultando la convención de nomenclatura.DOMAIN_NAME:cluster.localsi usas el alcance del clúster sin el alcance de la VPC aditivo, o bien el dominio personalizado que configuraste cuando habilitaste el alcance de la VPC o el alcance de la VPC aditivo
El resultado es similar a lo siguiente:
NAME: dns-test-svc.default.svc.cluster.local. TYPE: A TTL: 30 DATA: 10.47.255.11
Inhabilita Cloud DNS en clústeres estándar
No se admite la inhabilitación de Cloud DNS en los clústeres de Autopilot que se crearon con Cloud DNS habilitado de forma predeterminada.
No se admite la inhabilitación del permiso de VPC en Estándar. Debes volver a crear el clúster con kube-dns como proveedor de DNS.
Puedes inhabilitar el permiso del clúster y volver a kube-dns en un clúster estándar con gcloud CLI o la consola deGoogle Cloud .
gcloud
Actualiza el clúster para usar kube-dns:
gcloud container clusters update CLUSTER_NAME \
--cluster-dns=kube-dns \
--location=COMPUTE_LOCATION
Reemplaza lo siguiente:
CLUSTER_NAME: el nombre del clústerCOMPUTE_LOCATION: la ubicación de Compute Engine del clúster.
Console
Ve a la página de Google Kubernetes Engine en la consola de Google Cloud .
Haz clic en el nombre del clúster que deseas modificar.
En Herramientas de redes, en el campo Proveedor de DNS, haz clic en edit Editar proveedor de DNS.
Haz clic en Kube-dns.
Haz clic en Guardar cambios.
Después de inhabilitar Cloud DNS, debes volver a crear tus grupos de nodos para que los nodos puedan usar kube-dns para la resolución. Si anteriormente escalaste kube-dns a cero nodos, debes escalar kube-dns antes de que los nodos puedan usarlo para la resolución de DNS. Si no vuelves a crear tus grupos de nodos, los Pods en los nodos existentes seguirán usando Cloud DNS para la resolución de DNS, ya que su archivo /etc/resolv.conf no se actualizará hasta que se vuelva a crear el nodo.
Inhabilita el permiso adicional de VPC
Cuando inhabilitas el permiso adicional de VPC para tu clúster, solo se borran los registros DNS de las zonas privadas conectadas a la red de VPC. Los registros en las zonas privadas del DNS del clúster de GKE permanecerán y serán administrados por Cloud DNS para GKE hasta que el Service sin interfaz gráfica se borre del clúster.
Para inhabilitar el permiso adicional de VPC, ejecuta el siguiente comando:
gcloud container clusters update CLUSTER_NAME \
--disable-additive-vpc-scope
Reemplaza CLUSTER_NAME por el nombre del clúster.
Este parámetro de configuración mantiene habilitado el clúster con el permiso del clúster de Cloud DNS, lo que proporciona resolución de DNS desde el clúster.
Realiza una limpieza
Después de completar los ejercicios de este documento, sigue estos pasos para quitar los recursos y evitar cargos no deseados en tu cuenta:
Borra el servicio:
kubectl delete service dns-test-svcBorra el Pod:
kubectl delete Pod dns-testTambién puedes borrar el clúster.
Soluciona problemas
Para obtener información sobre la solución de problemas de Cloud DNS, consulta las siguientes páginas:
- Para obtener asesoramiento sobre Cloud DNS en GKE, consulta Soluciona problemas de Cloud DNS en GKE.
- Para obtener asesoramiento específico sobre Cloud DNS, consulta Soluciona problemas de Cloud DNS.
- Para obtener asesoramiento general sobre el diagnóstico de problemas de DNS de Kubernetes, consulta Depuración de la resolución de DNS.
¿Qué sigue?
- Lee una descripción general de cómo GKE proporciona DNS administrado.
- Lee DNS para servicios y Pods para obtener una descripción general de cómo se usa DNS en los clústeres de Kubernetes.
- Obtén más información sobre los permisos y las jerarquías en Cloud DNS.
- Obtén más información para habilitar y, luego, inhabilitar el registro de zonas administradas privadas.