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"또는 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
일련의 쉼표 또는 공백으로 구분된 DNS 서버를 포함하는 NULL로 종료된 와이드 문자열입니다. 예를 들어 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*
cServerProperties 요소를 포함하는 DNS_SERVER_PROPERTY 구조체의 배열입니다. cServerProperties가 0이면 NULL이어야 합니다.
DNS over-HTTPS 속성만 지원되며 NameServer 멤버에 지정된 각 서버에 대해 최대 1개의 속성이 추가로 제한됩니다.
DNS_SERVER_PROPERTY::Version 멤버는 DNS_SERVER_PROPERTY_VERSION1, ::Type은 DNS_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, 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이어야 합니다.
PROFILENameServer 멤버에 지정된 각 서버에 대해 최대 1개 속성의 추가 제한과 함께 DNS over-HTTPS 속성만 지원됩니다.
DNS_SERVER_PROPERTY::Version 멤버는 DNS_SERVER_PROPERTY_VERSION1, ::Type은 DNS_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, 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 |
머리글 | netioapi.h(Iphlpapi.h 포함) |