c - freebsd 中的 inet 或 inet6

标签 c networking freebsd ifconfig

我正在尝试从中获取网络接口(interface)信息 struct ifaddrs

如何确定我正在查看的接口(interface)是 inet (ipv4) 还是 inet6 (ipv6)?

最佳答案

您测试 ifa_addr->sa_family - IPv4 地址为 AF_INET,IPv6 地址为 AF_INET6

然后您可以根据需要将 ifa_addr 成员转换为 struct sockaddr_in *struct sockaddr_in6 *

关于c - freebsd 中的 inet 或 inet6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9459469/

相关文章:

c - 查找地址属于哪个页面

将三元运算改成if-else语句

c++ - 如何获取元素的个数

networking - 在端口和套接字之间混淆

c++ - 为什么 CLion 在 FreeBSD 上无限期地卡在 "Building..."上?

freebsd 中的 Mysqlslap 基准测试

c - 进程与线程(用户与内核)

java - 如何使用 Java 获取以太网地址?

qt - QSslSocket waitForReadyRead 似乎没有工作

sed - 如何使用 sed 删除第一个数字之前的所有字母?