大佬教程收集整理的这篇文章主要介绍了iphone – 如何在iOS上执行DNS查询,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
部分来自其他片段,我发现这个代码
Boolean result; CFHostRef hostRef; NSArray *addresses; NSString *hostname = @"apple.com"; hostRef = CFHostCreateWithName(kcfAllocatorDefault,(CFStringRef)hostname); if (hostRef) { result = CFHostStartInfoResolution(hostRef,kcfHostAddresses,NULL); // pass an error instead of NULL here to find out why it Failed if (result == TRUE) { addresses = (NSArray*)CFHostGetAddressing(hostRef,&result); } } if (result == TRUE) { [addresses enumerateObjectsUsingBlock:^(id obj,NSUInteger idx,BOOL *stop) { NSString *strDNS = [NSString stringWithUTF8String:inet_ntoa(*((struct in_addr *)obj))]; NSLog(@"Resolved %d->%@",idx,strDNS); }]; } else { NSLog(@"Not resolved"); }
if (result == TRUE) { NSMutableArray *tempDNS = [[NSMutableArray alloc] init]; for(int i = 0; i < CFArrayGetCount(addresses); i++){ struct sockaddr_in* remoteAddr; CFDataRef saData = (CFDataRef)CFArrayGetValueAtIndex(addresses,i); remoteAddr = (struct sockaddr_in*)CFDataGetBytePtr(saData); if(remoteAddr != NULL){ // Extract the ip address //const char *strIP41 = inet_ntoa(remoteAddr->sin_addr); NSString *strDNS =[NSString stringWithCString:inet_ntoa(remoteAddr->sin_addr) encoding:NSASCIIStringEncoding]; NSLog(@"RESOLVED %d:<%@>",i,strDNS); [tempDNS addObject:strDNS]; } } }
以上是大佬教程为你收集整理的iphone – 如何在iOS上执行DNS查询全部内容,希望文章能够帮你解决iphone – 如何在iOS上执行DNS查询所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。