用C/C++实现linux下检测网络接口状态

2020-01-06 19:29:00于海丽

#include <net if.h=""> // IFF_RUNNING
 
//如果网卡已脸上网线,返回0,否则返回-1.
int check_nic(char *nic)
{
 struct ifreq ifr;
 int skfd = socket(AF_INET, SOCK_DGRAM, 0);
 
 strcpy(ifr.ifr_name, nic_name);
 if (ioctl(skfd, SIOCGIFFLAGS, &ifr) < 0)
 {
  return -1;
 }
 if(ifr.ifr_flags & IFF_RUNNING)
  return 0; // 网卡已插上网线
 else return -1;
}
</net>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持ASPKU。


注:相关教程知识阅读请移步到C++教程频道。