다음을 통해 공유


IP 도우미 개요

IP 도우미(인터넷 프로토콜 도우미)를 사용하면 드라이버가 로컬 컴퓨터의 네트워크 구성에 대한 정보를 검색하고 해당 구성을 수정할 수 있습니다. 또한 IP 도우미는 로컬 컴퓨터 네트워크 구성의 특정 측면이 변경될 때 드라이버에 알림이 표시되도록 하는 알림 메커니즘을 제공합니다. IP 도우미는 Windows Vista 이상 버전의 Microsoft Windows 운영 체제에서 사용할 수 있습니다.

대부분의 IP 도우미 함수는 MIB(관리 정보 기반) 기술과 연결된 데이터 형식을 나타내는 구조 매개 변수를 전달합니다. IP 도우미 함수는 이러한 MIB 구조를 사용하여 다양한 네트워킹 정보를 나타냅니다.

IP 도우미 설명서에서는 "어댑터" 및 "인터페이스"라는 용어를 광범위하게 사용합니다. 어댑터는 원래 일종의 네트워크 하드웨어라고 하는 약식 형태의 네트워크 어댑터인 레거시 용어입니다. 어댑터는 데이터 링크 수준 추상화입니다.

인터페이스는 IETF RFC 문서에서 링크에 대한 노드의 첨부 파일을 나타내는 추상 개념으로 설명됩니다. 인터페이스는 IP 수준 추상화입니다.

드라이버는 다음 커널 모드 함수, MIB 구조 및 MIB 및 NL(네트워크 계층) 열거형을 사용하여 로컬 컴퓨터에서 TCP/IP(Transmission Control Protocol/Internet Protocol) 전송에 대한 구성 설정을 검색하고 수정할 수 있습니다.

참고 항목

 드라이버 코드를 개발할 때 헤더 파일을 포함하기 위한 지침을 따릅니다.

인터페이스 변환 함수

함수 설명

ConvertInterfaceAliasToLuid

네트워크 인터페이스의 LUID(로컬 고유 식별자)를 유니코드 인터페이스 이름으로 변환합니다.

ConvertInterfaceGuidToLuid

네트워크 인터페이스의 GUID(Globally Unique Identifier)를 인터페이스의 LUID로 변환합니다.

ConvertInterfaceIndexToLuid

네트워크 인터페이스의 로컬 인덱스를 인터페이스의 LUID로 변환합니다.

ConvertInterfaceLuidToAlias

네트워크 인터페이스의 LUID를 인터페이스 별칭으로 변환합니다.

ConvertInterfaceLuidToGuid

네트워크 인터페이스의 LUID를 인터페이스의 GUID로 변환합니다.

ConvertInterfaceLuidToIndex

네트워크 인터페이스의 LUID를 인터페이스의 로컬 인덱스로 변환합니다.

ConvertInterfaceLuidToNameA

네트워크 인터페이스의 LUID를 ANSI 인터페이스 이름으로 변환합니다.

ConvertInterfaceLuidToNameW

네트워크 인터페이스의 LUID를 유니코드 인터페이스 이름으로 변환합니다.

ConvertInterfaceNameToLuidA

ANSI 네트워크 인터페이스 이름을 인터페이스의 LUID로 변환합니다.

ConvertInterfaceNameToLuidW

유니코드 네트워크 인터페이스 이름을 인터페이스의 LUID로 변환합니다.

if_indextoname

네트워크 인터페이스의 로컬 인덱스를 ANSI 인터페이스 이름으로 변환합니다.

if_nametoindex

네트워크 인터페이스의 ANSI 인터페이스 이름을 인터페이스의 로컬 인덱스로 변환합니다.

인터페이스 관리 함수

함수 설명

GetIfEntry2

로컬 컴퓨터에서 지정된 인터페이스에 대한 정보를 검색합니다.

GetIfStackTable

인터페이스 스택에서 네트워크 인터페이스의 관계를 지정하는 네트워크 인터페이스 스택 행 항목의 테이블을 검색합니다.

GetIfTable2

MIB-II 인터페이스 테이블을 검색합니다.

GetIfTable2Ex

검색할 인터페이스 정보의 수준이 지정된 MIB-II 인터페이스 테이블을 검색합니다.

GetInvertedIfStackTable

인터페이스 스택에서 네트워크 인터페이스의 관계를 지정하는 반전된 네트워크 인터페이스 스택 행 항목의 테이블을 검색합니다.

GetIpInterfaceEntry

로컬 컴퓨터에서 지정된 인터페이스에 대한 IP 정보를 검색합니다.

GetIpInterfaceTable

로컬 컴퓨터에서 IP 인터페이스 항목을 검색합니다.

InitializeIpInterfaceEntry

기본값을 사용하여 MIB_IPINTERFACE_ROW 구조체 항목의 멤버를 초기화합니다.

SetIpInterfaceEntry

로컬 컴퓨터에서 IP 인터페이스의 속성을 설정합니다.

IP 주소 관리 함수

함수 설명

CreateAnycastIpAddressEntry

로컬 컴퓨터에 새 애니캐스트 IP 주소 항목을 추가합니다.

