подключение к серверу под NAT
От: Nailgun  
Дата: 24.06.07 21:16
Оценка:
Во внутренней сети под NAT стоит сервер. Внешнего частного IP нет.
Вопрос: каким образом можно подключиться к этому серверу будучи вне сети?
Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю. Также — передача файлов в ICQ. Оба клиента не исеют частного IP, но передача каким то образом все таки происходит.
Re: подключение к серверу под NAT
От: wellwell Австралия https://www.softperfect.com
Дата: 25.06.07 04:24
Оценка:
"Nailgun" <67098@users.rsdn.ru> wrote in message news:2557102@news.rsdn.ru...
> Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю.

Нет, через третий хост участника сети (т.н. supernode).

>Также — передача файлов в ICQ. Оба клиента не исеют частного IP, но передача каким то образом все таки происходит.


Аналогично.
Posted via RSDN NNTP Server 2.1 beta
Re[2]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 10:22
Оценка:
Здравствуйте, wellwell, Вы писали:

>> Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю.

W>Нет, через третий хост участника сети (т.н. supernode).
Т.е. например, если я нахожусь в одной сети без частного внешнего адреса, а мой друг в другой сети, тоже без адреса. Чтобы, чтобы я смог до него дозвониться, обязательно наличие либо в моей, либо в его сети supernode с внешним адресом?
[offtop]интересно, кто за этим следит, чтобы все дозванивались? у меня никогда проблем с этим не было.[/offtop]

И еще один вопрос:
Ситуация аналогичная предыдущей. Возможно ли установить соединение между этими двумя точками, посредством третьего хоста, но после установки соединения траффик посылать напрямую?
Re[3]: подключение к серверу под NAT
От: wellwell Австралия https://www.softperfect.com
Дата: 25.06.07 10:47
Оценка:
"Nailgun" <67098@users.rsdn.ru> wrote in message news:2557736@news.rsdn.ru...
> Т.е. например, если я нахожусь в одной сети без частного внешнего адреса, а мой друг в другой сети, тоже без адреса. Чтобы, чтобы я смог до него дозвониться, обязательно наличие либо в моей, либо в его сети supernode с внешним адресом?
> [offtop]интересно, кто за этим следит, чтобы все дозванивались? у меня никогда проблем с этим не было.[/offtop]

Supernode есть просто чей-то компьютер в интернете, и трафик идет от одного компютера до supernode, потом от supernode до другого. Примерно также как прокси.

> И еще один вопрос:

> Ситуация аналогичная предыдущей. Возможно ли установить соединение между этими двумя точками, посредством третьего хоста, но после установки соединения траффик посылать напрямую?

Нет.
Posted via RSDN NNTP Server 2.1 beta
Re: подключение к серверу под NAT
От: Аноним  
Дата: 25.06.07 10:51
Оценка:
Здравствуйте, Nailgun, Вы писали:

N>Во внутренней сети под NAT стоит сервер. Внешнего частного IP нет.

N>Вопрос: каким образом можно подключиться к этому серверу будучи вне сети?
N>Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю. Также — передача файлов в ICQ. Оба клиента не исеют частного IP, но передача каким то образом все таки происходит.

Если есть физический доступ к NAT — сделай форвардинг портов и не парься
Re[4]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 10:55
Оценка:
все понял, списибо!
Re[2]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 10:57
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Nailgun, Вы писали:


N>>Во внутренней сети под NAT стоит сервер. Внешнего частного IP нет.

N>>Вопрос: каким образом можно подключиться к этому серверу будучи вне сети?
N>>Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю. Также — передача файлов в ICQ. Оба клиента не исеют частного IP, но передача каким то образом все таки происходит.

А>Если есть физический доступ к NAT — сделай форвардинг портов и не парься


Нет, нету доступа. Я обычный смертный! =)
Re[4]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 11:15
Оценка:
Здравствуйте, wellwell, Вы писали:

W>Нет.

Но ведь эту проблему можно как то решить? Или это никому не надо и все ждут IPv6?
Re[3]: подключение к серверу под NAT
От: Аноним  
Дата: 25.06.07 11:15
Оценка:
Здравствуйте, Nailgun, Вы писали:

N>Здравствуйте, Аноним, Вы писали:


А>>Здравствуйте, Nailgun, Вы писали:


N>>>Во внутренней сети под NAT стоит сервер. Внешнего частного IP нет.

N>>>Вопрос: каким образом можно подключиться к этому серверу будучи вне сети?
N>>>Каким то образом это возможно, но я не пойму как. Пример: skype. Подключение идет непрямую между двумя точками, насколько я понимаю. Также — передача файлов в ICQ. Оба клиента не исеют частного IP, но передача каким то образом все таки происходит.

А>>Если есть физический доступ к NAT — сделай форвардинг портов и не парься


N>Нет, нету доступа. Я обычный смертный! =)

Простому смертному понадобился доступ к внутреннему серваку?
ай-яй-яй

Почитай эту доку, может что-то прояснит.
Re[4]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 11:36
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Простому смертному понадобился доступ к внутреннему серваку?

А>ай-яй-яй
=)
Думаю надо немного прояснить ситуацию. Вообще, мне к конкретному серваку доступ не нужен. Нужна возможность создавать внутренние серваки и подключаться к ним из инета. Я хочу реализовать такую систему:
Допустим мне надо зайти на web сервак внутри сети из инета:
1. На компьютере клиента ставится программа типа прокси (для браузера это будет веб-сервер).
2. Пишем в браузере localhost:12341 (любой порт)
3. Прокся хватает это дело, выскакивает окошко, типа к какому серверу подключиться. Пишем там цепочку IP до нашего сервера. Например:
87.123.xxx.xxx
172.168.xxx.xxx
192.168.xxx.xxx
т.е. проходит два NAT'а.
4. Все, а дальше эта прокся коннектится к серваку (вроде это можно, смотри ниже) и работает как посредник между браузером и серваком.

Вообще, я хочу такую штуку сделать для BitTorrent сети, чтобы пиры без внешних АйПи могли качать друг с друга.

Я вот все никак не мог найти инфу по этой теме (как через NAT работать), но вот кажется нашел:
http://www.brynosaurus.com/pub/net/p2pnat/

Я еще не прочитал, но ключевые слова в самом конце все таки рассмотрел:

...can be implemented by ordinary applications with no special privileges or specific network topology information...


Что скажите?
Re[5]: подключение к серверу под NAT
От: wellwell Австралия https://www.softperfect.com
Дата: 25.06.07 11:37
Оценка:
"Nailgun" <67098@users.rsdn.ru> wrote in message news:2557909@news.rsdn.ru...
> Но ведь эту проблему можно как то решить? Или это никому не надо и все ждут IPv6?

Решается данная проблема исключительно двумя способами, если оба компа не имеют реального адреса:

1) Промежуточный хост (aka supernode) с реальным IP адресом
2) На NAT'е настраивается порт форвардинг. К примеру если у нас есть внутри сети компутер с адресом 10.0.0.1, а в инет мы ходим через шлюз с внутренним адресом 10.0.0.254 и наружним x.x.x.x. Шлюз можно настроить таким образом что коннект на пределенный порт снаружи вызывает переадресацию пакетов. Например можно настроить его так, что все входящие на порт 80 (x.x.x.x: 80) пакеты будут переадресованы на 10.0.0.1, где к примеру можно запустить веб сервер.
Posted via RSDN NNTP Server 2.1 beta
Re[6]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 11:48
Оценка:
Здравствуйте, wellwell, Вы писали:

W>Решается данная проблема исключительно двумя способами, если оба компа не имеют реального адреса:


W>1) Промежуточный хост (aka supernode) с реальным IP адресом

W>2) На NAT'е настраивается порт форвардинг. К примеру если у нас есть внутри сети компутер с адресом 10.0.0.1, а в инет мы ходим через шлюз с внутренним адресом 10.0.0.254 и наружним x.x.x.x. Шлюз можно настроить таким образом что коннект на пределенный порт снаружи вызывает переадресацию пакетов. Например можно настроить его так, что все входящие на порт 80 (x.x.x.x: 80) пакеты будут переадресованы на 10.0.0.1, где к примеру можно запустить веб сервер.

