title: Reachability return ReachableViaWiFi when connected to 3G
body: <p>In iPhone 5S WiFi detected as 3G and in my iPhone 4 it's normal.
  Both in iOS 7.1.</p>
  
  <p>In some devices it happens as well.</p>
  
  <p>WiFi disabled and 3G connected, I double checked to see if internet connection is ok and indeed it's ok in device itself.</p>
  
  <p>Any idea why?</p>
  
  <p><strong>Edit 1:</strong></p>
  
  <p>Code below:</p>
  
  <pre><code>- (void)registerReachabilityNotification
  {
      [[NSNotificationCenter defaultCenter] addObserver:self
                                               selector:@selector(checkNetworkStatus:)
                                                   name:kReachabilityChangedNotification object:nil];
  
      Reachability *reach = [Reachability reachabilityForInternetConnection];
      [reach startNotifier];
  
      NSNotification *note = [[NSNotification alloc] initWithName:kReachabilityChangedNotification object:reach userInfo:nil];
      [self checkNetworkStatus:note];
  }
  
  - (void)checkNetworkStatus:(NSNotification*)notification
  {
      Reachability *reach = notification.object;
      NSParameterAssert([reach isKindOfClass: [Reachability class]]);
  
      NetworkStatus internetStatus = [reach currentReachabilityStatus];
      switch (internetStatus)
      {
          case NotReachable:
          {
              NSLog(@"No internet connection.");
              break;
          }
          case ReachableViaWiFi:
          {
              NSLog(@"The internet is working via WIFI.");
              break;
          }
          case ReachableViaWWAN:
          {
              NSLog(@"The internet is working via WWAN.");
              break;
          }
      }
  }
  </code></pre>
  
  <p><strong>Edit 1:</strong></p>
  
  <p>This code:</p>
  
  <pre><code>NetworkStatus nStats = [[Reachability reachabilityForLocalWiFi] currentReachabilityStatus];
  
      if (nStats != ReachableViaWiFi) {
          NSLog(@"nStats != ReachableViaWiFi");
      }
  
      if (nStats == ReachableViaWiFi) {
          NSLog(@"WIFI");
      }
      else if (nStats == ReachableViaWWAN) {
          NSLog(@"WWAN");
      }
      else if (nStats == NotReachable) {
          NSLog(@"not reachable");
      }
      else {
          NSLog(@"undetermined reachability.");
      }
  </code></pre>
  
  <p>Give me this:</p>
  
  <pre><code>Reachability Flag Status: WR t------ localWiFiStatusForFlags
  nStats != ReachableViaWiFi
  not reachable
  </code></pre>