Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.03.2008, 16:05
ApplicatiOn ApplicatiOn вне форума
Активный
 
Регистрация: 28.02.2008
Сообщения: 388
Репутация: -10
По умолчанию Почему сервер только локальный получается?

Чат - клиент и сервер не соеденяются.

Вобщем проблема такова что при создании сервера он получается только локальный. Как это исправить?


Например когда включен сервер можно подключиться через клиент к своему компу только через 127.0.0.1. Больше никак.

Пробывал соединиться с другим человеком - и ничего не происходит.

Сервер и клиент: IdTCPClient и IdTCPServer

Помогите если вам не трудно..
Ответить с цитированием
  #2  
Старый 02.03.2008, 17:29
Аватар для alikoder
alikoder alikoder вне форума
Начинающий
 
Регистрация: 05.12.2007
Сообщения: 126
Репутация: 10
По умолчанию

У тебя интернет через ADSL? если да, то бесполезно. у меня такая же проблема была я так и не смог ничего внятного найти кроме как использовать Хамачи сети
Ответить с цитированием
  #3  
Старый 02.03.2008, 18:29
ApplicatiOn ApplicatiOn вне форума
Активный
 
Регистрация: 28.02.2008
Сообщения: 388
Репутация: -10
По умолчанию ree:

Да, ADSL. Хорошо, если через эти компоненты нельзя то как можно их обойти? Надо чтобы нормально переписываться можно было. cgi, php, почту, icq и там про обычные чаты не говорите... Нужен именно свой програмный чат. Хотябы для 2х человек (далее разберусь).

Другие компоненты несовсем подходят но если нет никаких других вариантов предложите какие надо для ADSL и др....

Очень нужна ваша помощь! Заранее спасибо!
Ответить с цитированием
  #4  
Старый 03.03.2008, 00:36
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Один из вас покупает выделенный IP ставит сервер и второй к нему стучит клиентом
Если есть роутер Файревол и прочая нечисть (которая тебя защищает )
необходимо разрешение от них на входящий трафик на порт который слушает сервер
(Надеюсь что сервер ты не настроил слушать 127.0.0.1)
Ответить с цитированием
  #5  
Старый 03.03.2008, 09:05
Аватар для The Shadow
The Shadow The Shadow вне форума
Продвинутый
 
Регистрация: 11.06.2007
Адрес: Уфа, Россия
Сообщения: 793
Репутация: 35
По умолчанию

Сервер и на 127.0.0.1 был настроен, потом на все IP (0.0.0.0), но соединение происходит только на своем компе.
__________________
Что делать, когда сломался комп:
1. Если вы юзер - делать ноги.
2. Если ремонтник - делать деньги.
3. Если вы программист - делать вид, что так было задумано.
Ответить с цитированием
  #6  
Старый 03.03.2008, 10:24
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Может поможет такая информация:
Любой компьютер может иметь несколько IP
127.0.0.1 - это локальный
и еще каждое подключение свой
если посмотреть состояние подключения, то на вкладке поддержка будет отображен IP этого подключения
Когда задается слушающий сокет (у тебя это TIdTCPServer)
ему задают какой IP слушать
утебя это свойство Bindings
можно задать чтобы слушал все направления
Если два компьютера видят друг друга то проблем нет
ставь сервер на IP под которым тебя видит другой комп или на все
с интернетом сложнее провайдер обычно предоставляет тебе исходящие соединения и принимает ответы на них при этом твой IP может совпадать с IP других клиентов провайдера
Что бы тебя видели из Интернета необходимо получить разрешение на входящие соединения - тогда хоть веб сервер разворачивай
Для этого обычно покупают у провайдера выделенный внешний IP
Если оба компа не имеют разрешение на входящие подключения ищи оригинальные методы проникновения в чужую сеть или используй внешний для обоих сервер посредник как это делают АСЯ, чаты и т.д.
Вот гдето так если без подробностей
Ответить с цитированием
  #7  
Старый 03.03.2008, 10:26
Аватар для alikoder
alikoder alikoder вне форума
Начинающий
 
Регистрация: 05.12.2007
Сообщения: 126
Репутация: 10
По умолчанию

Повторяю. бесполезно, и не стоит ничего менять просто, поставь у себя и у друга Хамачи, она создаст свою сеть, тоесть увас какбы локалка будет, там будут свои IP типа 5.195.12.51 и тд. и вот уже по ним будете коннектится друг к другу
Ответить с цитированием
  #8  
