linux系统下获取IP地址

实现了在linux下获取ip地址的功能
void VS_GetIPAddress(unsigned int *pIpAddress)
{ 

    int   fd;  
    struct ifreq   ifr;
    struct sockaddr_in *sin;
    fd = socket(PF_INET, SOCK_DGRAM, 0);   
    memset(&ifr, 0x00, sizeof(ifr));   
	strcpy(ifr.ifr_name, "eth0");
    ioctl(fd, SIOCGIFADDR, &ifr);   
    close(fd);   
    sin = (struct sockaddr_in*)&ifr.ifr_addr;  
    *pIpAddress = sin->sin_addr.s_addr;

}
如果有多个网卡,更改eth0为相应值
 

你可能感兴趣的:(linux系统下获取IP地址)