getifs: 一些跨平台网络工具,用于获取接口、多播地址、本地IP地址、私有IP地址、公共IP地址等。

💡 原文中文,约300字,阅读约需1分钟。
📝

内容提要

Rust缺少一个网络接口和地址的库,现有库无法获取网卡的MTU和多播地址。getifs的实现旨在通过更底层的方法避免不必要的内存分配。

🎯

关键要点

  • Rust缺少一个网络接口和地址的库。
  • 现有库无法获取网卡的MTU和多播地址。
  • 几乎所有的网络接口包都使用libc::getifaddrs。
  • getifs的实现旨在避免不必要的内存分配。
  • getifs使用更底层的方法来实现相同的功能。
  • Linux使用socket(AF_NETLINK, SOCK_RAW | SOCK_CLOEXEC, NETLINK_ROUTE)来获取网络信息。
  • BSD-like系统使用sysctl来获取网络信息。
  • Windows使用GetAdaptersAddresses来获取网络信息。
➡️

继续阅读