Вы, вероятно, должны использовать +[Reachability reachabilityForInternetConnection]
, а не достижимость для определенного имени (если, конечно, это то, что вам действительно нужно).
Могут быть разные причины, по которым конкретный сервер может быть недоступен, когда у вас все еще есть работающее подключение к Интернету.
Вот что я делаю:
BOOL hasInet;
Reachability *connectionMonitor = [Reachability reachabilityForInternetConnection];
[[NSNotificationCenter defaultCenter]
addObserver: self
selector: @selector(inetAvailabilityChanged:)
name: kReachabilityChangedNotification
object: connectionMonitor];
hasInet = [connectionMonitor currentReachabilityStatus] != NotReachable;
, а затем
-(void)inetAvailabilityChanged:(NSNotification *)notice {
Reachability *r = (Reachability *)[notice object];
hasInet = [r currentReachabilityStatus] != NotReachable;
}
, который хорошо работает для меня.