![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#21
|
|
Пользователь ![]() ![]() Группа: Posters Сообщений: 116 Регистрация: 22.5.2006 Из: Чебоксары Пользователь №: 616 ![]() |
SiMM, а вот не говорил бы ты намеками, и не возникало бы у тебя сомнений, что их у тебя поняли.
LLeSS, как ты спрашиваешь, так тебе и отвечают. Все равно надо будет что-то туда посылать и проверять результат. Если там Quake, то попробуй так (тут PHP 4.2+): Код function getvalue($srv_value, $srv_data)
{ $srv_value = array_search ($srv_value, $srv_data); if ($srv_value === false) { return false; } else { return $srv_data[$srv_value+1]; } } function status_quake3($ip, $port) { $result = false; $socket = fsockopen("udp://".$ip, $port, $errno, $errstr, 50); if ($socket === false) { echo "[$errno] - $errstr<br>\n"; } else { socket_set_timeout($socket, 50); fwrite($socket, "\xFF\xFF\xFF\xFFgetstatus\x00"); $s = fread($socket, 2048); if ($s) { $players_info = explode("\n", $s); $game_info = explode("\\", $players_info[1]); $sv_hostname = getvalue("sv_hostname", $game_info); if ($sv_hostname) { echo "$sv_hostname\n"; echo getvalue("g_gametype", $game_info); echo "\n"; echo getvalue("gamename", $game_info); echo "\n"; echo getvalue("version", $game_info); echo "\n"; echo getvalue("mapname", $game_info); echo "\n"; echo getvalue("sv_maxclients", $game_info); echo "\n"; echo getvalue("g_needpass", $game_info); echo "\n"; $result = true; } } } fclose($socket); return $result; } if (status_quake3("127.0.0.1", 27960)) { echo "true\n"; } else { echo "false\n"; } |
|
|
![]()
Сообщение
#22
|
|
Пользователь ![]() ![]() Группа: Posters Сообщений: 116 Регистрация: 22.5.2006 Из: Чебоксары Пользователь №: 616 ![]() |
Посмотрел на 213.24.223.171, в скрипте надо поменять следующие строки:
... $socket = fsockopen("udp://".$ip, $port, $errno, $errstr, 30); ... socket_set_timeout($socket, 3); ... в 19:42 вернуло sv_hostname: Cheboksary q3 OSP server g_gametype: 1 gamename: baseq3 version: Q3 1.32 win-x86 Oct 7 2002 mapname : q3tourney2 sv_maxclients: 20 g_needpass: 0 а в 19:43 sv_hostname: Cheboksary q3 OSP server g_gametype: 1 gamename: version: mapname : sv_maxclients: g_needpass: |
|
|
![]()
Сообщение
#23
|
|
![]() Супер постер ![]() Группа: Global moder Сообщений: 994 Регистрация: 6.12.2005 Из: http://pauk.net.ru/ Пользователь №: 179 ![]() |
спасибо тебе за помощь, думаю с остальными играми надо поступать аналогично и на будущее научится юзать сниферы...
Сообщение отредактировал jay - Sep 2 2006, 22:25 -------------------- |
|
|
![]()
Сообщение
#24
|
|
N.N.G. ![]() ![]() ![]() Группа: Posters Сообщений: 292 Регистрация: 16.10.2005 Пользователь №: 103 ![]() |
сенкс.
|
|
|
![]()
Сообщение
#25
|
|
PAUK-NET.RU TEAM ![]() Группа: Admin Сообщений: 4,715 Регистрация: 11.7.2005 Из: ЮЗР Пользователь №: 3 ![]() |
|
|
|
Гость_mgk_* |
![]()
Сообщение
#26
|
Guests ![]() |
сам столкнулся с такой проблемой...
с играми действительно сложно решить проблему к кажой игре надо писать свой запрос... но со стандартными портами (80,21) все ОК когда включен догда включен 100% правильный ответ правдо написано на perl: $socket = IO::Socket::INET->new(Proto => 'tcp', PeerPort => $port, PeerAddr => $ip_addr); #делаем соединение if($socket) #если оно успешно, то { print ("$ip_addr:$port \n"); print("is open \n"); #сообщаем, что порт открыт } |
|
|
![]()
Сообщение
#27
|
|
PAUK-NET.RU TEAM ![]() Группа: Admin Сообщений: 4,715 Регистрация: 11.7.2005 Из: ЮЗР Пользователь №: 3 ![]() |
|
|
|
Гость_mgk_* |
![]()
Сообщение
#28
|
Guests ![]() |
фишка в том что он и с UDP нармально сканирует... эти порты =) а вот с игровыми портами вилы двойные вылетают.. он их не видит =( к ним надо обращаться шоб они ответили...причем к каждой игре посвойму о чем здесь уже говорили... |
|
|
![]()
Сообщение
#29
|
|
PAUK-NET.RU TEAM ![]() Группа: Admin Сообщений: 4,715 Регистрация: 11.7.2005 Из: ЮЗР Пользователь №: 3 ![]() |
|
|
|
Гость_mgk_* |
![]() ![]()
Сообщение
#30
|
Guests ![]() |
|
|
|
![]()
Сообщение
#31
|
|
Пользователь ![]() ![]() Группа: Posters Сообщений: 116 Регистрация: 22.5.2006 Из: Чебоксары Пользователь №: 616 ![]() |
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 20th June 2025 - 17:17 |