CreateSortedAddressPairs

제공된 대상 주소 목록을 호스트 컴퓨터의 로컬 IP 주소와 페어링하고 기본 통신 순서에 따라 쌍을 정렬합니다.

CreateUnicastIpAddressEntry

로컬 컴퓨터에 새 유니캐스트 IP 주소 항목을 추가합니다.

DeleteAnycastIpAddressEntry

로컬 컴퓨터에서 기존 anycast IP 주소 항목을 삭제합니다.

DeleteUnicastIpAddressEntry

로컬 컴퓨터에서 기존 유니캐스트 IP 주소 항목을 삭제합니다.

GetAnycastIpAddressEntry

로컬 컴퓨터에서 기존 anycast IP 주소 항목에 대한 정보를 검색합니다.

GetAnycastIpAddressTable

로컬 컴퓨터에서 애니캐스트 IP 주소 테이블을 검색합니다.

GetMulticastIpAddressEntry

로컬 컴퓨터에서 기존 멀티캐스트 IP 주소 항목에 대한 정보를 검색합니다.

GetMulticastIpAddressTable

로컬 컴퓨터에서 멀티캐스트 IP 주소 테이블을 검색합니다.

GetUnicastIpAddressEntry

로컬 컴퓨터에서 기존 유니캐스트 IP 주소 항목에 대한 정보를 검색합니다.

GetUnicastIpAddressTable

로컬 컴퓨터에서 유니캐스트 IP 주소 테이블을 검색합니다.

InitializeUnicastIpAddressEntry

로컬 컴퓨터의 유니캐스트 IP 주소 항목에 대한 기본값을 사용하여 MIB_UNICASTIPADDRESS_ROW 구조를 초기화합니다.

NotifyStableUnicastIpAddressTable

로컬 컴퓨터에서 안정적인 유니캐스트 IP 주소 테이블을 검색합니다.

SetUnicastIpAddressEntry

로컬 컴퓨터에서 기존 유니캐스트 IP 주소 항목의 속성을 설정합니다.

IP 인접 주소 관리 함수

함수 설명

CreateIpNetEntry2

로컬 컴퓨터에 새 인접 IP 주소 항목을 만듭니다.

DeleteIpNetEntry2

로컬 컴퓨터에서 인접 IP 주소 항목을 삭제합니다.

FlushIpNetTable2

로컬 컴퓨터에서 IP 인접 테이블을 플러시합니다.

GetIpNetEntry2

로컬 컴퓨터에서 인접 IP 주소 항목에 대한 정보를 검색합니다.

GetIpNetTable2

로컬 컴퓨터에서 IP 인접 테이블을 검색합니다.

ResolveIpNetEntry2

로컬 컴퓨터의 인접 IP 주소 항목에 대한 실제 주소를 확인합니다.

SetIpNetEntry2

로컬 컴퓨터에서 기존 인접 IP 주소 항목의 실제 주소를 설정합니다.

IP 경로 관리 함수

함수 설명

FlushIpPathTable

로컬 컴퓨터의 IP 경로 테이블을 플러시합니다.

GetIpPathEntry

로컬 컴퓨터의 IP 경로 항목에 대한 정보를 검색합니다.

GetIpPathTable

로컬 컴퓨터의 IP 경로 항목에 대한 정보를 검색합니다.

IP 경로 관리 함수

함수 설명

CreateIpForwardEntry2

로컬 컴퓨터에 새 IP 경로 항목을 만듭니다.

DeleteIpForwardEntry2

로컬 컴퓨터에서 IP 경로 항목을 삭제합니다.

GetBestRoute2

지정된 대상 IP 주소에 대한 최상의 경로를 위해 로컬 컴퓨터에서 IP 경로 항목을 검색합니다.

GetIpForwardEntry2

로컬 컴퓨터의 IP 경로 항목에 대한 정보를 검색합니다.

GetIpForwardTable2

로컬 컴퓨터에서 IP 경로 항목을 검색합니다.

InitializeIpForwardEntry

로컬 컴퓨터의 IP 경로 항목에 대한 기본값을 사용하여 MIB_IPFORWARD_ROW2 구조를 초기화합니다.

SetIpForwardEntry2

로컬 컴퓨터에서 IP 경로 항목의 속성을 설정합니다.

IP 테이블 메모리 관리 함수

함수 설명

FreeMibTable

네트워크 인터페이스, 주소 및 경로 테이블을 반환하는 함수에 의해 할당된 버퍼를 해제합니다(예: GetIfTable2GetAnycastIpAddressTable).

알림 함수

함수 설명

CancelMibChangeNotify2

안정적인 유니캐스트 IP 주소 테이블을 검색하기 위해 IP 인터페이스 변경, IP 주소 변경, IP 경로 변경 및 요청에 대한 변경 알림에 대한 드라이버를 등록 취소합니다.

NotifyIpInterfaceChange

로컬 컴퓨터의 모든 IP 인터페이스, IPv4 인터페이스 또는 IPv6 인터페이스 변경에 대한 알림을 받을 드라이버를 등록합니다.

