Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以编程方式在C中检查NIC在';它在linux中的应用_C_Linux_Linux Kernel_Network Programming_Ioctl - Fatal编程技术网

以编程方式在C中检查NIC在';它在linux中的应用

以编程方式在C中检查NIC在';它在linux中的应用,c,linux,linux-kernel,network-programming,ioctl,C,Linux,Linux Kernel,Network Programming,Ioctl,有没有办法检查我的NIC(已关闭)的链接是否良好 用C语言发送/接收帧 我试着分别检查正在运行的IFF\u和ETHTOOL\u GLINK 通过带有ioctl的SIOCGIFFLAGS和SIOCETHTOOL),但他们仅设置此项 NIC启动时的信息 我还试图直接检查/sys/class/net/XXX/carrier文件,但是 读取文件时,我总是得到一个无效参数 有人知道NIC关闭时获取此信息的方法吗?如果可用,您可以调用mii工具获取此信息。一些驱动程序会在界面关闭时报告状态,但许多(大多数?

有没有办法检查我的NIC(已关闭)的链接是否良好 用C语言发送/接收帧

我试着分别检查正在运行的
IFF\u和
ETHTOOL\u GLINK
通过带有ioctl的
SIOCGIFFLAGS
SIOCETHTOOL
),但他们仅设置此项 NIC启动时的信息

我还试图直接检查
/sys/class/net/XXX/carrier
文件,但是 读取文件时,我总是得到一个无效参数


有人知道NIC关闭时获取此信息的方法吗?

如果可用,您可以调用
mii工具获取此信息。一些驱动程序会在界面关闭时报告状态,但许多(大多数?)不会


(它使用
SIOCGMIIPHY
SIOCGMIIREG
ioctls)。

可能通过
/proc/
中的某个文件?请阅读抱歉的迟交的答案。到目前为止我什么也没找到
/proc/net/dev
有一些关于设备的统计信息,但我没有看到任何可以用来猜测链接状态的信息。还有其他想法吗?它在我的嵌入式linux上可以工作,但在我的Fedora18桌面上不行(不记得NIC驱动程序了)。我不确定后一个结果是否有效,因为当我关闭NIC时,开关指示灯也会熄灭。。也许NIC真的失去了这次事件中的链接。在其他一些情况下,对于非MII接口,ioctl只返回
ENOTSUP
。我将在这些电话中尝试更多的样品。非常感谢。