LinuxÒÁµéÔ°ÂÛ̳'s Archiver

bergluo ·¢±íÓÚ 2003-11-22 10:38

Çë½Ì¸ßÊÖ£ºgethostbyname µÃ²»µ½Êµ¼ÊµÄIPµØÖ·£¿

ÎҵĻú×Ó×°ÓÐRedhat 9.2,»ú×ÓÉÏÍøºÍ¹¤×÷Ò»ÇÐÕý³££¬µ«ÎÒ±àдÈçϳÌÐò¶Î£¬Ö»ÏÔʾÊä³öÁËÒ»¸ö»ØË͵ØÖ·¡°127.0.0.1¡±£¬È´Ã»ÓÐÏÔʾʵ¼ÊµÄIPµØÖ·¡£ÇëÎʳÌÐòÄÄÓÐÎÊÌ⣿
   
   char name[255];
   if( (gethostname(name, sizeof(name) ) ) < 0 )
    {
        fprintf(stderr,"%s: gethostname\n",strerror(errno));
        exit(1);
    }
    struct hostent *hp;
    hp = gethostbyname(name);
    if(!hp)
    {
        fprintf(stderr,"%s: gethostbyname %s\n",hstrerror
                (errno),name);
        exit(1);
    }
    char *ip;
    int i;
    ip = inet_ntoa( *(struct in_addr * ) *hp->h_addr_list );
    for( i=0; hp->h_addr_list[i]; i++)
    {
        printf("IP[%d]=%s",i,hp->h_addr_list[i]);
    }

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.