亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

用C/C++實現linux下檢測網絡接口狀態

2020-05-23 13:27:42
字體:
來源:轉載
供稿:網友

本文實例為大家分享了使用C/C++實現linux下檢測網絡接口狀態,供大家參考,具體內容如下

要寫個檢測網絡接口鏈接狀態的東西,又不喜歡不斷的ping別的地址,也不想調用其他命令行工具來做這個,于是在google了n多內容未果之后,搜到個檢測工具的源代碼。

以下代碼在fedora 9 / CentOS 5.2下調試通過:)

#include <sys/types.h>#include <string.h>#include <stdlib.h>#include <sys/ioctl.h>#include <stdio.h>#include <errno.h>#include <net/if.h> struct ethtool_value { __uint32_t cmd; __uint32_t data;}; /*return 1:has cable; return 0:no cable*/int detect_eth_cable(char *ifname) { struct ethtool_value edata; struct ifreq ifr; int fd = -1, err = 0;  memset(&ifr, 0, sizeof(ifr)); strcpy(ifr.ifr_name, ifname);  fd = socket(AF_INET, SOCK_DGRAM, 0); if (fd < 0) {  //perror("Cannot get control socket");  return -1;  } edata.cmd = 0x0000000A; ifr.ifr_data = (caddr_t)&edata; err = ioctl(fd, 0x8946, &ifr); if (err == 0) {  fprintf(stdout, "Link detected: %s/n", edata.data ? "yes":"no"); } else if (errno != EOPNOTSUPP) {  perror("Cannot get link status");  } return(edata.data==1 ? 1:0);}int main(int argc, char**argv){ detect_eth_cable("p1p1"); return 0;}

其他代碼:

