작은 iPhone 응용 프로그램을 만들고 IP 범위를 가져와 객관적인 C를 통해 반복해야합니다. 로컬 IP, 넷 마스크를 얻을 수 있습니다. 또한 SO 솔루션에서 브로드 캐스트 주소를 얻는 방법을 찾았습니다. 하지만 어떻게 네트워크 주소를 얻을 수 있습니까? 네트워크 주소를 알면 무엇이 로컬 네트워크의 첫 번째이고 브로드 캐스트 주소는 로컬 네트워크의 마지막 주소인지 알면 해당 범위의 모든 IP를 반복하고 싶습니다. 간단히 전화를 걸어 응답을보십시오. 어떻게해야합니까?목표 C를 사용하여 IP 범위 가져 오기
솔루션 https://stackoverflow.com/a/21077257
#include <net/ethernet.h>
#include <arpa/inet.h>
NSString *localIPAddress = @"192.168.1.10";
NSString *netmaskAddress = @"255.255.192.0";
// Strings to in_addr:
struct in_addr localAddr;
struct in_addr netmaskAddr;
inet_aton([localIPAddress UTF8String], &localAddr);
inet_aton([netmaskAddress UTF8String], &netmaskAddr);
// The broadcast address calculation:
localAddr.s_addr |= ~(netmaskAddr.s_addr);
// in_addr to string:
NSString *broadCastAddress = [NSString stringWithUTF8String:inet_ntoa(localAddr)];
업데이트에서 방송을 얻을 수 있습니다 : netmaskAddress에서 내가 네트워크에있는 호스트의 수를 얻을 수 있습니다. IP로만 작업하면됩니다. 이제 질문은 다음 IP를 어떻게 얻을 수 있습니까? 예를 들어
NSString *ip = "192.168.1.5"
목표 C에서 "192.168.1.6"을 어떻게 얻을 수 있습니까?
당신은 무엇을 반복 할 수 있습니까? 유스 케이스에 대해 설명해 주시겠습니까? – Moonwalkr
네트워크에서 다른 장치를 찾아야합니다. 그래서 로컬 네트워크에서 모든 IP를 호출해야합니다. – poul
iOS 멀티 피어 연결을 살펴 보셨습니까? 아마 당신의 유스 케이스를 해결할 것입니다 : http://nshipster.com/multipeer-connectivity/ https://developer.apple.com/library/ios/documentation/MultipeerConnectivity/Reference/MultipeerConnectivityFramework/Introduction/Introduction.html – rist