隐锋的BLOG
ASP,.net开发
char   *SearchIP()
{
        int MAXINTERFACES=16;
        char *ip=NULL;
        int fd,intrface,retn=0;
        struct ifreq buf[MAXINTERFACES];
        struct ifconf ifc;
        if((fd=socket(AF_INET,SOCK_DGRAM,0))>=0)
        {
                ifc.ifc_len=sizeof buf;
                ifc.ifc_buf=(caddr_t)buf;
                if(!ioctl(fd,SIOCGIFCONF,(char *)&ifc))
                {
                        intrface   =   ifc.ifc_len   /   sizeof   (struct   ifreq);
                        while(intrface-->0)
                        {
                                if(!(ioctl(fd,SIOCGIFADDR,(char *)&buf[intrface])))
                                {
                                        ip=(char *)(inet_ntoa(((struct   sockaddr_in*)(&buf[intrface].ifr_addr))->sin_addr));
                                        break;
                                }
                        }
                }
                close(fd);
                return   ip;
        }
}
posted on 2007-08-06 10:33  糊涂隐锋  阅读(648)  评论(0)    收藏  举报