当前位置:  技术问答>linux和unix

如何判断网卡关闭 或则网线没有插好

    来源: 互联网  发布时间:2017-03-20

    本文导语:  int get_netlink_status(void) {     int skfd;     struct ifreq ifr;     struct ethtool_value edata;     edata.cmd = ETHTOOL_GLINK;     edata.data = 0;     memset(&ifr, 0 , sizeof(ifr));     strcpy(ifr.ifr_name, "eth0");     ifr.ifr_data =...

int get_netlink_status(void)
{
    int skfd;
    struct ifreq ifr;
    struct ethtool_value edata;
    edata.cmd = ETHTOOL_GLINK;
    edata.data = 0;
    memset(&ifr, 0 , sizeof(ifr));
    strcpy(ifr.ifr_name, "eth0");
    ifr.ifr_data = (char *) &edata;
    if (( skfd = socket( AF_INET, SOCK_DGRAM, 0 )) == 0)
        return -1;
printf("SIOCETHTOOL = %dn" , SIOCETHTOOL);
    if(ioctl( skfd, SIOCETHTOOL , &ifr) == -1)
    {
        close(skfd);
        return -1;
    }
    close(skfd);
    return edata.data;
}



返回始终是1 无论是否关闭网卡 
有没有其他方法 请高手指点

|
给你个最简单的实现方法:
先安装个ethtool工具
然后在程序中
system("ethtool eth0 | grep "Link detected" > /tmp/result.tmp");
然后在文件/tmp/result.tmp中查找字符串
如果是no,则说明网卡关闭或者网线没有插好
如果是yes,则网络正常。

|
fd = socket(AF_INET, SOCK_DGRAM, 0);
if (fd 

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 在UNIX下怎么做一个判断一个进程是否关闭?
  • 如何判断在线用户,主要是如何判断用户关闭所有窗口(即他已经不在线了)?
  • QT中如何判断一个窗口已打开,打开的话并如何关闭?
  • 如何判断套接字是被关闭了。
  • socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断?
  • 怎么样判断一个类是否已经被实例化,并关闭这个实例,而且保证系统不退出(详情见内)
  • 如何有效判断服务器已经连接不上(服务器关闭,服务器非法退出等原因)
  • 子进程怎么知道(判断)父进程被关闭了
  • 在一个TCP连接完成后进行通信,如何判断对方已经关闭了?
  • C++ Vectors 成员 empty():判断Vector是否为空(返回true时为空)
  • linux->shell-> if 条件判断,关于软连接的判断!
  • javascript操作html复选框checkbox:如何判断复选框是否被选中
  • shell如何判断文件是否存在,如何判断变量是否为空
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 怎么判断串口已经收到数据,并及时读出?怎么判断串口已经将写入的数据发送完毕?
  • java实现判断字符串是否全是数字的四种方法代码举例
  • 在判断自符是否等于**时,用equals(“**”),那么如果我想判断它的值是否>=2该用什么呢?
  • 我是学pb的,判断闰年的是isdate("2-28"),但在java里怎么判断呢?
  • linux 下的自解压文件是什么格式,如何判断文件是否为自解压c++或者脚本判断均可
  • 如何判断在线用户,主要是如何判断用户关闭所有窗口(即他已经不在线了)? iis7站长之家
  • 知道TCP/UDP的包头,如何判断其应用层协议类型,struct tcphdr和 struct udphdr结构中那个变量能判断应用层协议类型。
  • c#判断字符是否为中文的三种方法分享(正则表达式判断)
  • 如何判断一个数是否为4的幂次方?若是,并判断出来是多少次方?
  • 判断图片-判断位图是否是黑白图片的方法
  • JQuery 判断某个属性是否存在hasAttr用法
  • 请问如何判断一个文件夹是否存在
  • 判断文件格式的c库函数
  • sftp命令如何判断成功与否?
  • Shell条件判断疑问?
  • java判断远程服务器上的文件是否存在的方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3