Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2008, 15:54   #1
SeЯgey
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 50
Вопрос Ip адрес сервера в indy

Сказали воспользуйся поиском, а он даже на запрос "ip-адрес" ничего не находит, скинте ссылку или код, как определить ip адресс сервера. Я использую indy idtcpcient and idtcpserver.
Прошу не ругать модераторов!!!
SeЯgey вне форума Ответить с цитированием
Старый 22.05.2008, 16:01   #2
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

127.0.0.1 тоесть localhost... если ты не в сети... И айпишник сетевухи если ты в сети...
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 22.05.2008, 16:15   #3
SeЯgey
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 50
По умолчанию

Я в сети, а сервером может быть любой компьютер, на котором включат серверную часть программы.
P.s. Про localhost знаю.
Меня интересует вот этот метод
"Сервер может рассылать широковещательное сообщение в локальную сеть, сообщая свой IP."
а клиент получает IP сервера и соединяется.

Последний раз редактировалось SeЯgey; 22.05.2008 в 16:18.
SeЯgey вне форума Ответить с цитированием
Старый 22.05.2008, 16:40   #4
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

ты вдумайся что ты написал!!!!!
Цитата:
а клиент получает IP сервера и соединяется.
как сервер может послать сообщение клинту, если клиент не знает АЙПИ сервера, а если это так то как клиент подсоединиться к серверу что бы тот передал ему что либо.

ЭТО АБСУРД. Клиент зарание должен знать АЙПИ сервера иначе мне кажеться никак...
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 22.05.2008, 16:57   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Клиент зарание должен знать АЙПИ сервера иначе мне кажеться никак..
Не факт, вчитайся в пост автора - "Сервер может рассылать широковещательное сообщение в локальную сеть, сообщая свой IP."
TCP-MULTICAST

Кстати в IdUDP есть процедура TIdUDPServer1.Broadcast которая это и делает, а вот для ТСР как это делается я не помню.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.05.2008, 10:01   #6
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

на широковещательный адрес сети.
Пример рассчета:
если на интерфейсе прописан следующий IP:
80.80.80.1/24 (255.255.255.0) , то для его сети (собственно C сеть)
будет
80.80.80.0 - Адрес сети
80.80.80.256 Бродкаст сети
Аналогия с меньшими сетями:
Данные на интерфейсе:
80.80.80.5/30 (255.255.255.252)
для такой сети из 4-х адресов будет:
80.80.80.4 адрес сети
80.80.80.7 адрес бродкаста

по аналогу рассчитывается для всех остальный сетей )
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 23.05.2008, 11:06   #7
SeЯgey
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 50
По умолчанию

адрес сети понял как получать, а бродкаст нет?
А можно пример приема и передачи ip адреса, а то я так не пойму.

Последний раз редактировалось SeЯgey; 23.05.2008 в 11:11.
SeЯgey вне форума Ответить с цитированием
Старый 23.05.2008, 12:37   #8
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Распишу на примере сети из 4-х адресов:
80.80.80.4/30 (255.255.255.252)

80.80.80.4 -адрес сети
80.80.80.5 -адрес, доступный для назначения на интерйфейс
80.80.80.6 -адрес, доступный для назначения на интерйфейс
80.80.80.7 - Адрес бродкаста сети.

Вот собственно и все.
В TCP вам надо просто послать пакет на бродкаст адрес сети и все, соответственно все компььютеры, находящиеся сегменте, к оторому относится бродкаст, получат этот пакет (есть ряд исключений, н оописывать пока смысла нет)
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 23.05.2008, 13:25   #9
SeЯgey
Пользователь
 
Регистрация: 03.04.2008
Сообщений: 50
Хорошо

Можно привести код программы сервера посылки адреса
и прием его клиентом
Просто срочно нужно, так бы сам разбирался, но времени нет.
Квэнди спасибо!!!

Последний раз редактировалось SeЯgey; 23.05.2008 в 13:45.
SeЯgey вне форума Ответить с цитированием
Старый 23.05.2008, 13:45   #10
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Если вам неохота считать самому или писать свои алгоритмы рассчета бродкаст адреса, воспользуйтесь компонентом TIdNetworkCalculator на вкладке Indy/Misc он (на сколько я помню) умеет это.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как обновить indy 9 на indy 10 Пилигрим Компоненты Delphi 16 30.04.2010 10:11
Indy 9 против Indy 10 OrdJONY Свободное общение 2 08.11.2008 20:28
indy v10 [Pr1_Zr4k] Компоненты Delphi 1 21.04.2008 21:42
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39
Атаки на сервера Pblog Обсуждение статей 0 27.05.2007 02:13