Objective c 如何在Mac OS X上使用Obj C在LAN上获取所有可用的主机名和相关的IP地址?

Objective c 如何在Mac OS X上使用Obj C在LAN上获取所有可用的主机名和相关的IP地址?,objective-c,Objective C,我需要获得所有连接到LAN的机器的IP地址列表。我创建了一个NSHost对象,并用它来获取当前主机的地址,效果很好。但我需要获取网络上所有其他主机的地址。 任何有帮助的回答都是值得赞赏的。提前谢谢 我的片段: NSHost* host = [NSHost currentHost]; NSString* myIPAddress = [NSString stringWithFormat: [[host addresses] obje

我需要获得所有连接到LAN的机器的IP地址列表。我创建了一个NSHost对象,并用它来获取当前主机的地址,效果很好。但我需要获取网络上所有其他主机的地址。 任何有帮助的回答都是值得赞赏的。提前谢谢

我的片段:

NSHost* host = [NSHost currentHost];
NSString* myIPAddress = [NSString stringWithFormat:
                                  [[host addresses] objectAtIndex:1]];

执行此操作将myIPAddress设置为192.168.1.202,这是正确的。

这不一定是已知的,并且取决于和其他主机的合谋。您可能会考虑确定广播地址(例如192.1681.255),发送ICMP回送请求,然后枚举响应:但是不响应请求的系统将不会出现。在使用对任何其他请求的响应时,类似的问题都很明显:端口扫描或MDN注册。

谢谢Lee,这很有效。但是我一直在想,在obj-C中是否有任何特定的类或框架,可以像上面提到的那样服务于网络操作。@Balaji你得到解决方案了吗?