인터넷을 통해 두 개의 모바일 장치 (iPhone) 사이에 소켓을 연결할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/811298

  •  03-07-2019
  •  | 
  •  

문제

인터넷을 통해 두 개의 모바일 장치 (iPhone) 사이에 소켓을 연결할 수 있습니까?

각 장치의 IP를 발견하고 직접 연결하려고합니다. Bonjour로 수행 할 수는 있지만 로컬 네트워크에서만 작동합니다. 인터넷을 통해 두 장치간에 고속 연결이 필요합니다.

감사.

도움이 되었습니까?

해결책

IP를 모두 가지고 있고 둘 다 라우팅 가능하다면 가능해야합니다. 3G 네트워크가 제공 한 IP가 라우팅 가능하다면 확실하지 않습니다. Wi -Fi를 사용하는 경우 얻을 수있는 IP는 거의 경력이 없습니다. 그래도 라우팅 가능한 IP가 있다고 가정하면 가능해야합니다.

트릭은 다른 장치의 IP를 발견하는 것입니다. 이를 수행하는 가장 좋은 방법은 앱이 시작될 때 각 장치가 웹 서비스와 함께 IP를 등록하게 한 다음 해당 서비스를 쿼리하여 다른 장치의 IP를 찾는 것입니다.

앱이 닫힐 때 또는 IP가 변경 될 때 "등록되지 않은"IP를 관리하는 데 약간 까다로울 수 있지만 수행 할 수 있어야합니다.

ETA :

둘 다 연결할 수있는 서버가있는 경우 해당 서버를 사용하여 솔루션을 구현할 수 있어야합니다 (즉, 전화가 실제로 서로 직접 연결되지 않으면). 이것은 전화기에 대해 라우팅 가능한 IP를 갖는 문제를 피할 수 있습니다.

소켓을 함께 연결하는 방법에 대해서는 서버 프로그램이 기본적으로 구식 전화 교환 보드 운영자처럼 작동합니다. 서버 소프트웨어에 내장 된 일종의 등록 및 검색 프로토콜이있어서 전화가 서버에 스스로 등록 할 수 있도록하고 현재 서버에 연결된 다른 전화의 목록을 쿼리하고, 어떤 전화와 대화 할 전화를 나타내고 있는지, 다른 전화의 연결을 수락합니다.

누가 누구에게 말하고 싶은지 알면 서버 소프트웨어는 한 전화의 소켓에서 읽고 해당 데이터를 다른 전화의 소켓에 쓰면서 둘을 연결합니다.

다른 팁

제안 만 제안하지만 각각이 세 번째 사이트에 연결하도록 할 수 있다면 각 주소를 알 수 있습니다. 전화 A의 주소를 전화 B로 보내십시오 (및/또는 전화 B는 전화 a)를 보낸 다음 적합한대로 연결하도록합니다.

3.0 기능을 모두 살펴 보셨습니까? 특히 피어 네트워킹 (존재는 공개적입니다).

Wi -Fi 라우터에는 종종 "포트 트리거링"이라는 기능이있어 내부 호스트 (이 경우 iPhone)가 라우터에 특정 포트에 연결되기를 원한다는 것을 알릴 수 있습니다. iPhone 이이 프로토콜을 지원하는지 모르겠습니다.

IP 조회의 경우 두 호스트가 미리 알려지거나 사용자 정의 웹 서비스 위에 언급 된대로 DynamicDNS를 사용하는 것을 고려할 수 있습니다.

이것은 오래된 실이지만 방금 발견되었습니다. 기절 서버 (또는 NAT-PMP)를 사용하여 공개 IP 주소/포트 콤보를 얻은 다음 다른 전화로 SMS를 사용할 수 있습니다. 첫 번째 장치에서 청취 포트를 열면 두 번째 장치는 SMS에서 보낸 Publi IP 주소/포트를 사용하여 직접 연결할 수 있습니다 (SMS 푸시 레지스트리는 두 번째 장치에서 앱을 자동으로 깨울 수 있습니다. 이 작업을 수행)

내가 개발중인 앱 으로이 문제를 해결했습니다. iPhone에서 PC 셀 카드에 연결하려고했습니다. 문제는 AT & T가 iPhone에 대한 모바일 종료를 가능하게하지 않으므로 AT & T 네트워크의 두 전화기가 서로 연결하는 것은 물리적으로 불가능하다는 것입니다. 이것은 AT & T 안테나 엔지니어에서 직접입니다.

iPhone VPN을 서버에 넣은 다음 PC 셀 카드에 연결 하여이 작업을 수행 할 수 있었지만 그 외에는 작동하지 않습니다.

나는 iPhone 주소가 라우팅 할 수 없을 것이라는 매우 강한 느낌 (그러나 증거는 없음)을 가지고 있습니다. 물론 실제로는 운영자에 따라 다르지만 AT & T는 10.xxx 주소를 제공합니다.

애플이있다 샘플 (데스크탑) 코드 Bonjour를 사용하여 UNBNP를 지원하는 WiFi 라우터에서 포트 맵핑을 구현합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top