当前位置: 首页 > 面试题库 >

Linux获取所有网络接口名称

贝德辉
2023-03-14
问题内容

我需要收集所有接口名称,即使是目前还没有使用的接口名称。喜欢ifconfig -a

getifaddrs()多次遍历同一接口名称。如何使用一次收集所有接口名称getifaddrs()


问题答案:

您可以检查getifaddrs中的哪些条目属于AF_PACKET系列。在我的系统上,似乎列出了所有接口:

struct ifaddrs *addrs,*tmp;

getifaddrs(&addrs);
tmp = addrs;

while (tmp)
{
    if (tmp->ifa_addr && tmp->ifa_addr->sa_family == AF_PACKET)
        printf("%s\n", tmp->ifa_name);

    tmp = tmp->ifa_next;
}

freeifaddrs(addrs);


 类似资料:
  • 如何从Linux中的C程序获取网络接口的类型名? 我尝试使用访问网络接口,得到了所需的一切,除了它的类型名。你知道怎么做吗? 所以问题是,当我事先不知道使用什么接口以及机器中有多少接口时,我如何用C程序打印eth0、tap0、wlan0属于以太网类型,而LO->属于本地环回类型。 希望我能正确解释。

  • 问题内容: 看来android的java.net.NetworkInterface实现没有 byte [] getHardwareAddress()方法 http://developer.android.com/reference/java/net/NetworkInterface.html 我发现有几个论坛的人都试图这样做,但没有明确的答案,我需要获得一个跨设备的UUID,所以我不能依赖电话号码

  • 在 Cocos Creator 中,我们支持 Web 平台上最广泛使用的标准网络接口: XMLHttpRequest:用于短连接 WebSocket:用于长连接 当然,在 Web 平台,浏览器原生就支持这两个接口,之所以说 Cocos Creator 支持,是因为在发布原生版本时,用户使用这两个网络接口的代码也是可以运行的。也就是遵循 Cocos 一直秉承的 “一套代码,多平台运行” 原则。 注意

  • 问题内容: 我使用模块。 但这显示以下结果: 我想获得一个“友好的”界面名称,例如Windows中的“本地连接”。 我该怎么办? 问题答案: 似乎需要我们将信息从Windows注册表中提取出来。在Windows 8.1的Python 3.4下,以下功能对我有用。 要获取连接名称… ..在我的机器上产生: 获取驱动程序名称… …这给了我:

  • 问题内容: 如何仅使用 proc 获得所有网络接口的(IPv4)地址?经过广泛的调查,我发现了以下内容: 使用,需要打开套接字并充分了解所有接口名称。在Linux上的任何手册页中也没有记录。 包含,但这是接口统计信息的列表。 包含,这正是我需要的,但需要IPv6。 通常,在中很容易找到接口,但是很少使用实际地址,除非在某些连接中有明确的一部分。 有一个名为的系统调用,这是Windows所期望的非常

  • 网络浏览接口 可阅览因特网(互联网)上的Web网页。 如何卷动 显示选单 输入地址(URL) 使用分页 显示Flash®内容 上传档案 关闭网络浏览接口 利用网络过滤服务 "网络浏览接口"用户使用承诺条款