Покинул форум
Сообщений всего: 223
Дата рег-ции: Апр. 2009 Откуда: Пермь
Помог: 0 раз(а)
Здравствуйте, возможно ли как то подсчитать сколько времени порт закрыт ?
Это надо для статистики на сайте.
Informator
Отправлено: 09 Апреля, 2010 - 14:50:45
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Апр. 2010
Помог: 0 раз(а)
Трудно будет.....
ну если сделать скрипт и он будет каждую секунду обновляться - то да
JustUserR
Отправлено: 09 Апреля, 2010 - 15:00:40
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Платинум пишет:
Здравствуйте, возможно ли как то подсчитать сколько времени порт закрыт ?
А какой порт локальный или удаленный - и по какому протоколу? Если TCP то придется делать ваш PHP-скрипт в виде deamon-а который будет либо обращаться к порту либо локально проверять netstat -l к примеру Если же порт UPD то можно проверить только если он закрыт когда придет сообщение об ошбке по ICMP
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Платинум
Отправлено: 09 Апреля, 2010 - 15:34:02
Частый гость
Покинул форум
Сообщений всего: 223
Дата рег-ции: Апр. 2009 Откуда: Пермь
Помог: 0 раз(а)
Все, что знаю:
Порт: 7777 (игровой)
На удаленном сервере.
JustUserR
Отправлено: 09 Апреля, 2010 - 17:05:52
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Платинум пишет:
Все, что знаю: Порт: 7777 (игровой) На удаленном сервере.
То что порт игровой это не совсем хорошо - потому что многие сетевые игры используют обмен датаграммами по протоколу UDP - это делается чтобы слать информацию в режиме реального времени и чтобы пара застрявших пакетов (Котрые на данный момент уже и не нужны не затормозило всю остальную передачу
Единственный способ проверять открытость UDP - это проверять отсутствие сообщений об ошбике по ICMP при уверенности что ваша датаграмма дошела до адресата К примеру заставить прислать удаленный сервер вам UDP-датаграмму обратно просто не получится - потому что вам по сути придется эмулировать игровой клиент - тут не получится простоей соединения как по TCP
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Платинум
Отправлено: 09 Апреля, 2010 - 17:30:21
Частый гость
Покинул форум
Сообщений всего: 223
Дата рег-ции: Апр. 2009 Откуда: Пермь
Помог: 0 раз(а)
Тоесть как я понял с помошью php - это не сделать ?
Если же это не так, то можете подсказать как начать писать скрипт ?
Informator
Отправлено: 09 Апреля, 2010 - 17:53:01
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Апр. 2010
Помог: 0 раз(а)
а что за игровой сервер ? (какой игры)
JustUserR
Отправлено: 09 Апреля, 2010 - 19:28:55
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Платинум пишет:
Тоесть как я понял с помошью php - это не сделать ?
Обычными средставами работы с sockets это простым методом никак нельзя не сделать - по вышеупомянутой причине особенности протокола UDP Как я уже упоминал есть два способа решение данной проблемы - первый это отправка датаграмм на нужный порт и ожидание ошибки по ICMP и если ошибки не пришло то порт скорее всего открыт - иначе закрыт Второй способ это пытаться эмулировать соединение игрового клиента и ожидать встречную датаграмму - но для этого придется иметь клиент данной сетевой игры и перехватывать соответствующие датаграммы для раскрытия протокола обмена
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.