Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Представляет параметры DNS, которые можно настроить в заданном интерфейсе путем вызова функции SetInterfaceDnsSettings или получить для данного интерфейса путем вызова функции GetInterfaceDnsSettings .
Синтаксис
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;
Члены
Version
Тип: ULONG
Необходимо задать значение DNS_INTERFACE_SETTINGS_VERSION3.
Flags
Тип: ULONG64
Растровое изображение следующих параметров.
DNS_SETTING_IPV6 (0x0001). Настраивает параметры интерфейса только для сетевого стека IPv6. Если этот параметр задан, все IP-адреса, указанные в элементах NameServer или ProfileNameServer, должны быть IPv6-адресами. По умолчанию параметры интерфейса DNS, указанные в этой структуре, применяются только к сетевому стеку IPv4.
DNS_SETTING_NAMESERVER (0x0002). Настраивает DNS-серверы статического адаптера на указанном интерфейсе с помощью элемента NameServer .
DNS_SETTING_SEARCHLIST (0x0004). Настраивает список поиска DNS-суффиксов для конкретного адаптера с помощью элемента SearchList .
DNS_SETTING_REGISTRATION_ENABLED (0x0008). Включает или отключает динамическую регистрацию DNS для заданного адаптера. Эта функция включена системой по умолчанию.
DNS_SETTING_DOMAIN (0x0020). Настраивает DNS-суффикс для конкретного подключения для заданного адаптера через член домена .
DNS_SETTINGS_ENABLE_LLMNR (0x0080). Включает или отключает разрешение имен с помощью LLMNR и mDNS на указанном адаптере. Эта функция включена системой по умолчанию.
DNS_SETTINGS_QUERY_ADAPTER_NAME (0x0100). Включает или отключает использование имени адаптера в качестве суффикса для запросов DNS. Эта функция включена системой по умолчанию.
DNS_SETTING_PROFILE_NAMESERVER (0x0200). Настраивает DNS-серверы статического профиля в указанном интерфейсе с помощью элемента ProfileNameServer .
DNS_SETTING_SUPPLEMENTAL_SEARCH_LIST (0x0800). Настраивает список поиска дополнительных DNS-суффиксов для конкретного подключения для данного адаптера с помощью элемента SupplementalSearchList .
DNS_SETTING_DOH (0x1000). Настраивает параметры DNS-over-HTTPS для указанного адаптера с помощью элементов cServerProperties и ServerProperties . Если этот параметр задан, член NameServer должен указывать на допустимую строку, содержащую ряд DNS-серверов с разделительная пробелами или запятыми.
DNS_SETTING_DOH_PROFILE (0x2000). Настраивает параметры профиля DNS-over-HTTPS для указанного адаптера с помощью элементов cProfileServerProperties и ProfileServerProperties . Если этот параметр установлен, то элемент ProfileNameServer должен указывать на допустимую строку, содержащую ряд DNS-серверов с разделительная пробелами или запятыми.
Domain
Тип: PWSTR
Строка с завершением NULL, содержащая доменное имя адаптера.
NameServer
Тип: PWSTR
Строка с завершением NULL, содержащая ряд DNS-серверов, разделенных запятыми или пробелами. Например, L"1.1.1.1 8.8.8" или L"1.1.1.1,8.8.8.8".
Если флаг DNS_SETTING_IPV6 присутствует, серверы должны быть IPv6-адресами. Например, L"2606:4700:4700::1001,2606:4700:4700::1111".
SearchList
Тип: PWSTR
Широкая строка, завершающаяся null, содержащая ряд имен поиска, разделенных запятыми или пробелами. Например, L"contoso1.com contoso2.com" или L"contoso1.com, contoso2.com".
RegistrationEnabled
Тип: ULONG
ЗНАЧЕНИЕ TRUE , чтобы включить динамическую регистрацию адаптера; Значение FALSE , чтобы отключить его.
RegisterAdapterName
Тип: ULONG
Значение TRUE , чтобы включить регистрацию имени адаптера; Значение FALSE , чтобы отключить его.
EnableLLMNR
Тип: ULONG
Значение TRUE для включения mDNS и LLMNR в заданном интерфейсе; Значение FALSE , чтобы отключить их.
QueryAdapterName
Тип: ULONG
Значение TRUE , если имя адаптера следует использовать в качестве суффикса поиска; в противном случае — FALSE.
ProfileNameServer
Тип: PWSTR
Строка с завершением NULL, содержащая ряд DNS-серверов, разделенных запятыми или пробелами. Например, L"1.1.1.1 8.8.8" или L"1.1.1.1,8.8.8.8".
Если флаг DNS_SETTING_IPV6 присутствует, серверы должны быть IPv6-адресами. Например, L"2606:4700:4700::1001,2606:4700:4700::1111".
DisableUnconstrainedQueries
Тип: ULONG
Зарезервировано.
SupplementalSearchList
Тип: PWSTR
Широкая строка, завершающаяся null, содержащая ряд имен поиска, разделенных запятыми или пробелами. Например, L"contoso1.com contoso2.com" или L"contoso1.com, contoso2.com".
cServerProperties
Тип: ULONG
Количество свойств сервера, указанных в элементе ServerProperties . Если значение равно 0, то элемент ServerProperties должен иметь значение NULL.
ServerProperties
Тип: DNS_SERVER_PROPERTY*
Массив DNS_SERVER_PROPERTY структур, содержащих элементы cServerProperties . Если cServerProperties имеет значение 0, это значение должно иметь значение NULL.
Поддерживаются только свойства DNS-over-HTTPS с дополнительным ограничением не более 1 свойства для каждого сервера, указанного в элементе NameServer .
Элемент DNS_SERVER_PROPERTY::Version должен иметь значение DNS_SERVER_PROPERTY_VERSION1, параметру ::Type — значение DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty, а свойство Property.DohSettings должно указывать на допустимый объект DNS_DOH_SERVER_SETTINGS .
Элемент ServerIndexDNS_SERVER_PROPERTY должен иметь индекс соответствующего DNS-сервера из элемента NameServer .
Например, если элемент NameServer имеет значение L"1.1.1.1, 8.8.8.8, 9.9.9.9", то свойство сервера 1.1.1.1 будет иметь значение 0 . Аналогичным образом для версии 8.8.8.8 требуется значение ServerIndex 1, а для 9.9.9.9 для элемента ServerIndex — значение 2.
cProfileServerProperties
Тип: ULONG
Количество свойств сервера, указанных в элементе ProfileServerProperties . Если значение равно 0, то элемент ProfileServerProperties должен иметь значение NULL.
ProfileServerProperties
Тип: DNS_SERVER_PROPERTY*
Массив DNS_SERVER_PROPERTY структур, содержащих элементы cProfileServerProperties . Если cProfileServerProperties имеет значение 0, это значение должно иметь значение NULL.
Поддерживаются только свойства DNS-over-HTTPS с дополнительным ограничением не более 1 свойства для каждого сервера, указанного в элементе ProfileNameServer .
Элемент DNS_SERVER_PROPERTY::Version должен иметь значение DNS_SERVER_PROPERTY_VERSION1, для параметра ::Type — значение DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty , а свойство Property.DohSettings — на допустимый объект DNS_DOH_SERVER_SETTINGS .
Элемент ServerIndexDNS_SERVER_PROPERTY должен иметь индекс соответствующего DNS-сервера из элемента ProfileNameServer .
Например, если для элемента ProfileNameServer задано значение L"1.1.1.1, 8.8.8.8, 9.9.9.9", то свойство сервера 1.1.1.1 будет иметь значение 0 . Аналогичным образом для версии 8.8.8.8 требуется значение ServerIndex 1, а для 9.9.9.9 для элемента ServerIndex — значение 2.
Требования
| Требование | Значение |
|---|---|
| Минимальная версия клиента | Windows 10 сборка 19645 |
| Минимальная версия сервера | Windows 10 сборка 19645 |
| Верхняя часть | netioapi.h (включая Iphlpapi.h) |