2010-07-20 6 views
1

IP 주소가 iPhone에 속하는지 확인하는 간단한 방법을 찾으려고합니다. 내가 상상할 수있는 해결책은 nmap을 사용하여 지정된 IP 주소로 작동하는 시스템을 확인한 다음 iOS인지 확인하는 것입니다. 이것이 올바른 방법입니까? 그렇지 않으면 누군가 나에게 대안을 제안 할 수 있습니까? IP 주소가 iPhone에 속하는지 알아낼 방법이 있습니까?

, 감사합니다 Thanasis

+0

이 어쩌면 HTTP, 서버 응용 프로그램의 관점에서인가? 그렇다면 HTTP 헤더가 도움이 될 수 있습니다. – SirDarius

+0

iPhone 용으로 예약 된 하위 집합이 있다고 생각하지 않습니다. 위와 같이 HTTP 헤더를 검사하거나 요청과 함께 전송 된 사용자 에이전트 문자열을 검사하는 것이 가장 좋지만 두 가지 모두 쉽게 스푸핑 될 수 있습니다. –

답변

0

우리는이 코드에 의해 IP 주소를 얻을 수 있습니다 :

- (NSString *)getIPAddress 
    { 
     NSString *address = @"error"; 
     struct ifaddrs *interfaces = NULL; 
     struct ifaddrs *temp_addr = NULL; 
     int success = 0; 

     // retrieve the current interfaces - returns 0 on success 
     success = getifaddrs(&interfaces); 
     if (success == 0) { 
      // Loop through linked list of interfaces 
      temp_addr = interfaces; 
      while (temp_addr != NULL) { 
       if(temp_addr->ifa_addr->sa_family == AF_INET) { 
        // Check if interface is en0 which is the wifi connection on the iPhone 
        if ([[NSString stringWithUTF8String:temp_addr->ifa_name] isEqualToString:@"en0"]) { 
         // Get NSString from C String 
         address = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_addr)->sin_addr)]; 
        } 
       } 

       temp_addr = temp_addr->ifa_next; 
      } 
     } 

     // Free memory 
     freeifaddrs(interfaces); 

     return address; 
    } 
+0

예,하지만이 코드는 장치에서 실행되는 경우 IP 주소를 가져옵니다. 내가 찾고있는 것은 주어진 IP 주소가 장치에 대한 액세스 권한없이 아이폰에 속하는지 찾을 수있는 방법입니다. 나는 스캔의 일부와 원격으로 그것을 의미합니다 .. –

관련 문제