estructura DNS_INTERFACE_SETTINGS3 (netioapi.h)

Representa la configuración dns que se puede configurar en una interfaz determinada llamando a la función SetInterfaceDnsSettings o recuperada para una interfaz determinada llamando a la función GetInterfaceDnsSettings .

Sintaxis

typedef struct _DNS_INTERFACE_SETTINGS3 {
  ULONG               Version;
  ULONG64             Flags;
  PWSTR               Domain;
  PWSTR               NameServer;
  PWSTR               SearchList;
  ULONG               RegistrationEnabled;
  ULONG               RegisterAdapterName;
  ULONG               EnableLLMNR;
  ULONG               QueryAdapterName;
  PWSTR               ProfileNameServer;
  ULONG               DisableUnconstrainedQueries;
  PWSTR               SupplementalSearchList;
  ULONG               cServerProperties;
  DNS_SERVER_PROPERTY *ServerProperties;
  ULONG               cProfileServerProperties;
  DNS_SERVER_PROPERTY *ProfileServerProperties;
} DNS_INTERFACE_SETTINGS3;

Miembros

Version

Tipo: ULONG

Debe establecerse en DNS_INTERFACE_SETTINGS_VERSION3.

Flags

Tipo: ULONG64

Mapa de bits de las siguientes opciones.

DNS_SETTING_IPV6 (0x0001). Configura las opciones de interfaz solo para la pila de redes IPv6. Si se establece esta opción, las direcciones IP especificadas en los miembros NameServer o ProfileNameServer deben ser direcciones IPv6. De forma predeterminada, la configuración de la interfaz DNS especificada en esta estructura solo se aplica a la pila de redes IPv4.

DNS_SETTING_NAMESERVER (0x0002). Configura los servidores DNS del adaptador estático en la interfaz especificada a través del miembro NameServer .

DNS_SETTING_SEARCHLIST (0x0004). Configura la lista de búsqueda de sufijos DNS específicos de la conexión para el adaptador especificado a través del miembro SearchList .

DNS_SETTING_REGISTRATION_ENABLED (0x0008). Habilita o deshabilita el registro DNS dinámico para el adaptador especificado. Esto está habilitado por el sistema de forma predeterminada.

DNS_SETTING_DOMAIN (0x0020). Configura el sufijo DNS específico de la conexión para el adaptador especificado a través del miembro Domain .

DNS_SETTINGS_ENABLE_LLMNR (0x0080). Habilita o deshabilita la resolución de nombres mediante LLMNR y mDNS en el adaptador especificado. Esto está habilitado por el sistema de forma predeterminada.

DNS_SETTINGS_QUERY_ADAPTER_NAME (0x0100). Habilita o deshabilita el uso del nombre del adaptador como sufijo para las consultas DNS. Esto está habilitado por el sistema de forma predeterminada.

DNS_SETTING_PROFILE_NAMESERVER (0x0200). Configura los servidores DNS de perfil estático en la interfaz especificada a través del miembro ProfileNameServer .

DNS_SETTING_SUPPLEMENTAL_SEARCH_LIST (0x0800). Configura la lista de búsqueda de sufijos adicionales de DNS específica de la conexión para el adaptador especificado a través del miembro SupplementalSearchList .

DNS_SETTING_DOH (0x1000). Configura los valores de DNS a través de HTTPS en el adaptador especificado a través de los miembros cServerProperties y ServerProperties . Si se establece esta opción, el miembro NameServer debe apuntar a una cadena válida que contenga una serie de servidores DNS separados por espacios o comas.

DNS_SETTING_DOH_PROFILE (0x2000). Configura las opciones de perfil DNS a través de HTTPS en el adaptador especificado a través de los miembros cProfileServerProperties y ProfileServerProperties . Si se establece esta opción, el miembro ProfileNameServer debe apuntar a una cadena válida que contenga una serie de servidores DNS separados por comas o espacios.

Domain

Tipo: PWSTR

Cadena ancha terminada en NULL que contiene el nombre de dominio del adaptador.

NameServer

Tipo: PWSTR

Cadena ancha terminada en NULL que contiene una serie de servidores DNS separados por comas o separados por espacios. Por ejemplo, L"1.1.1.1 8.8.8.8", o L"1.1.1.1,8.8.8.8".

Si la marca DNS_SETTING_IPV6 está presente, los servidores deben ser direcciones IPv6. Por ejemplo, L"2606:4700:4700::1001,2606:4700:4700::1111".

SearchList

Tipo: PWSTR

Cadena ancha terminada en NULL que contiene una serie de nombres de búsqueda separados por comas o separados por espacios. Por ejemplo, L"contoso1.com contoso2.com" o L"contoso1.com, contoso2.com".

RegistrationEnabled

Tipo: ULONG

TRUE para habilitar el registro dinámico del adaptador; FALSE para deshabilitarlo.

RegisterAdapterName

Tipo: ULONG

TRUE para habilitar el registro de nombres del adaptador; FALSE para deshabilitarlo.

EnableLLMNR

Tipo: ULONG

TRUE para habilitar mDNS y LLMNR en la interfaz especificada; FALSE para deshabilitarlos.

QueryAdapterName

Tipo: ULONG

TRUE si el nombre del adaptador debe usarse como sufijo de búsqueda; en caso contrario , FALSE.

ProfileNameServer

Tipo: PWSTR

Cadena ancha terminada en NULL que contiene una serie de servidores DNS separados por comas o separados por espacios. Por ejemplo, L"1.1.1.1 8.8.8.8" o L"1.1.1.1,8.8.8.8".

Si la marca DNS_SETTING_IPV6 está presente, los servidores deben ser direcciones IPv6. Por ejemplo, L"2606:4700:4700::1001,2606:4700:4700::1111".

DisableUnconstrainedQueries

Tipo: ULONG

Reservado.

SupplementalSearchList

Tipo: PWSTR

Cadena ancha terminada en NULL que contiene una serie de nombres de búsqueda separados por comas o separados por espacios. Por ejemplo, L"contoso1.com contoso2.com" o L"contoso1.com, contoso2.com".

cServerProperties

Tipo: ULONG

Número de propiedades de servidor especificadas en el miembro ServerProperties . Si es igual a 0, el miembro "ServerProperties" debe ser NULL.

ServerProperties

Tipo: DNS_SERVER_PROPERTY*

Matriz de estructuras de DNS_SERVER_PROPERTY que contiene elementos cServerProperties . Si cServerProperties es 0, debe ser NULL.

Solo se admiten las propiedades DNS a través de HTTPS, con la restricción adicional de como máximo 1 propiedad para cada servidor especificado en el miembro NameServer .

El miembro DNS_SERVER_PROPERTY::Version debe establecerse en DNS_SERVER_PROPERTY_VERSION1, ::Type debe establecerse en DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty y Property.DohSettings debe apuntar a un objeto DNS_DOH_SERVER_SETTINGS válido.

El miembro ServerIndex del DNS_SERVER_PROPERTY debe establecerse en el índice del servidor DNS correspondiente del miembro NameServer .

Por ejemplo, si el miembro NameServer está establecido en L"1.1.1.1, 8.8.8.8, 9.9.9.9", una propiedad para el servidor 1.1.1.1 tendría el miembro ServerIndex establecido en 0. De forma similar, 8.8.8.8 requeriría ServerIndex establecido en 1 y 9.9.9.9.9 requeriría el miembro ServerIndex establecido en 2.

cProfileServerProperties

Tipo: ULONG

Número de propiedades de servidor especificadas en el miembro ProfileServerProperties . Si es igual a 0, el miembro ProfileServerProperties debe ser NULL.

ProfileServerProperties

Tipo: DNS_SERVER_PROPERTY*

Matriz de estructuras de DNS_SERVER_PROPERTY que contiene elementos cProfileServerProperties . Si cProfileServerProperties es 0, debe ser NULL.

Solo se admiten las propiedades DNS a través de HTTPS, con la restricción adicional de como máximo 1 propiedad para cada servidor especificado en el miembro ProfileNameServer .

El miembro DNS_SERVER_PROPERTY::Version debe establecerse en DNS_SERVER_PROPERTY_VERSION1, ::Type debe establecerse en DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty y Property.DohSettings deben apuntar a un objeto DNS_DOH_SERVER_SETTINGS válido.

El miembro ServerIndex del DNS_SERVER_PROPERTY debe establecerse en el índice del servidor DNS correspondiente del miembro ProfileNameServer .

Por ejemplo, si el miembro ProfileNameServer se establece en L"1.1.1.1, 8.8.8.8, 9.9.9.9", entonces una propiedad para el servidor 1.1.1.1 tendría el miembro ServerIndex establecido en 0. De forma similar, 8.8.8.8 requeriría ServerIndex establecido en 1 y 9.9.9.9.9 requeriría el miembro ServerIndex establecido en 2.

Requisitos

Requisito Value
Cliente mínimo compatible compilación 19645 de Windows 10
Servidor mínimo compatible compilación 19645 de Windows 10
Encabezado netioapi.h (incluya Iphlpapi.h)

Consulte también