Старый 03.03.2008, 10:37
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Один из способов индивидуального обхода всех НАТОв и прочего -
Заведи бесплатный хост с чатом или форумом без авто регистрации или настрой так чтоб админ регистрировал новых пользователей
Сделай Страницы для свободного просмотра и только для зарегистрированных и выдавай своим друзьям регистрацию
Можно потом накодить прогу периодического просмотра закрытых сраниц и автоматической регистрацией и если инфа очань конфиденциальная добавить в прогу шифрование ключи от которого передавать другими каналами а на сайте будет хранится в закодированном виде
Ответить с цитированием
  #9  
Старый 03.03.2008, 10:48
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Да посмотрел Хамачи тоже подойдет
http://www.angelfire.com/games5/darkcry/hamachi.htm

Можно еще замутить через сервисы Майл по типу майл клиентов только почаще опрашивать
Ответить с цитированием
  #10  
Старый 03.03.2008, 12:46
Аватар для The Shadow
The Shadow The Shadow вне форума
Продвинутый
 
Регистрация: 11.06.2007
Адрес: Уфа, Россия
Сообщения: 793
Репутация: 35
По умолчанию

А если потом распространять эту программу (клиент), то этот Хамачи тоже придется устанавливать?
__________________
Что делать, когда сломался комп:
1. Если вы юзер - делать ноги.
2. Если ремонтник - делать деньги.
3. Если вы программист - делать вид, что так было задумано.
Ответить с цитированием
  #11  
Старый 03.03.2008, 13:25
Аватар для The Shadow
The Shadow The Shadow вне форума
Продвинутый
 
Регистрация: 11.06.2007
Адрес: Уфа, Россия
Сообщения: 793
Репутация: 35
По умолчанию

Я вот посмотрел, если использовать TCPServer то соединяется нормально, но я не могу понять, как узнать когда клиент отключился, потому что цикл
Код:
while ClientSocket.Connected do
...
повторяется бесконечно, даже если клиент уже отключен.
Что не так?
---
Кажется и TCPServer не работает...
__________________
Что делать, когда сломался комп:
1. Если вы юзер - делать ноги.
2. Если ремонтник - делать деньги.
3. Если вы программист - делать вид, что так было задумано.

Последний раз редактировалось The Shadow, 03.03.2008 в 13:45.
Ответить с цитированием
  #12  
Старый 03.03.2008, 16:12
Аватар для alikoder
alikoder alikoder вне форума
Начинающий
 
Регистрация: 05.12.2007
Сообщения: 126
Репутация: 10
По умолчанию

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

P.S.

Я впервые столкнулся с этой проблемой когда писал своего трояна и понял что с таким интернетом мне ничего не светит =) кроме как юзать хам. или дрова от неё
Ответить с цитированием
  #13  
Старый 03.03.2008, 17:50
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Цитата:
Сообщение от The Shadow
А если потом распространять эту программу (клиент), то этот Хамачи тоже придется устанавливать?
Делай свой внешний сервер а распространяемые программы будут к нему привязаны (так постепенно свою АСЮ накодишь )
Ответить с цитированием
  #14  
Старый 03.03.2008, 18:13
Аватар для The Shadow
The Shadow The Shadow вне форума
Продвинутый
 
Регистрация: 11.06.2007
Адрес: Уфа, Россия
Сообщения: 793
Репутация: 35
По умолчанию

Цитата:
Сообщение от alikoder
А кто на выделенной линии или с диалапом тому не потребуется.
Интересно... У меня выделенная линия, но подключиться к серверу могу только я со своего компа.
__________________
Что делать, когда сломался комп:
1. Если вы юзер - делать ноги.
2. Если ремонтник - делать деньги.
3. Если вы программист - делать вид, что так было задумано.
Ответить с цитированием
  #15  
Старый 03.03.2008, 18:32
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Да неважно выделенка или АДСЛ
посмотрите на IP на компе и IP (свой) в нете
у провайдера тысячи клиентов (внутренних IP) и десяток или сотня внешних
А между ними NAT
он транслирует внутренние адреса во внешние и при ответах обратно при исходящих соединениях (динамическое сопоставление), а на входящие правила трансляции отсутствуют и он входящие пакеты отбрасывает.
Посмотрите на дополнительные услуги провайдера.
Если предоставляется выделеный (фиксированный) внешний IP то по этой услуге он вас привяжет к конкретному адресу интернета и сделает статическое сопоставление после чего входящий траф на этот внешний адрес будет транслироваться на ваш внутренний тоесть к вам на комп.
(на сколько помню - гдето так )
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:46.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter