![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как теоретически соединяються два клиента которые оба за NAT-ом
undersun © (2004-05-08 14:57:00)Как теоретически соединяються два клиента которые оба за NAT-ом
undersun (2004-05-09 13:54:00) [1]Спасибо. Всё ясно.
Anatoly Podgoretsky (2004-05-09 13:03:00) [2]Для работы без сервера, нужно на внешнем соединении открыть сокет и перебрасывать его уже тебе. Port Forwardig. В любом случае задействовано как минимум три компьютера. Клиент, Сервер и твой компьютер.
Anatoly Podgoretsky (2004-05-09 13:01:00) [3]Нужен сервер, который будет поддерживать список сокетов, связанных с клиентом и когда другой клиент хочет соединиться с тобой он получит твой сокет от сервера, дальше обмен идет уже без сервера. Сокет клиента получать от сервера не требуется, он будет получен при соединении.
undersun (2004-05-09 12:45:00) [4]Anatoly Podgoretsky
Хорошо. Как это програмно выглядит. Как мне сделать клиент и сервер и соединить их. На какой адрес вешать сервер и к какому соединяться клиенту.
Anatoly Podgoretsky (2004-05-09 12:25:00) [5]undersun (09.05.04 12:19) [8]
Там передача идет через установления соединиения изнутри и поддержания сокета активным. Соединение идет через внешний сервер и твой прокси/NAT, никаких локальных IP не фигурирует.
Таже самая проброска внешнего сокета на локальный.
Пара адрес:порт переправляется на другую пару адрес:порт [3]
undersun (2004-05-09 12:24:00) [6]Piterу тебя нет аськи. Ну что б побыстрей общаться. Обещаю модератору результат общения выложить на форум.
undersun (2004-05-09 12:19:00) [7]А как же это работает в ICQ: Там передеча файлов идёт по прямому соединению между двумя клиентами, как же в этом случае соединяють два клиента подключенные по диалапу с динамическим да ещё и внутренними (для каждого из клиентов)адресами. Это работает я проверял.
Piter (2004-05-09 12:12:00) [8]undersun (08.05.04 14:57)
Как теоретически соединяються два клиента которые оба за NAT-ом
В общем случае это невозможно. Поэтому у тебя как раз в PnP системах бывает статус LowID, то есть коннекты к тебе невозможны, только когда коннект инициализируешь ты.
Два клиента с LowID не могут сконнектиться никак :(
Есть решение правда:
"Можно назначить переадресацию определенных портов на определенные порты машин внутри локальной сети"
то есть, если обращаются на определенный порт твоего прокси, то он будет перенаправлять тебе на порт, внутрь сети.
Тогда если кто хочет приконнектиться - ему надо указывать IP адрес прокси...
Anatoly Podgoretsky (2004-05-09 12:11:00) [9]Соединяться ему с твоим слушающим сокетом, он должен быть доступен для него.
undersun (2004-05-09 11:46:00) [10]А как это выглядит с программной точки зрения. Я вот имею локальный (в своей сети) адрес я на нём открываю слушающий сокет, а второй товарищь в другой сети, к какому ему адресу коннектица
Mentat (2004-05-09 11:21:00) [11]Без port-forwarding'а только через внешний сервер.
Anatoly Podgoretsky (2004-05-08 19:33:00) [12]Пара адрес:порт переправляется на другую пару адрес:порт
Пара может быть и диапазоном.
Alex Konshin (2004-05-08 19:14:00) [13]Конечно.
NAT не обязательно динамический.
Можно назначить переадресацию определенных портов на определенные порты машин внутри локальной сети. Это как раз-таки обычное решение.
undersun (2004-05-08 14:58:00) [14]Ну в смысле за двумя разными системами, а не в одной. И вообще возможно ли такое?