int get_netportstatus(const char *interface) { char cmd[1024]; char *tt; FILE *fp; int devflag; devflag=get_netflag(interface); if (devflag==DEV_DOWN) { sprintf(cmd,"ifconfig %s up",interface); system(cmd); } sprintf(cmd,"ethtool %s | grep /"Link detected/" > /tmp/eth.temp",interface); system(cmd); if (devflag==DEV_DOWN) { sprintf(cmd,"ifconfig %s down",interface); system(cmd); } fp=fopen("/tmp/eth.temp","r"); if (fp==NULL) { system("rm -rf /tmp/eth.temp"); return -1; } fgets(cmd,1024,fp); fclose(fp); system("rm -rf /tmp/eth.temp"); tt=strstr(cmd,"no"); if (tt!=NULL) return LINK_DOWN; tt=strstr(cmd,"yes"); if (tt!=NULL) return LINK_UP; return -1;}
#include <sys/types.h>#include <string.h>#include <stdlib.h>#include <sys/ioctl.h>#include <stdio.h>#include <errno.h>#include <net/if.h>  struct ethtool_value {  __uint32_t  cmd;  __uint32_t  data;};  int main(int , char* []){ struct ethtool_value edata; int fd = -1, err = 0; struct ifreq ifr;    memset(&ifr, 0, sizeof(ifr));  strcpy(ifr.ifr_name, "eth0");  fd = socket(AF_INET, SOCK_DGRAM, 0);  if (fd < 0) {    perror("Cannot get control socket");    return 70;  }  edata.cmd = 0x0000000a;  ifr.ifr_data = (caddr_t)&edata;  err = ioctl(fd, 0x8946, &ifr);  if (err == 0) {    fprintf(stdout, "Link detected: %s/n",      edata.data ? "yes":"no");  } else if (errno != EOPNOTSUPP) {    perror("Cannot get link status");  } return 0;}
#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>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩欧美中文在线播放| 国产精品日韩欧美大师| 亚洲最新在线视频| 91久久综合亚洲鲁鲁五月天| 欧美成aaa人片在线观看蜜臀| 亚洲a级在线观看| 欧美午夜丰满在线18影院| 亚洲影视九九影院在线观看| 日韩av在线看| 国产极品jizzhd欧美| 亚洲黄色www| 海角国产乱辈乱精品视频| 2019亚洲日韩新视频| 亚洲色图日韩av| 亚洲大胆人体视频| 亚洲影院污污.| 日韩视频免费在线观看| 日韩精品在线视频| 久热精品视频在线观看| 在线国产精品播放| 成人免费视频在线观看超级碰| 国产精品扒开腿做爽爽爽的视频| 国产精品一区二区久久| 色视频www在线播放国产成人| 国产成人亚洲综合| 亚洲香蕉成视频在线观看| 日韩女在线观看| 亚洲综合第一页| 日韩精品999| 亚洲国产欧美一区二区丝袜黑人| 91欧美精品成人综合在线观看| 成人国产精品av| 91免费在线视频网站| 91精品国产高清久久久久久| 亚洲免费伊人电影在线观看av| 国产日本欧美在线观看| 精品国产乱码久久久久久天美| 国产精品美女主播在线观看纯欲| 亚洲第一中文字幕在线观看| 久久在精品线影院精品国产| 中文字幕亚洲一区在线观看| 一本色道久久综合亚洲精品小说| 欧美日韩国产丝袜另类| 91亚洲国产精品| 色777狠狠综合秋免鲁丝| 最近日韩中文字幕中文| 国产va免费精品高清在线观看| 激情久久av一区av二区av三区| 国产精品露脸av在线| 久久久久久国产精品三级玉女聊斋| 亚洲美女性生活视频| 在线观看亚洲视频| 亚洲国产精品网站| yellow中文字幕久久| 不卡在线观看电视剧完整版| 亚洲综合在线中文字幕| 精品国内亚洲在观看18黄| 91sao在线观看国产| 91国产视频在线播放| 日韩久久免费电影| 国产在线观看精品一区二区三区| 国产成人精品久久| 高清亚洲成在人网站天堂| 国产精品v日韩精品| 国产精品香蕉国产| 欧美黄色成人网| 国产精品福利观看| 日韩美女免费观看| 中文字幕av一区二区三区谷原希美| 欧美午夜精品久久久久久久| 成人免费午夜电影| 欧美xxxx18性欧美| 亚洲日本欧美日韩高观看| 日韩av手机在线看| 欧洲s码亚洲m码精品一区| www.99久久热国产日韩欧美.com| 亚洲欧洲xxxx| 欧美三级免费观看| 激情亚洲一区二区三区四区| 在线视频日本亚洲性| 91免费国产视频| 成人免费看黄网站| 91精品国产高清自在线看超| 国产免费一区二区三区在线观看| 日韩中文字幕在线视频播放| 久久免费国产视频| 亚洲一区制服诱惑| 国产精品久久久久久婷婷天堂| 九九热精品视频| 国产成人激情视频| 国产欧美一区二区白浆黑人| 日韩免费观看网站| 日韩激情视频在线| 久久久久久成人精品| 欧美老少配视频| 亚洲男人天堂网| 91综合免费在线| 日韩高清免费在线| 国产欧美最新羞羞视频在线观看| 69久久夜色精品国产69乱青草| 亚洲色图18p| 日韩精品中文在线观看| 国产精品白丝jk喷水视频一区| 国产伦精品一区二区三区精品视频| 九色成人免费视频| 高跟丝袜欧美一区| 亚洲国内精品视频| 久久久久久中文| 日韩电影中文字幕| 91国产在线精品| 亚洲情综合五月天| 色av吧综合网| 亚洲直播在线一区| 中文字幕亚洲专区| 成人字幕网zmw| 国产精品久久久久久久久借妻| 国产激情视频一区| 精品国产91乱高清在线观看| 日韩免费精品视频| 国产一区二区三区四区福利| 欧美黑人巨大xxx极品| 在线视频一区二区| 欧美中文字幕视频在线观看| 久久精品中文字幕一区| 91久久精品国产91性色| 91精品啪aⅴ在线观看国产| 亚洲老头同性xxxxx| 精品欧美一区二区三区| 亚洲欧美日韩爽爽影院| 高清一区二区三区日本久| 91精品国产自产在线| 国内精品久久久久久久久| 亚洲美女在线视频| 亚洲电影免费观看| 亚洲女人天堂视频| 国产精品日韩久久久久| 日韩激情第一页| 国产精品第8页| 久久久久久久一| 超碰91人人草人人干| 日韩av片免费在线观看| 欧美不卡视频一区发布| 97超碰色婷婷| 夜夜嗨av色一区二区不卡| 日韩av电影在线免费播放| 欧美中文字幕精品| 亚洲xxxx妇黄裸体| 国产精品午夜视频| 国产精品久久久久免费a∨大胸| 91成人免费观看网站| 精品久久久久久电影| 久久综合久久八八| 92版电视剧仙鹤神针在线观看| 国产一区欧美二区三区| 国产精品日韩在线| 亚洲精品一二区| 亚洲精品电影网| 在线电影欧美日韩一区二区私密| 欧美大成色www永久网站婷| 国产99久久精品一区二区| www.美女亚洲精品| 国产黑人绿帽在线第一区| 热门国产精品亚洲第一区在线| 国产suv精品一区二区三区88区|