|
이거 약간 수정해서 알수 있네요. ppp사용자 일 경우 유용할듯.
/* call WSAStartup first */
WSAData wsaData;
char *Address;
if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0)
return "";
SOCKET sd = WSASocket(AF_INET, SOCK_DGRAM, 0, 0, 0, 0);
INTERFACE_INFO InterfaceList[20];
unsigned long nBytesReturned;
if ( WSAIoctl(sd, SIO_GET_INTERFACE_LIST, 0, 0,&InterfaceList,sizeof InterfaceList, &nBytesReturned, 0, 0) != 0)
{
return "";
}
int nNumInterfaces = nBytesReturned / sizeof(INTERFACE_INFO);
for (int i = 0; i < nNumInterfaces; i++) {
INTERFACE_INFO* ii = &InterfaceList[i];
Address=inet_ntoa(ii->iiAddress.AddressIn.sin_addr);
}
return Address;
}
|