NotifyRouteChange2

로컬 컴퓨터의 IP 경로 항목 변경에 대한 알림을 받도록 등록합니다.

NotifyUnicastIpAddressChange

로컬 컴퓨터의 모든 유니캐스트 IP 인터페이스, 유니캐스트 IPv4 주소 또는 유니캐스트 IPv6 주소의 변경 내용에 대한 알림을 받도록 등록합니다.

Teredo IPv6 클라이언트 관리 함수

함수 설명

GetTeredoPort

Teredo 클라이언트가 로컬 컴퓨터에서 사용하는 동적 UDP 포트 번호를 검색합니다.

NotifyTeredoPortChange

Teredo 클라이언트가 로컬 컴퓨터의 Teredo 서비스 포트에 사용하는 UDP 포트 번호 변경에 대한 알림을 받도록 등록합니다.

NotifyStableUnicastIpAddressTable

로컬 컴퓨터에서 안정적인 유니캐스트 IP 주소 테이블을 검색합니다.

MIB 구조체

구조 설명

IP_ADDRESS_PREFIX

IP 주소 접두사를 저장합니다.

MIB_ANYCASTIPADDRESS_ROW

애니캐스트 IP 주소에 대한 정보를 저장합니다.

MIB_ANYCASTIPADDRESS_TABLE

anycast IP 주소 항목의 테이블을 포함합니다.

MIB_IF_ROW2

특정 인터페이스에 대한 정보를 저장합니다.

MIB_IF_TABLE2

논리 및 물리적 인터페이스 항목의 테이블을 포함합니다.

MIB_IFSTACK_ROW

두 네트워크 인터페이스 간의 관계를 나타냅니다.

MIB_IFSTACK_TABLE

네트워크 인터페이스 스택의 행 항목 테이블을 포함합니다. 이 표에서는 인터페이스 스택에서 네트워크 인터페이스의 관계를 지정합니다.

MIB_INVERTEDIFSTACK_ROW

두 네트워크 인터페이스 간의 관계를 나타냅니다.

MIB_INVERTEDIFSTACK_TABLE

반전된 네트워크 인터페이스 스택 행 항목의 테이블을 포함합니다. 이 표에서는 인터페이스 스택의 네트워크 인터페이스 관계를 역순으로 지정합니다.

MIB_IPFORWARD_ROW2

IP 경로 항목에 대한 정보를 저장합니다.

MIB_IPFORWARD_TABLE2

IP 경로 항목의 테이블을 포함합니다.

MIB_IPINTERFACE_ROW

네트워크 인터페이스에 특정 IP 주소 패밀리에 대한 인터페이스 관리 정보를 저장합니다.

MIB_IPINTERFACE_TABLE

IP 인터페이스 항목의 테이블을 포함합니다.

MIB_IPNET_ROW2

인접 IP 주소에 대한 정보를 저장합니다.

MIB_IPNET_TABLE2

인접 IP 주소 항목의 테이블을 포함합니다.

MIB_IPPATH_ROW

IP 경로 항목에 대한 정보를 저장합니다.

MIB_IPPATH_TABLE

IP 경로 항목의 테이블을 포함합니다.

MIB_MULTICASTIPADDRESS_ROW

멀티캐스트 IP 주소에 대한 정보를 저장합니다.

MIB_MULTICASTIPADDRESS_TABLE

멀티캐스트 IP 주소 항목의 테이블을 포함합니다.

MIB_UNICASTIPADDRESS_ROW

유니캐스트 IP 주소에 대한 정보를 저장합니다.

MIB_UNICASTIPADDRESS_TABLE

유니캐스트 IP 주소 항목의 테이블을 포함합니다.

MIB 열거형

열거형 설명

MIB_IF_TABLE_LEVEL

검색할 인터페이스 정보의 수준을 정의합니다.

MIB_NOTIFICATION_TYPE

알림이 발생할 때 콜백 함수에 전달되는 알림 유형을 정의합니다.

NL 열거형

열거형 설명

NL_ADDRESS_TYPE

네트워크 계층의 IP 주소 유형을 지정합니다.

NL_DAD_STATE

DAD(중복 주소 검색) 상태를 정의합니다.

NL_LINK_LOCAL_ADDRESS_BEHAVIOR

링크 로컬 주소 동작을 정의합니다.

NL_NEIGHBOR_STATE

RFC 2461, 섹션 7.3.2에 설명된 대로 네트워크 계층 인접 IP 주소의 상태를 정의합니다.

NL_PREFIX_ORIGIN

IP 주소의 접두사 또는 네트워크 부분의 원본을 정의합니다.

NL_ROUTE_ORIGIN

IP 경로의 원본을 정의합니다.

NL_ROUTE_PROTOCOL

RFC 4292에 설명된 대로 IP 경로가 추가된 라우팅 메커니즘을 정의합니다.

NL_ROUTER_DISCOVERY_BEHAVIOR

RFC 2461에 설명된 대로 라우터 검색 동작을 정의합니다.

NL_SUFFIX_ORIGIN

IP 주소의 접미사 또는 호스트 부분의 원본을 정의합니다.