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

Вниз

Найти игровые сервера   Найти похожие ветки 

 
hogo   (2002-12-11 07:55) [0]

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


 
Digitman   (2002-12-11 13:30) [1]

а чем, собственно, "игровой" сервер принципиально отличается от "неигрового" ?


 
Serd_hhc   (2002-12-12 02:13) [2]

лучше бы помог парню... а не язвил :(((


 
Друмлин   (2002-12-12 22:52) [3]

клиентом пошли широковещательный запрос (broadcast). как это сделать, на форуме несколько раз упоминалось. сервер, получив этот запрос, отошлет ответ клиенту с необходимой тому инфой.


 
Digitman   (2002-12-14 10:24) [4]


> Serd_hhc


Ты знаешь четкий и конкретный ответ на этот вопрос ? Ну так - помогай !!!
Заодно и меня , "язву", просветишь).. А то ведь по своей серости я думаю, что не существуют никаких "стандартов" на методы обнаружения именно игровых серверов)


 
hogo   (2002-12-15 07:25) [5]

> Serd_hhc


я попробовал сделать как вы советовали,
поставил на форму TIdTCPClient,
там есть функия SendBroadcast и послал на порт 27015 запрос,
ничего не произошло никакого ответа, хотя на соседем компе был запущен CS сервер, может надо определенную строку с запросом посылать?


 
hogo   (2002-12-15 11:17) [6]

поправка я поставил IdUDPClient и процедура Broadcast


 
hogo   (2002-12-15 11:52) [7]

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


 
Anatoly Podgoretsky   (2002-12-15 12:01) [8]

Может не тот порт или сервер не обязан реагировать на твой UDP запрос.


 
hogo   (2002-12-15 14:33) [9]


> Anatoly Podgoretsky © (15.12.02 12:01)
> Может не тот порт или сервер не обязан реагировать на твой
> UDP запрос.

Я беру запускаю сервер Quake1 порт там указывается 26000 на него я и посылаю запрос. Я немножко поковырялся и выяснил, что Quake1 например когда ищет свои сервера в сети посылает многоканальное UDP сообщение 2 раза символ с кодом 128.


 
Digitman   (2002-12-15 15:04) [10]


> просканировать локальную сеть и определить какие игровые
> сервера запущены в ней


Надо же !
Оказывается, игровые сервера - это исключительно Quake-сервер ! Вот так вот) .. Ни больше ни меньше)


 
Anatoly Podgoretsky   (2002-12-15 15:19) [11]

Ну так и ты посылай, но вряд ли дело этим ограничивается


 
DDi   (2002-12-15 18:48) [12]

27015 это Counter-Strike :)


 
hogo   (2002-12-16 14:19) [13]


> Надо же !
> Оказывается, игровые сервера - это исключительно Quake-сервер
> ! Вот так вот) .. Ни больше ни меньше)

это просто пример я привел!


 
Digitman   (2002-12-16 14:44) [14]


> это просто пример я привел!


И что ? Ты считаешь, что протокол инф.обмена у ВСЕХ существующих игровых серверов един ? Такой же как у Quake-сервера ?


 
hogo   (2002-12-17 08:50) [15]


> Digitman © (16.12.02 14:44)
> И что ? Ты считаешь, что протокол инф.обмена у ВСЕХ существующих
> игровых серверов един ? Такой же как у Quake-сервера ?

я где-нибудь это сказал? если сами не разбираетесь нечего критиковать, знаете дайте дельный совет!


 
Digitman   (2002-12-17 08:55) [16]


> определить какие игровые сервера запущены в ней?


Твоя фраза ? Твоя)))

Ответ на это вопрос один - нужно знать порты и протоколы инф.обмена для КАЖДОГО из конкретно интересующих тебя игровых серверов. Единого решения не-су-щест-ву-ет ! Сколько серверов - столько и разничных протоколов/портов, никаких единых соглашений нет и быть не может. Каждый производитель каждого сервера делает это по-своему, реализуя собственную нестандартную логику обмена со "своими" клиентами


 
hogo   (2002-12-17 14:26) [17]


