Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.09;
Скачать: CL | DM;

Вниз

Как вырваться из локальной сети, используя indy или Socket?   Найти похожие ветки 

 
art36 ©   (2007-11-12 11:15) [0]

Работаю с компонентами indy (idtcpclient и idtcpserver) и сокетами (clientsocket и serversocket).

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

Вопросы: Как мне осуществить соединение между удаленными компами в Delphi? Другой протокол использовать или здесь хитрость какая?


 
KSergey ©   (2007-11-12 11:39) [1]

А провайдер из какой зоны IP адреса выделает? Из своей локальной сетки? Тогда надо купить у него реальный ("белый") IP.
Хотя пожалуй правильнее будет научить работать прогу через провайдерский прокси или как тама у него делается.

К стати, на время одного сеанса IP - не меняется.
И еще. А как организовано подсключение к Internet каждого из участвующих компов?


 
Anatoly Podgoretsky ©   (2007-11-12 11:48) [2]

Раз ты виден в Интернете, то почти никакой разницы между локалкой и другие компоненты не нужны.


 
Anatoly Podgoretsky ©   (2007-11-12 11:49) [3]

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


 
Сергей М. ©   (2007-11-12 12:51) [4]


> с компонентами .. и сокетами (clientsocket и serversocket)


clientsocket и serversocket - это, по-твоему, не компоненты ?


 
art36 ©   (2007-11-12 16:00) [5]

Да все верно....

Сеть организована так:
Я напрямую подключен к сети (VPN соединение), а второй комп ко мне (т.е. шлюз).

Проблема не со вторым компом, а в том, что когда я сделал клиент-серверное приложение, то у мое друга в тамбове не соединялось со мной.... Однако, один раз мы с ним состряпали примитивную прогу и так получилось, что в одну сторону конектилось а в другую нет (это мы определили поменявшись прогами клиент и сервер).

Я указываю IP своей сетевой карты - это правлильно ведь?
Боюсь, что если закинуть часть моей программы на другой кдаленный комп, то он просто не найдет мой комп.... что мне кажется и происходит.

((


 
art36 ©   (2007-11-12 16:03) [6]

Конечно IP не будет меняться во время соединения! он менялся 2-3 раза за 5 месяцев.

Я указываю IP сетевой карты..... есть еще IP самого VPN соединения, а есть еще тот который мне дает провайдер автоматически.


 
Anatoly Podgoretsky ©   (2007-11-12 16:05) [7]

Я думаю, ИП соединения, а не твоей карты.


 
art36 ©   (2007-11-12 16:05) [8]

Да, еще не сказал, что когда я запускаю свою прогу дома на двух компах, то работает и отлично! Но это в локалке.... В инете мне кажется меня не видно. Но как же тогда аська например или другие сетевые программы, которые я использую?


 
Сергей М. ©   (2007-11-12 16:26) [9]


> В инете мне кажется меня не видно


Когда кажется, тогда крестятся)
Сначала убедись в этом либо обратном, потом и разговор будет.


> как же тогда аська


Аське для реализации ее основных функций видимость твоего хоста извне совершенно не нужна.


 
Anatoly Podgoretsky ©   (2007-11-12 16:34) [10]

> art36  (12.11.2007 16:05:08)  [8]

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


 
Anatoly Podgoretsky ©   (2007-11-12 16:34) [11]

> Сергей М.  (12.11.2007 16:26:09)  [9]

Нужна, но после соединения, ИП серверу известен.
Это тот случай когда нужен минимум один видимый ИП


 
Сергей М. ©   (2007-11-12 16:38) [12]


> Anatoly Podgoretsky ©   (12.11.07 16:34) [11]


> ИП серверу известен


Серверу по-барабану, чей ИП ему стал при этом известен. Это, к примеру, может быть и прокси-хост.


 
Anatoly Podgoretsky ©   (2007-11-12 16:46) [13]

> Сергей М.  (12.11.2007 16:38:12)  [12]

Хорошо сформулирую по другому - серверу известен сокет, вот он и используется и поддерживается в актуальном состоянии.


 
art36 ©   (2007-11-12 16:50) [14]

Окей! Спасибо! Пробую еще раз...............................!


 
Сергей М. ©   (2007-11-12 16:50) [15]


> Anatoly Podgoretsky ©   (12.11.07 16:46) [13]


А вот это совсем другой коленкор)
Но к проблеме автора, согласись, это не имеет ни малейшего отношения.


 
art36 ©   (2007-11-12 20:06) [16]

Ага, попробовал...

Думаю мне просто нужен "белый" IP, тогда мои программы смогут коннектиться без проблем.

Правильно говорил KSergey во втором сообщении.

?-)

Спасибо.
Поделитесь еще кто что знает, может кто-нить это уже прошел?


 
korneley ©   (2007-11-12 22:29) [17]

В двух словах.
1.Хост, на котором стоит серверное приложение (т.е. которое порты
слушает, TidTCPServer пользует), должен быть либо явно виден из Cети,
а стало быть иметь "реальный"/"белый" IP-адрес, либо договаривайся с
провайдером, чтоб он на своём прокси маппинг устроил на тебя. Второе -
вряд ли, не знаю ни одного провайдера, кто это делает.
2.Клиентская часть (которой "прямой" IP не обязателен) подключается к серверной, и передавай свои данные в обе стороны, согласно твоему протоколу.
 Кстати, и ICQ, и браузеры, и прочие Skype - ы, как раз клиенты,
поэтому им прокси твоего провайдера по барабану. Ну, если порты не прикрыты, конечно.
 Может чего неправильно посоветовал?


 
art36 ©   (2007-11-13 13:02) [18]

Не, все верно! Спасибо - теперь понял как это реализовать.


 
art36 ©   (2007-11-13 13:03) [19]

Не, все верно! Спасибо - теперь понял как это реализовать.


 
Плохиш ©   (2007-11-13 14:16) [20]

http://www.dyndns.com/

решит проблему



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

Текущий архив: 2007.12.09;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.022 c
15-1193175070
Прочее
2007-10-24 01:31
2007.12.09
Как сделать чтобы в OnKeyPress проходило сообщение VK_UP ?


3-1185870320
align
2007-07-31 12:25
2007.12.09
Fast Report 4


15-1194465471
Jolik
2007-11-07 22:57
2007.12.09
Макроязык как в 1С:Бухгалтерии...


2-1195132279
outlaw
2007-11-15 16:11
2007.12.09
Форматный вывод в StringGrid


1-1190020523
Алик
2007-09-17 13:15
2007.12.09
Хэш-коды и с чем их едят?