次の方法で共有


DNS_INTERFACE_SETTINGS3構造体 (netioapi.h)

SetInterfaceDnsSettings 関数を呼び出すか、GetInterfaceDnsSettings 関数を呼び出して特定のインターフェイスに対して取得することで、特定のインターフェイスで構成できる DNS 設定表します。

構文

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 ネットワーク スタックのインターフェイス設定のみを構成します。 このオプションが設定されている場合、 NameServer メンバーまたは ProfileNameServer メンバーで指定された IP アドレスは IPv6 アドレスである必要があります。 既定では、この構造で指定された DNS インターフェイス設定は、IPv4 ネットワーク スタックにのみ適用されます。

DNS_SETTING_NAMESERVER (0x0002)。 NameServer メンバーを使用して、指定したインターフェイスで静的アダプター DNS サーバーを構成します。

DNS_SETTING_SEARCHLIST (0x0004)。 SearchList メンバーを使用して、特定のアダプターの接続固有の DNS サフィックス検索リストを構成します。

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)。 ProfileNameServer メンバーを使用して、指定したインターフェイスで静的プロファイル DNS サーバーを構成します。

DNS_SETTING_SUPPLEMENTAL_SEARCH_LIST (0x0800)。 SupplementalSearchList メンバーを使用して、指定されたアダプターの接続固有の DNS 補足サフィックス検索リストを構成します。

DNS_SETTING_DOH (0x1000)。 cServerProperties メンバーと ServerProperties メンバーを使用して、指定したアダプターで DNS over-HTTPS 設定構成します。 このオプションが設定されている場合、 NameServer メンバーは、一連のスペースまたはコンマ区切りの DNS サーバーを含む有効な文字列を指す必要があります。

DNS_SETTING_DOH_PROFILE (0x2000)。 cProfileServerProperties メンバーと ProfileServerProperties メンバーを使用して、指定したアダプターでプロファイル DNS over HTTPS 設定構成します。 このオプションが設定されている場合、 ProfileNameServer メンバーは、一連のスペースまたはコンマ区切りの DNS サーバーを含む有効な文字列を指す必要があります。

Domain

種類: PWSTR

アダプター ドメイン名を含む NULL で終わるワイド文字列。

NameServer

種類: PWSTR

一連のコンマまたはスペース区切りの DNS サーバーを含む NULL で終わるワイド文字列。 たとえば、L"1.1.1.1 8.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

アダプターの動的登録を有効にする場合は TRUEFALSE を指定すると無効になります。

RegisterAdapterName

種類: ULONG

アダプター名の登録を有効にする場合は TRUEFALSE を指定すると無効になります。

EnableLLMNR

種類: ULONG

指定 されたインターフェイスで mDNS と LLMNR を有効にする場合は TRUE。 FALSE を指定すると、無効になります。

QueryAdapterName

種類: ULONG

アダプター 名を検索サフィックスとして使用する必要がある場合は TRUE。それ以外の場合 は FALSE

ProfileNameServer

種類: PWSTR

一連のコンマまたはスペース区切りの DNS サーバーを含む NULL で終わるワイド文字列。 たとえば、L"1.1.1.1 8.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*

cServerProperties 要素を含むDNS_SERVER_PROPERTY構造体の配列。 cServerProperties が 0 の場合、これは NULL である必要があります。

DNS over-HTTPS プロパティのみがサポートされており、 NameServer メンバーで指定された各サーバーに対して最大 1 つのプロパティの追加制限があります。

DNS_SERVER_PROPERTY::Version メンバーはDNS_SERVER_PROPERTY_VERSION1に設定する必要があります。::TypeDNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty に設定する必要があり、Property.DohSettings は有効なDNS_DOH_SERVER_SETTINGS オブジェクトを指している必要があります。

DNS_SERVER_PROPERTYServerIndex メンバーは、NameServer メンバーの対応する DNS サーバーのインデックスに設定する必要があります。

たとえば、 NameServer メンバーが L"1.1.1.1、8.8.8.8、9.9.9.9" に設定されている場合、サーバー 1.1.1.1 のプロパティの ServerIndex メンバーは 0 に設定されます。 同様に、8.8.8.8 では ServerIndex が 1 に設定され、9.9.9.9 では ServerIndex メンバーが 2 に設定されている必要があります。

cProfileServerProperties

種類: ULONG

ProfileServerProperties メンバーで指定されたサーバー プロパティの数。 この値が 0 の場合、 ProfileServerProperties メンバーは NULL である必要があります。

ProfileServerProperties

種類: DNS_SERVER_PROPERTY*

cProfileServerProperties 要素を含むDNS_SERVER_PROPERTY構造体の配列。 cProfileServerProperties が 0 の場合、これは NULL である必要があります。

DNS over-HTTPS プロパティのみがサポートされており、 ProfileNameServer メンバーで指定された各サーバーに対して最大 1 つのプロパティの追加制限があります。

DNS_SERVER_PROPERTY::Version メンバーはDNS_SERVER_PROPERTY_VERSION1に設定する必要があります。::TypeDNS_SERVER_PROPERTY_TYPE::D nsServerDohProperty に設定する必要があり、Property.DohSettings は有効なDNS_DOH_SERVER_SETTINGS オブジェクトを指している必要があります。

DNS_SERVER_PROPERTYServerIndex メンバーは、ProfileNameServer メンバーの対応する DNS サーバーのインデックスに設定する必要があります。

たとえば、 ProfileNameServer メンバーが L"1.1.1.1、8.8.8.8、9.9.9.9" に設定されている場合、サーバー 1.1.1.1 のプロパティの ServerIndex メンバーは 0 に設定されます。 同様に、8.8.8.8 では ServerIndex が 1 に設定され、9.9.9.9 では ServerIndex メンバーが 2 に設定されている必要があります。

要件

要件
サポートされている最小のクライアント Windows 10 ビルド 19645
サポートされている最小のサーバー Windows 10 ビルド 19645
Header netioapi.h (Iphlpapi.h を含む)

こちらもご覧ください