> Digitman © (17.12.02 08:55)
>
> > определить какие игровые сервера запущены в ней?
>
>
> Твоя фраза ? Твоя)))
>
> Ответ на это вопрос один - нужно знать порты и протоколы
> инф.обмена для КАЖДОГО из конкретно интересующих тебя игровых
> серверов. Единого решения не-су-щест-ву-ет ! Сколько серверов
> - столько и разничных протоколов/портов, никаких единых
> соглашений нет и быть не может. Каждый производитель каждого
> сервера делает это по-своему, реализуя собственную нестандартную
> логику обмена со "своими" клиентами

Так бы сразу и ответили, я это понял и сам чуть погодя.
Тогда другой вопрос где раздобыть такую информацию?


 
Digitman   (2002-12-17 14:37) [18]


> где раздобыть такую информацию?


Ну так а я почем знаю ? Игровых серверов-то разнообразных - туева хуча)

ты уж как-нить определись, какие конкретно тебя интересуют, для них и ищи инфу) ... У меня ее нет, не занимаюсь я этим и не интересовало меня это никогда


 
Sha   (2002-12-17 15:41) [19]

2 hogo © (17.12.02 14:26)
На уровне идеи только.
Если знаем слушающий порт и протокол для некоторой игры, то делаем свой эмулятор сервера, который только слушает.
Пускаем игру и смотрим, что она ему шлет.
Потом делаем эмулятор игры и передаем наш пакет. Смотрим,
как откликается сервер.
Повторяем для всех игр :)


 
Anatoly Podgoretsky   (2002-12-17 15:51) [20]

Метод возмущения, весь эффективный


 
Digitman   (2002-12-17 15:52) [21]


> Если знаем .. протокол для некоторой игры



> Пускаем игру и смотрим, что она ему шлет.


А хрена ли там смотреть-то ?) Если заранее протокол известен ?)))))


 
Sha   (2002-12-17 18:13) [22]

2 Anatoly Podgoretsky © (17.12.02 15:51)
Когда нет другого и этот хорош. Тем более проверен - я так один чат колол.

2 Digitman © (17.12.02 15:52)
Протокол это типа UDP или TCP :)


 
Digitman   (2002-12-18 08:28) [23]


> Sha


Это транспортные протоколы нижнего уровня. И не более того.


 
Sha   (2002-12-18 09:28) [24]

Один из них-то я и имел ввиду.
Т.е. сначала по описанию проги или путем скана определяем протокол и порт, а потом делаем, как я писал.


 
Digitman   (2002-12-18 09:50) [25]

>Sha

imho, неблагодарное и дурацкое занятие.
проще найти в сети описание протокола нужного игр.сервера


 
Sha   (2002-12-18 10:03) [26]

Может для игрового сервера это и так, но для других прог - не всегда.
Скажем есть супер наворченный чат. Хотели установить в своей локалке. А написали эмулятор, посмотрели:
1. Пакеты шифруются кое-как.
2. Перехваченный пакет можно дублировать миллион раз.
3. Можно слать от чужого имени.
4. И т.д. и т.п.
Такую инфу не возьмешь в инете и не получишь только анализом дизассемблера или отладчиком.


 
Digitman   (2002-12-18 10:10) [27]


> Sha


Был бы смысл и оправданная необходимость взлома - все можно сделать)
А без смысла - просто дурь.

Тот же "навороченный чат" проще будет самому написать, нежели париться с анализом "чужого" протокола, пусть даже и не слишком сложного


 
Sha   (2002-12-18 10:13) [28]

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


 
Sha   (2002-12-18 10:16) [29]

> Digitman © (18.12.02 10:10)
Так и делаю. Компонентик почти готов.


 
Digitman   (2002-12-18 10:54) [30]


> Sha



> Нужна всего одна первая команда - поиск, которую легко перехватить
> и сэмулировать.


Глупости. Кто тебе сказал, что handshaking для всех существующих игр.серверов состоит из какой-то там "одной первой команды" ?
Тем более - "поиск" ? Клиент знает порт, знает протокол (например, TCP), осуществляет коннект. Все ! Если коннект успешен, то сервер уже найден ! Кого искать-то еще ?) Далее на "театральную сцену" вступает логика handshacking"а между клиентом и сервером, которые до этого момента ничего не знают друг о друге - они просто "сервер" и "клиент". ИГРОВЫМ сервером и ИГРОВЫМ клиентом они станут только после успешного завершения handshacking"а. Иначе сервер разрывает соединение.


 
Sha   (2002-12-18 11:45) [31]

> Digitman © (18.12.02 10:54)
Повторяемся... Это я про дурацкое занятие, просто дурь и глупости. Все это уже поняли, поняли, поняли...
На мой взгляд, никакое получение знаний и накопление опыта никогда не будет просто дурью. Любой человек сам располагает своим временем и решает, чем ему стоит заниматься.

По существу. Должно быть очевидно, что поиск у каждой игры свой, в частности, это может быть и UDP-запрос и TCP-коннект.


 
Digitman   (2002-12-18 11:51) [32]


> Sha


Совершенно верно)


 
Sha   (2002-12-18 11:56) [33]

> Digitman © (18.12.02 10:54)
> Кто тебе сказал, что handshaking для всех существующих
> игр.серверов состоит из какой-то там "одной первой команды" ?

Это ты сказал :))))))))))))))))))))


 
Digitman   (2002-12-18 12:07) [34]

>Sha


> Нужна всего одна первая команда - поиск


Не твоя ль фраза ?) Как это понимать в сопоставлении с заранее неизвестной логикой handshaking"а ?

Что за "первая команда" такая ? Кто кому командует ? Почему - "одна" ?


 
Sha   (2002-12-18 12:18) [35]

2 Digitman © (18.12.02 12:07)

Цитирую себя полностью:

> Ну и потом, чтобы найти игровой сервер, весь протокол не нужен.
> Нужна всего одна первая команда - поиск, которую легко перехватить и сэмулировать.

Т.е. чтобы найти ОДИН сервер надо это все проделать.

Сопоставь это с предыдущим моим постом:

> Если знаем слушающий порт и протокол для некоторой игры, то
> делаем свой эмулятор сервера, который только слушает.
> Пускаем игру и смотрим, что она ему шлет.
> Потом делаем эмулятор игры и передаем наш пакет. Смотрим,
> как откликается сервер.
> Повторяем для всех игр :)

и тебе станет очевидным донельзя: СВОЙ ЭМУЛЯТОР ДЛЯ КАЖДОГО СЕРВЕРА.

Если, конечно, не пытаться этого не замечать специально и не считать себя здесь самым-самым :)


 
Digitman   (2002-12-18 12:48) [36]

>Sha

ты б со своей завидной энергией лучше б взялся объяснить автору, что, скажем, для определения наличия такого-то конкретного game-сервиса на таком-то хосте клиенту этого сервиса нужно, скажем, выполнить tcp-коннект к некоему ожидаемому порту, послать "А", получить в ответ "В" - и это будет единственным достоверным фактом доступности интересующего game-сервиса на интересующем хосте. Все прочие варианты д.б. интерпретированы как отриц.результат))



 
Sha   (2002-12-18 12:59) [37]

Можно я "лучше возьмусь" пообедать? А то вся энергия уходит на то, чтоб отбиваться, хотя хотел как раз "объяснить автору". А тут еще на меня ребята наседают, им до обеда важно знать твое мнение, "Скока точно эмуляторов игры делать - одного хватит, или как?"


 
Digitman   (2002-12-18 13:09) [38]


> им до обеда важно знать твое мнение


До обеда у меня мнения нет) ... так шо - нехай после обеда заходят)))


> "Скока точно эмуляторов игры делать - одного хватит, или
> как?"


А как угодно !)

можно и один, можно "или как") ... все от фантазии зависит !)


 
Sha   (2002-12-18 13:14) [39]

Мы так и думали, так сделаем :)
Приятного аппетита!


 
hogo   (2002-12-18 14:24) [40]

Всем спасибо за ваши мнения кое что я для сеюъбы уяснил. :)



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

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

Наверх




Память: 0.54 MB
Время: 0.011 c
14-29084
Шишкин Илья
2003-01-24 21:23
2003.02.10
Помогите найти прогу (или компонент)


1-28750
Fvv
2003-01-31 10:25
2003.02.10
DragAndDrop из внешних програм


1-28861
Скиф
2003-01-30 14:08
2003.02.10
Поиск строки в ini-файле


3-28688
Ihor Osov'yak
2003-01-24 03:03
2003.02.10
Сервис + созданный в рантайме TADOConnection -> проблема с


8-28942
Fredericco
2002-10-30 12:27
2003.02.10
DSPack 1.05 и DirectX - наверно у меня руки кривые :-)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский