IP Enumeration

Wednesday Dec 24th 2003 by Yvo van Dillen

Learn about the quickest way to enumerate the available IP addresses.


Environment: VC4, VC5, VC6

I think this is the quickest way to enumerate the available IP addresses on your machine. I've gotten this question a lot. This is fairly simple but haven't seen it anywhere.

IP Enumeration

// Function GetIPs
// in : CStringArray
// out : CStringArray + count

int GetIPs( CStringArray &arrIPS )
    BOOL bRet = TRUE;
    char name[255];
    int i=0;
    PHOSTENT hostinfo;

  //first, clear the list

  //get the host name
  if( gethostname ( name, sizeof(name)) == 0)
    // get the host info
    if((hostinfo = gethostbyname(name)) != NULL)
      // now, loop until the address list = null
      while( hostinfo->h_addr_list[i] != NULL )
        //get the IP address
        char *ip_addr = inet_ntoa (*(struct in_addr *)
        //add it to the array
        ip_addr );
        //increment the counter
  //return the array count
  return arrIPS.GetSize();
Mobile Site | Full Site
Copyright 2017 © QuinStreet Inc. All Rights Reserved