gpt4 book ai didi

macos - 如何在cocoa中获取正确的IPv6地址

转载 作者:行者123 更新时间:2023-12-03 17:04:58 25 4
gpt4 key购买 nike

我有以下代码片段,它返回正确的 IPV4 地址。

NSArray *addresses = [[NSHost currentHost] addresses];
NSString *stringAddress;

for (NSString *anAddress in addresses) {
if (![anAddress hasPrefix:@"127"] && [[anAddress componentsSeparatedByString:@"."] count] == 4) {
stringAddress = anAddress;
NSLog(@"stringAddress is %@",stringAddress);
break;
} else {
// Do Something
}
}

运行此应用程序后,这些是 NSHost 地址显示的 IP 地址。

2012-10-01 17:30:45.722 GetIPV6Address[1928:403] addresses is (
"fe80::426c:8fff:fe07:f4e4%en0",
"fdc7:2c68:e800::426c:8fff:fe07:f5e5",
"fdc7:2c68:e800::fd62:f01c:155d:3228",
"fe80::7ec3:a1ff:fea5:c32d%en1",
"198.168.10.144",)

在我的系统偏好设置中,我可以看到我的 IPV4 地址是 198.168.10.144,IPV6 地址是 fdc7:2c68:e800::426c:8fff:fe07:f5e5。

此列表并不总是按相同的顺序排列,因此我无法动态获取正确的 IP 地址。从列表中我如何找出 fdc7:2c68:e800::426c:8fff:fe07:f5e5 是我的 IPV6 地址。如有任何帮助,我们将不胜感激。

最佳答案

您显然有 2 个接口(interface),en0en1

两者都有一个 fe80: 地址(本地链接),并且都有一个 fdc7:2c68:e800::... 地址,无论它是什么。 (站点本地?)

它们都应该是可访问和可用的。

关于macos - 如何在cocoa中获取正确的IPv6地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11577616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com