Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Вниз

Как теоретически соединяються два клиента которые оба за NAT-ом   Найти похожие ветки 

 
undersun   (2004-05-08 14:57) [0]

Как теоретически соединяються два клиента которые оба за NAT-ом


 
undersun   (2004-05-08 14:58) [1]

Ну в смысле за двумя разными системами, а не в одной. И вообще возможно ли такое?


 
Alex Konshin ©   (2004-05-08 19:14) [2]

Конечно.
NAT не обязательно динамический.
Можно назначить переадресацию определенных портов на определенные порты машин внутри локальной сети. Это как раз-таки обычное решение.


 
Anatoly Podgoretsky ©   (2004-05-08 19:33) [3]

Пара адрес:порт переправляется на другую пару адрес:порт
Пара может быть и диапазоном.


 
Mentat   (2004-05-09 11:21) [4]

Без port-forwarding"а только через внешний сервер.


 
undersun   (2004-05-09 11:46) [5]

А как это выглядит с программной точки зрения. Я вот имею локальный (в своей сети) адрес я на нём открываю слушающий сокет, а второй товарищь в другой сети, к какому ему адресу коннектица


 
Anatoly Podgoretsky ©   (2004-05-09 12:11) [6]

Соединяться ему с твоим слушающим сокетом, он должен быть доступен для него.


 
Piter ©   (2004-05-09 12:12) [7]

undersun   (08.05.04 14:57)
Как теоретически соединяються два клиента которые оба за NAT-ом


В общем случае это невозможно. Поэтому у тебя как раз в PnP системах бывает статус LowID, то есть коннекты к тебе невозможны, только когда коннект инициализируешь ты.
Два клиента с LowID не могут сконнектиться никак :(

Есть решение правда:

"Можно назначить переадресацию определенных портов на определенные порты машин внутри локальной сети"

то есть, если обращаются на определенный порт твоего прокси, то он будет перенаправлять тебе на порт, внутрь сети.
Тогда если кто хочет приконнектиться - ему надо указывать IP адрес прокси...


 
undersun   (2004-05-09 12:19) [8]

А как же это работает в ICQ: Там передеча файлов идёт по прямому соединению между двумя клиентами, как же в этом случае соединяють два клиента подключенные по диалапу с динамическим да ещё и внутренними (для каждого из клиентов)адресами. Это работает я проверял.


 
undersun   (2004-05-09 12:24) [9]

Piter у тебя нет аськи. Ну что б побыстрей общаться. Обещаю модератору результат общения выложить на форум.


 
Anatoly Podgoretsky ©   (2004-05-09 12:25) [10]

undersun   (09.05.04 12:19) [8]
Там передача идет через установления соединиения изнутри и поддержания сокета активным. Соединение идет через внешний сервер и твой прокси/NAT, никаких локальных IP не фигурирует.
Таже самая проброска внешнего сокета на локальный.

Пара адрес:порт переправляется на другую пару адрес:порт [3]


 
undersun   (2004-05-09 12:45) [11]

Anatoly Podgoretsky
Хорошо. Как это програмно выглядит. Как мне сделать клиент и сервер и соединить их. На какой адрес вешать сервер и к какому соединяться клиенту.


 
Anatoly Podgoretsky ©   (2004-05-09 13:01) [12]

Нужен сервер, который будет поддерживать список сокетов, связанных с клиентом и когда другой клиент хочет соединиться с тобой он получит твой сокет от сервера, дальше обмен идет уже без сервера. Сокет клиента получать от сервера не требуется, он будет получен при соединении.


 
Anatoly Podgoretsky ©   (2004-05-09 13:03) [13]

Для работы без сервера, нужно на внешнем соединении открыть сокет и перебрасывать его уже тебе. Port Forwardig. В любом случае задействовано как минимум три компьютера. Клиент, Сервер и твой компьютер.


 
undersun   (2004-05-09 13:54) [14]

Спасибо. Всё ясно.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1087307697
Apocalepse
2004-06-15 17:54
2004.07.04
Срочно пожалуста, как сделать свою прогу поверх всех окон


1-1087911904
SimKA
2004-06-22 17:45
2004.07.04
ошибка при работе с Dll


1-1087725582
R
2004-06-20 13:59
2004.07.04
AnsiPos но не чувствительная к регистру символа


9-1077637150
Cerber
2004-02-24 18:39
2004.07.04
Приму вдар.


3-1086701484
АлекСандр
2004-06-08 17:31
2004.07.04
Ячейка DBGrida





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский