我試圖ping我的網絡上的所有IP地址。我能夠得到我的IP現在即時通訊設法ping我的網絡中的所有其他IP。我有這個IP xxx.xxx.xxx.121,我必須ping xxx.xxx.xxx.1到xxx.xxx.xxx.255.Im使用簡單的方式。如何ping特定端口的ipaddress ios應用
for (int i = 0; i<256; i++) {
NSString *str = [NSString stringWithFormat:@"%@.%i",searchingIp,i];
NSLog(@"ipStr:%@",str);
const char *address = [str UTF8String];
NSLog(@"%s",address);
struct sockaddr_in callAddress;
callAddress.sin_len = sizeof(callAddress);
callAddress.sin_family = AF_INET;
callAddress.sin_port = htons(49160);
callAddress.sin_addr.s_addr = inet_addr(address);
NSLog(@"%s:%d",inet_ntoa(((struct sockaddr_in*)&callAddress)->sin_addr),((struct sockaddr_in*)&callAddress)->sin_port);
simplePing = [SimplePing simplePingWithHostAddress:[NSData dataWithBytes:&callAddress length:sizeof(callAddress)]];
simplePing.delegate = self;
[simplePing start];
}
我也試着設置端口「49160」,但它仍然顯示2240 林在這種類型的東西還挺新。
嘗試使用'ntohs()'將端口號轉換回您的'NSLog'語句中的主機格式。 – rmaddy