我需要获取连接到LAN的所有计算机的IP地址列表。我创建了一个NSHost对象并用它来获取当前主机的地址,并且它工作正常。但我需要获取网络上所有其他主机的地址。 任何有用的答案都会很明显。提前谢谢。
我的摘录:
NSHost* host = [NSHost currentHost];
NSString* myIPAddress = [NSString stringWithFormat:
[[host addresses] objectAtIndex:1]];
执行此操作后,myIPAddress为192.168.1.202,这是正确的。
答案 0 :(得分:0)
这不一定是可知的,取决于与其他主机的勾结。您可以考虑确定您的广播地址(例如192.168.1.255),发送ICMP回应请求然后枚举响应:但是不响应请求的系统将不会显示。使用对任何其他请求的响应时,类似的问题很明显:端口扫描或mDNS注册。