社区
C语言
帖子详情
ioctl能否控制网口up/down
jixiang719
2011-04-13 04:03:56
int skfd;
struct ifreq ifr;
...
ioctl(skfd, SIOCETHTOOL, &ifr);
...
发现ioctl可以检测网卡与网线连通状态。
但是当双网口的网线都连通的时候,怎么控制使用其中的一个eth0,另外一个eth1关闭。
...全文
251
2
打赏
收藏
ioctl能否控制网口up/down
int skfd; struct ifreq ifr; ... ioctl(skfd, SIOCETHTOOL, &ifr); ... 发现ioctl可以检测网卡与网线连通状态。 但是当双网口的网线都连通的时候,怎么控制使用其中的一个eth0,另外一个eth1关闭。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wesleyluo
2011-04-13
打赏
举报
回复
要指定你想要控制的网卡名称,如eth0,eth1,eth2等等.
luobinshan
2011-04-13
打赏
举报
回复
参考ifconfig命令
strace ifconfig eth0 down
...
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
...
ioctl(4, SIOCGIFFLAGS, {ifr_name="eth0", ifr_flags=IFF_UP|IFF_BROADCAST|IFF_RUNNING|IFF_MULTICAST}) = 0
ioctl(4, SIOCSIFFLAGS, {ifr_name="eth0", ifr_flags=IFF_BROADCAST|IFF_RUNNING|IFF_MULTICAST}) = 0
...
strace ifconfig eth0 up
...
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
...
ioctl(4, SIOCGIFFLAGS, {ifr_name="eth0", ifr_flags=IFF_BROADCAST|IFF_MULTICAST}) = 0
ioctl(4, SIOCSIFFLAGS, {ifr_name="eth0", ifr_flags=IFF_UP|IFF_BROADCAST|IFF_RUNNING|IFF_MULTICAST}) = 0
...
ioctl
函数与网络接口
#include int
ioctl
( int fd, int request, .../* void *arg */ ); 返回0——成功, -1——出错 第一个参数 fd 指示某个文件描述符(当然也包括 套接口描述符) 第二个参数 request 指示要
ioctl
执行的操作 第三个参数 总是某种指针,
用户态监控网络接口up、down事件
网上搜索(https://blog.csdn.net/qq123386926/article/details/50695725)可以直接使用netlink现成的接口实现: #include <sys/types.h> #include <sys/socket.h> #include <asm/types.h> #include <l...
linux网卡updown命令,linuxc获取网卡状态(UPorDOWN)
源码如下:#include#include#include#include#includechar *net_detect(char* net_name){int skfd = 0;struct ifreq ifr;skfd = socket(AF_INET, SOCK_DGRAM, 0);if(skfd < 0) {printf("%s:%d Open socket error!n", _...
网口
up不起来问题排查
最近处理一个问题,发现有的
网口
up不起来。 ethtool eth6 Settings for eth6: Supported ports: [ FIBRE ] Supported link modes: 10000baseT/Full Supports auto-negotiation...
Linux系统网络设备启动和禁止“ifconfig eth0 up/down”命令的跟踪
前面文章讲了Linux系统的ethtool框架的一些东西,是从用户空间可以直观认识到的地方入手。同样,本文从Linux系统绝大部分人都熟悉的“ifconfig eth0 up”命令来跟踪一下此命令在内核中的发生了什么事情。由于ifconfig启动(up)和禁止(down)网络设备很相似,就放到一起讲了。 首先从ifconfig的源码入手,我下载的源码地址是http://www.tazenda.d...
C语言
69,373
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章