【问题标题】:Status of network interface [duplicate]网络接口的状态[重复]
【发布时间】:2015-01-06 08:10:49
【问题描述】:

我正在尝试查找(具有多个 IP 的本地计算机的)哪些网络接口已启动,哪些已关闭。 是否有用于此的 C/C++ 函数?谢谢!

【问题讨论】:

    标签: c++ c linux networking


    【解决方案1】:

    参见 getifaddrs 手册页。你可以找到代码和手册页here

    【讨论】:

    • 它给出了所有的界面细节。不仅仅是那些正在运行的。
    • 您可以检查 Tx 和 Rx 数据包。
    【解决方案2】:

    使用/proc/net/ 了解更多信息,请参阅proc(5)。还有/sys/class/net/

    【讨论】:

      【解决方案3】:

      您可以使用GETIFADDRS(3) 函数创建一个描述本地系统网络接口的结构的链表,并将列表第一项的地址存储在*ifap 中。

      获取所有 IP 后,您可以使用 ping 检查 IP 是否正常

      if ( system("ping x.x.x.x ") == 0)
      {
          doSomthing();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-09-30
        • 1970-01-01
        • 2023-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-05
        • 2021-09-29
        相关资源
        最近更新 更多