Да, это все понятно, но возможности сделать ни то, ни то нету. Я в соседней подветке написал, что вообще мне надо.
Re[5]: подключение к серверу под NAT
От: Аноним  
Дата: 25.06.07 11:56
Оценка:
Здравствуйте, Nailgun, Вы писали:


N>Что скажите?

Ничего. В общем случае задача не решается. Я ту статью тоже не читал,
только мельком глянул, там вроде везде используется "well-known rendezvous server".
Так что те же яйца...
Re[6]: подключение к серверу под NAT
От: Аноним  
Дата: 25.06.07 12:05
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Nailgun, Вы писали:


Не внимательно твой пост прочитал, если тебе для торентов, то как внешний сервер
можно заюзать peer с реальным айпи, а потом попробовать применить hole punching
или что-то еще. Но я повторюсь, это не стопроцентное решение и работать будет
далеко не во всех случаях.

Я бы не возился, так если, только ради интереса если не на что убить время.
Re[7]: подключение к серверу под NAT
От: Аноним  
Дата: 25.06.07 13:27
Оценка:
Здравствуйте, Nailgun, Вы писали:

N>Да, это все понятно, но возможности сделать ни то, ни то нету. Я в соседней подветке написал, что вообще мне надо.


Все зависит от протокола через который кидать трафик:
1. TCP — проблему напрямую решить невозможон
2. UDP — решить можно (зависит от типа NAT, больше о типа NAT можешь прочитать в wikipedia).

В i-net есть бесплатные STUN сервера.
Смысл его в том что ты отправляешь запрос на этот сервер по UDP и побиваешь в своем NAT дырку.
STUN сервер возвращает тебе обратным пакетом твой внешний адрес и порт с которого пришол ему запрос.
Твой клиент передает информацию о внешнем твоем порте и адресе второму клиенту (тут уж без внешнего сервера не обойтись).
Далее ты начинаешь слушать на порте (который был открыт для отправки STUN сообщений) трафик, а второй клиент скидывает тебе информацию на адрес и порт который ты ему передал.

почитать можешь о библиотеке Jingle от goggle (в google talk используется)
Re[7]: подключение к серверу под NAT
От: Nailgun  
Дата: 25.06.07 18:55
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Я бы не возился, так если, только ради интереса если не на что убить время.


а как вы считаете, IPv6 решит все проблемы?
Re[4]: подключение к серверу под NAT
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 08.07.07 20:49
Оценка:
Здравствуйте, wellwell, Вы писали:

>> И еще один вопрос:

>> Ситуация аналогичная предыдущей. Возможно ли установить соединение между этими двумя точками, посредством третьего хоста, но после установки соединения траффик посылать напрямую?
W>Нет.

С чего это Вы так уверены?
Правильный ответ — возможно при определённых условиях, а именно — каждая сторона узнает, какой внешний адрес для порта будет использован с другой стороны для общения с этой. А вот тут уже вступает в дело, например, STUN: если NAT конусовый (это определение упрощённое, но для первого рассмотрения пойдёт) — то для одного внутреннего адреса внешний адрес один и тот же независимо от удалённого, и адрес полученный от STUN сервера можно анонсировать на другую сторону.

(На практике тут играет роль временнОй фактор: например, NAT может держать внешний адрес для внутреннего всё время жизни всех трансляций, но не хранить его после их истечения. Такой NAT будет конусовым для случая начала новой сессии ранее таймаута старой, но симметричным — после. Чисто конусовый NAT непрактичен из-за коллизий трансляций. Чисто симметричный — из-за невозможности предсказания адреса через STUN и аналоги.)
The God is real, unless declared integer.
Re[8]: подключение к серверу под NAT
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 08.07.07 20:50
Оценка:
Здравствуйте, Nailgun, Вы писали:

N>Здравствуйте, Аноним, Вы писали:

А>>Я бы не возился, так если, только ради интереса если не на что убить время.
N>а как вы считаете, IPv6 решит все проблемы?

Он создаст проблем больше, чем решит.
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.