Одноранговый через 3G - PullRequest
       19

Одноранговый через 3G

0 голосов
/ 16 марта 2010

Эй, я пытаюсь установить соединение CFStream через 3G. Я могу заставить его работать через Wi-Fi, используя имя хоста, но когда я пытаюсь подключиться напрямую к IP-адресу, это не удается.

Существует ли руководство по подключению через 3G?

Спасибо ASH

Ответы [ 2 ]

2 голосов
/ 20 августа 2012

В некоторых случаях вы можете использовать обход NAT. Это не гарантированный метод и зависит от типа NAT, поэтому вам все равно понадобится сервер ретрансляции, если вы хотите гарантировать подключение.

Общее правило: если оба клиента находятся за симметричными NAT, то требуется сервер ретрансляции. Если только один NAT является симметричным, то при установлении P2P-соединений могут быть полезны методы STUN, ICE.

Вам может помочь следующее:

Создание интерактивного подключения, см. En.wikipedia.org/wiki/Interactive_Connectivity_Establishment

PJNATH Проект с открытым исходным кодом для обхода NAT в решениях SIP / VoIP, см. PJSIP.ORG

2 голосов
/ 16 марта 2010

Когда вы подключены к 3G, вы обычно находитесь за маршрутизатором, который реализует некоторую схему «NAT». Это означает, что ваш iPhone получает внутренний внутренний IP-адрес (сеть 3G) и общий «реальный» публичный IP-адрес снаружи (Интернет).

Это нормально, когда вы просто клиент, подключающийся к службам в Интернете, но он ужасно потерпит неудачу, когда вы попытаетесь подключиться к другим клиентам в той же ситуации.

Простого решения для этого не существует. Такие программы, как Skype, решают эту проблему, используя промежуточные серверы с общедоступными IP-адресами, которые могут ретранслировать сетевой трафик между узлами, находящимися за такими сетями с «NAT».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...