0 votos

¿Cuál es la gramática de la configuración DNS del almacén dinámico?

Este útil habla de cómo usar el almacén dinámico es preferible a los archivos /etc/resolver/* de estilo bsd, e incluye un ejemplo útil. He encontrado algunos documentos que mencionan las mismas propiedades dns, pero deja algunas preguntas. ¿Es este documento relevante para el almacén dinámico? ¿Por qué sólo habla de que estas propiedades son válidas cuando se configura una VPN IKEv2? En este ejemplo concreto, ¿cómo funciona el comodín?

Aquí, se da un comodín tanto a ServerAddresses como a SupplementalMatchDomains. ¿Cómo funciona?

sudo scutil
d.init
d.add ServerAddresses * 9.9.9.9
d.add SupplementalMatchDomains * stackexchange.com
set State:/Network/Service/whatever-you-want-as-long-as-unique/DNS

Apple dice sobre ServerAddresses:

Una matriz de cadenas de direcciones IP de servidores DNS. Estas direcciones IP pueden ser una una mezcla de direcciones IPv4 e IPv6.

Apple dice sobre SupplementalMatchDomains:

Una lista de cadenas de dominio utilizadas para determinar qué consultas DNS utilizarán la configuración de resolución DNS contenida en ServerAddresses. Esta clave se para crear una configuración DNS dividida en la que sólo los hosts de ciertos dominios se resuelven utilizando el resolver DNS del túnel. Los hosts que no estén en uno de los dominios de esta lista se resuelven utilizando el sistema por defecto del sistema. Si SupplementalMatchDomains contiene la cadena vacía, se convierte en el dominio predeterminado. se convierte en el dominio por defecto. Así es como una configuración de túnel dividido puede dirigir todas las consultas DNS primero a los servidores VPN DNS antes que a los servidores DNS primarios. Si el túnel VPN se convierte en la ruta por defecto, los servidores listados en ServerAddresses se convierten en el y se ignora la lista SupplementalMatchDomains.

2voto

Mecki Puntos 121

¿Es este documento relevante para la tienda dinámica?

No directamente, pero Apple utiliza las mismas opciones en todo el sistema y dondequiera que se utilicen, también tienen el mismo significado.

El Almacén Dinámico es donde se almacenan ciertos aspectos dinámicos de la configuración actual del sistema, que principalmente la configuración de red (incluyendo la configuración VPN activa), el nombre de la máquina y algunos ajustes de ahorro de energía. El sitio sc en scutil significa S ystem C onfiguración.

Los perfiles de configuración se utilizan para dotar a los Macs/iPhones de una configuración predefinida, por ejemplo, si una empresa quiere distribuir miles de dispositivos a sus empleados, todos ellos con la misma configuración de base, entonces se pone esa configuración en un perfil y se carga ese perfil en cada uno de esos dispositivos. Y una cosa que puedes querer configurar en ese perfil es una configuración VPN, para que estos dispositivos tengan acceso a alguna LAN interna de la empresa a través de VPN y para describir esa configuración, se utilizan las mismas claves que en el Almacén Dinámico.

¿Por qué sólo habla de que estas propiedades son válidas al configurar una VPN IKEv2?

Normalmente no se despliega una configuración de red estática a través de un perfil, sino que se instala un servidor DHCP y se proporciona una configuración de red basada en la dirección de hardware (MAC) del dispositivo.

Sin embargo, el PDF que has enlazado es de 2019. Si compruebo las referencias en línea actuales de los perfiles de dispositivo, se mencionan esas claves también para el caso de que desee enviar una configuración DNS estática a los dispositivos:

https://developer.apple.com/documentation/devicemanagement/dnssettings/dnssettings

Por cierto, la documentación del marco de configuración del sistema puede consultarse aquí:

https://developer.apple.com/documentation/systemconfiguration

También enumera todas las claves existentes, por ejemplo, aquí están todas las claves relacionadas con DNS:

https://developer.apple.com/documentation/systemconfiguration/scschemadefinitions/dns_entity_keys

Pero en realidad no proporciona ninguna explicación, ya que esa documentación está destinada a desarrolladores que deberían saber lo que significan esas teclas (y si no lo saben, no deberían tocarlas).

En este ejemplo concreto, ¿cómo funciona el comodín?

Los comandos significan:

d.init

Inicializar un nuevo diccionario (una estructura de datos clave/valor, en la que los valores se referencian mediante una clave; algunos lenguajes de programación también lo llamarían hash o matriz asociativa).

d.add ServerAddresses * 9.9.9.9

Añade una nueva entrada al diccionario llamada ServerAddresses de tipo array ( * ) con un valor de 9.9.9.9

d.add SupplementalMatchDomains * stackexchange.com

Añade una nueva entrada al diccionario llamada SupplementalMatchDomains de tipo array ( * ) con un valor de stackexchange.com

set State:/Network/Service/whatever-you-want-as-long-as-unique/DNS

Guarda el diccionario actual en el Almacén Dinámico bajo la clave
State:/Network/Service/whatever-you-want-as-long-as-unique/DNS

Para más información, consulte echo help | scutil :

 d.add key [*#?%] val [v2 ...]  : add information to dictionary
       (*=array, #=number, ?=boolean, %=hex data)

d.add KEY VALUE también crearía una entrada de diccionario denominada KEY con un valor VALUE pero ese valor sería de tipo cadena. Añadiendo * , # , ? o % puede cambiar el tipo de valor en consecuencia.

Compara:

> d.init
> d.add someKey someValue
> d.show
<dictionary> {
  someKey : someValue
}

con:

> d.init
> d.add someKey * someValue
> d.show
<dictionary> {
  someKey : <array> {
    0 : someValue
  }
}
>

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X