DNS_INTERFACE_SETTINGS3-Struktur (netioapi.h)
Stellt die DNS-Einstellungen dar, die auf einer bestimmten Schnittstelle durch Aufrufen der SetInterfaceDnsSettings-Funktion konfiguriert oder für eine bestimmte Schnittstelle durch Aufrufen der GetInterfaceDnsSettings-Funktion abgerufen werden können.
Syntax
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;
Member
Version
Typ: ULONG
Muss auf DNS_INTERFACE_SETTINGS_VERSION3 festgelegt werden.
Flags
Typ: ULONG64
Eine Bitmap der folgenden Optionen.
DNS_SETTING_IPV6 (0x0001). Konfiguriert die Schnittstelleneinstellungen nur für den IPv6-Netzwerkstapel. Wenn diese Option festgelegt ist, müssen alle IP-Adressen, die in den Membern NameServer oder ProfileNameServer angegeben sind, IPv6-Adressen sein. Standardmäßig werden die in dieser Struktur angegebenen DNS-Schnittstelleneinstellungen nur auf den IPv4-Netzwerkstapel angewendet.
DNS_SETTING_NAMESERVER (0x0002). Konfiguriert die DNS-Server des statischen Adapters auf der angegebenen Schnittstelle über den NameServer-Member .
DNS_SETTING_SEARCHLIST (0x0004). Konfiguriert die verbindungsspezifische DNS-Suffixsuchliste für den angegebenen Adapter über das SearchList-Element .
DNS_SETTING_REGISTRATION_ENABLED (0x0008). Aktiviert oder deaktiviert die dynamische DNS-Registrierung für den angegebenen Adapter. Dies ist standardmäßig systemfähig.
DNS_SETTING_DOMAIN (0x0020). Konfiguriert das verbindungsspezifische DNS-Suffix für den angegebenen Adapter über das Domänenmitglied .
DNS_SETTINGS_ENABLE_LLMNR (0x0080). Aktiviert oder deaktiviert die Namensauflösung mithilfe von LLMNR und mDNS auf dem angegebenen Adapter. Dies ist standardmäßig systemfähig.
DNS_SETTINGS_QUERY_ADAPTER_NAME (0x0100). Aktiviert oder deaktiviert die Verwendung des Adapternamens als Suffix für DNS-Abfragen. Dies ist standardmäßig systemfähig.
DNS_SETTING_PROFILE_NAMESERVER (0x0200). Konfiguriert statische DNS-Profilserver auf der angegebenen Schnittstelle über das ProfileNameServer-Element .
DNS_SETTING_SUPPLEMENTAL_SEARCH_LIST (0x0800). Konfiguriert die verbindungsspezifische DNS-Zusatzsuffixsuchliste für den angegebenen Adapter über das SupplementalSearchList-Element .
DNS_SETTING_DOH (0x1000). Konfiguriert DNS-over-HTTPS-Einstellungen für den angegebenen Adapter über die Member cServerProperties und ServerProperties . Wenn diese Option festgelegt ist, muss das NameServer-Element auf eine gültige Zeichenfolge zeigen, die eine Reihe von durch Leerzeichen oder durch Trennzeichen getrennten DNS-Servern enthält.
DNS_SETTING_DOH_PROFILE (0x2000). Konfiguriert DNS-over-HTTPS-Profileinstellungen auf dem angegebenen Adapter über die Member cProfileServerProperties und ProfileServerProperties . Wenn diese Option festgelegt ist, muss das ProfileNameServer-Element auf eine gültige Zeichenfolge verweisen, die eine Reihe leerer oder durch Trennzeichen getrennter DNS-Server enthält.
Domain
Typ: PWSTR
Eine mit NULL beendete breite Zeichenfolge, die den Domänennamen des Adapters enthält.
NameServer
Typ: PWSTR
Eine mit NULL endende breite Zeichenfolge, die eine Reihe von durch Kommas oder leerzeichentrennten DNS-Servern enthält. Beispiel: L"1.1.1.1 8.8.8.8" oder L"1.1.1.1,8.8.8.8".
Wenn das flag DNS_SETTING_IPV6 vorhanden ist, müssen die Server IPv6-Adressen sein. Beispiel: L"2606:4700:4700::1001,2606:4700:4700::1111".
SearchList
Typ: PWSTR
Eine mit NULL endende breite Zeichenfolge, die eine Reihe von durch Kommas oder Leerzeichen getrennten Suchnamen enthält. Beispiel: L"contoso1.com contoso2.com", oder L"contoso1.com, contoso2.com".
RegistrationEnabled
Typ: ULONG
TRUE , um die dynamische Registrierung des Adapters zu aktivieren; FALSE , um es zu deaktivieren.
RegisterAdapterName
Typ: ULONG
TRUE , um die Registrierung des Adapternamens zu aktivieren; FALSE , um es zu deaktivieren.
EnableLLMNR
Typ: ULONG
TRUE , um mDNS und LLMNR auf der angegebenen Schnittstelle zu aktivieren; FALSE , um sie zu deaktivieren.
QueryAdapterName
Typ: ULONG
TRUE , wenn der Adaptername als Suchsuffix verwendet werden soll; andernfalls FALSE.
ProfileNameServer
Typ: PWSTR
Eine mit NULL endende breite Zeichenfolge, die eine Reihe von durch Kommas oder leerzeichentrennten DNS-Servern enthält. Beispiel: L"1.1.1.1 8.8.8.8" oder L"1.1.1.1,8.8.8.8".
Wenn das flag DNS_SETTING_IPV6 vorhanden ist, müssen die Server IPv6-Adressen sein. Beispiel: L"2606:4700:4700::1001,2606:4700:4700::1111".
DisableUnconstrainedQueries
Typ: ULONG
Reserviert.
SupplementalSearchList
Typ: PWSTR
Eine mit NULL endende breite Zeichenfolge, die eine Reihe von durch Kommas oder Leerzeichen getrennten Suchnamen enthält. Beispiel: L"contoso1.com contoso2.com", oder L"contoso1.com, contoso2.com".
cServerProperties
Typ: ULONG
Die Anzahl der Servereigenschaften, die im ServerProperties-Element angegeben sind. Wenn dies gleich 0 ist, muss der Member "ServerProperties" NULL sein.
ServerProperties
Typ: DNS_SERVER_PROPERTY*
Ein Array von DNS_SERVER_PROPERTY-Strukturen , das cServerProperties-Elemente enthält. Wenn cServerProperties 0 ist, muss dies NULL sein.
Es werden nur DNS-over-HTTPS-Eigenschaften unterstützt, wobei die zusätzliche Einschränkung von maximal 1 Eigenschaft für jeden Server im NameServer-Member angegeben ist.
Das element DNS_SERVER_PROPERTY::Version muss auf DNS_SERVER_PROPERTY_VERSION1, ::Type auf DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty und Property.DohSettings muss auf ein gültiges DNS_DOH_SERVER_SETTINGS-Objekt zeigen.
Der ServerIndex-Member des DNS_SERVER_PROPERTY muss auf den Index des entsprechenden DNS-Servers aus dem NameServer-Member festgelegt werden.
Wenn der NameServer-Member beispielsweise auf L"1.1.1.1.1, 8.8.8.8, 9.9.9.9" festgelegt ist, wird für eine Eigenschaft für den Server 1.1.1.1 das ServerIndex-Element auf 0 festgelegt. Entsprechend erfordert 8.8.8.8, dass ServerIndex auf 1 festgelegt ist, und 9.9.9.9 erfordert, dass der ServerIndex-Member auf 2 festgelegt ist.
cProfileServerProperties
Typ: ULONG
Die Anzahl der Servereigenschaften, die im ProfileServerProperties-Element angegeben sind. Wenn dies gleich 0 ist, muss der ProfileServerProperties-Member NULL sein.
ProfileServerProperties
Typ: DNS_SERVER_PROPERTY*
Ein Array von DNS_SERVER_PROPERTY-Strukturen , das cProfileServerProperties-Elemente enthält. Wenn cProfileServerProperties 0 ist, muss dies NULL sein.
Es werden nur DNS-over-HTTPS-Eigenschaften unterstützt, wobei die zusätzliche Einschränkung von maximal 1 Eigenschaft für jeden Server im ProfileNameServer-Element angegeben ist.
Das element DNS_SERVER_PROPERTY::Version muss auf DNS_SERVER_PROPERTY_VERSION1, ::Type auf DNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty und Property.DohSettings muss auf ein gültiges DNS_DOH_SERVER_SETTINGS-Objekt zeigen.
Das ServerIndex-Element des DNS_SERVER_PROPERTY muss auf den Index des entsprechenden DNS-Servers aus dem ProfileNameServer-Member festgelegt werden.
Wenn das ProfileNameServer-Element beispielsweise auf L"1.1.1.1,1, 8.8.8.8, 9.9.9.9" festgelegt ist, würde für eine Eigenschaft für den Server 1.1.1.1 das ServerIndex-Element auf 0 festgelegt sein. Entsprechend erfordert 8.8.8.8, dass ServerIndex auf 1 festgelegt ist, und 9.9.9.9 erfordert, dass der ServerIndex-Member auf 2 festgelegt ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 Build 19645 |
Unterstützte Mindestversion (Server) | Windows 10 Build 19645 |
Kopfzeile | netioapi.h (include Iphlpapi.h) |