MyDC.ru _ Служебные скрипты [PtokaX] _ User Mode Fixer
Автор: Enyby 15.1.2012, 20:02
Название скрипта: User Mode Fixer Версия скрипта: 2.05 Платформа: PtokaX Версия API: API2 Автор: Enyby Автор идеи: http://mydc.ru/index.html?showtopic=5097&view=findpost&p=41695
Библиотека: Для работы скрипта требуется библиотека http://mydc.ru/topic43.html
Описание: Скрипт предназначен для исправления режима подключения пользователей. Подменяет нерабочий актив на пассив в поиске и запросах на соединение.
Возможности скрипта: При подключении нового пользователя, если он актив, то проверяется доступность порта для соединения. Если порт не доступен, то хаб переводит клиента в режим переопределенного пассива. В этом режиме поисковые команды преобразуются в пассивные, а CTM в RCTM. При включении режима исправлений IP адресов и ников, скрипт исправляет команды с неверными данными. DDoS'еры получают DDoS на свой адрес, а обычные пользователи могут искать и качать даже с неверным внешним IP адресом и/или ненастроенном активе. Правда только как пассивы.
Дополнительная информация:
Возможно будут наблюдаться приличные тормоза хаба, сразу после включения и после входа большого числа пользователей единовременно. Большого числа пользователей в активном режиме. Если все в пассиве, то тормозов не будет. Начиная с версии 1.06 с этим проблем нет.
Также возможны глюки при входе более чем 255 активных пользователей одновременно. Если будет потребность в этом скрипте на крупных хабах - перепишу на использование очереди с пулом сокетов, в этом случае проблем быть не должно. Начиная с версии 1.06 с этим проблем нет.
Скрипт игнорирует команды расширений NMDC протокола: http://mydc.ru/topic5095.html и http://mydc.ru/topic5095.html. Если включено исправление IP и ника в командах, то они будут исправлены и в командах указанных расширений.
Совместимость с другими скриптами:
Совместим со скриптами фильтрации поиска. Такие скрипты должны быть выше в списке скриптов, чем данный скрипт. Фильтрация поиска должна осуществляться запретом обработки команд поиска.
Совместим со скриптами запрещающими соединение пользователей (команды ConnectToMe и RevConnectToMe). Такие скрипты должны быть выше в списке скриптов, чем данный скрипт.
Частично совместим со скриптами использующими бота хаба как пассивного клиента (подключение через RevConnectToMe к боту хаба). Для работы с такими скриптами потребуется указать использование отдельного бота в скрипте (sBotName = "UserModeFixer").
Частично совместим со скриптами, которые подменяют MyINFO. Совместим только при bFixMyINFO = false.
Несовместим со скриптами, которые подменяют или самостоятельно обрабатывают команды соединения пользователей (ConnectToMe и RevConnectToMe). Данные команды обработаны этим скриптом не будут. Никаких ошибок не будет, но необработанные команды могут работать неверно.
Несовместим со скриптами подменяющими поиск или же которые сами организуют поиск. Эти команды поиска не будут обработаны скриптом. Никаких ошибок не будет, но необработанные команды могут работать неверно.
TODO list
Сделать проверку на наличие на порту нужного DC клиента, так как там может быть случайно указан какой-то другой открытый порт. Увы, сокеты в луа не позволяют это выполнить с приемлимыми затратами.
Сделать проверку активных (по присылаемому тэгу) клиентов не только при входе на хаб, но и периодически во время нахождения на хабе, так как за это время проброс портов может измениться. Да и не только он. Функция опциональна и должна быть отключаема. По дефолту включена. Интервал проверки должен задаваться отдельно. По умолчанию 1 час.
Сделать проверку размера очереди. Если значение больше некоторого предела, то уведомлять операторов, возможно утечка в пуле или еще какие-то проблемы.
История версий
v2.05:
Реализована обработка отключения пользователей без вызова UserDisconnected.
v2.04:
Доработан отладочный вывод.
v2.03:
Добавлена дополнительная проверка для одного плавающего бага.
v2.02:
Доработан вывод ошибок
Добавлены дополнительные проверки
Доработана статистика
v2.01:
Исправлены дефолтные настройки
v2.00:
Ядро скрипта переписано заново
Своя система учета числа пользователей
Экономное расходование ресурсов пула
v1.13:
Улучшена и доработана статистика.
Исправлен баг, связанный с учетом отключений пользователей разных профилей
Добавлена опция отключения валидации через функцию PtokaX
v1.12:
Улучшена и доработана статистика.
v1.11:
Улучшена и доработана статистика.
Улучшена и доработана быстрая отладка.
Добавлена возможность использования пользовательского меню.
Добавлена возможность исправления тэгов пользователей.
v1.10:
Улучшена и доработана статистика.
Меню сделано зависимым от активных настроек скрипта.
v1.09:
Исправлена ошибка целостности.
Добавлено исправление целостности при ее нарушении.
Добавлена быстрая отладка.
Добавлена генерация репортов при валидации. Теперь репорты приходят адекватно.
Поддержка изменения режима подключения "на лету", без переподключения к хабу.
v1.08:
Переработан вывод статистики.
Добавлена опция валидации целостности.
v1.07:
Исправлен подсчет занятого пула.
v1.06:
Добавлена возможность исправления IP адресов и ников в командах.
Добавлена очередь с пулом.
Реализован мягкий старт скрипта. Никаких подвисаний на старте.
Добавлена возможность указания отдельного бота для скрипта.
Добавлена возможность ведения отладочного лога.
v1.05:
Исправлена ошибка двойной отсылки статистики.
Добавлены данные про хаб и ОС в статистику.
v1.04:
Исправлена ошибка в очищении таблицы сокетов.
Добавлена статистика.
v1.03:
Добавлена возможность игнорирования несовпадения IP адресов. Если она не включена - будет выкидывать с хаба с соответствующим сообщением.
v1.02:
Убрана возможность исправления IP. Потому как это только дополнительная нагрузка на хаб. Для работы этой опции нужно отключить встроенную защиту хаба от DDoS, что крайне опасно.
v1.01:
Добавлены проверки на предмет существования адресата CTM на хабе.
Добавлена возможность исправления CTM команд с неверным IP адресом. Полезна как дополнительная защита от DDoS и от кривых настроек активного режима у клиентов.
Добавлена возможность включить игнорирование несовпадения ников в CTM команде.
Предыдущие версии выложены, исключительно, для ознакомления с их исходным кодом. Это связано с тем, что я могу убрать из последней версии какой-то функционал, который вам может пригодится при написании своих скриптов. Если же вас интересует использование скрипта на своем хабе, настоятельно рекомендую использовать только последнюю версию. В старых версиях могут быть ошибки.
P. S. Если у вас нет регистрации на этом форуме, а значит вы не можете качать вложения, то скачать этот скрипт, равно как и другие, можно по ссылке http://mydc.ru/r/?http://inethub.olvi.net.ua/ftp/pub/Soft/Servers/DC%2B%2B/LUA%20scripts/Enyby/http://mydc.ru/r/?ftp://inethub.olvi.net.ua/pub/Soft/Servers/DC++/LUA%20scripts/Enyby/.
Автор: Ameet 16.1.2012, 13:02
Хотел бы попробовать данный скрипт но у меня хаб намного больше, можно че-то для 3+к онлайна?
Автор: Enyby 16.1.2012, 13:15
На данный момент ситуация такая - при старте он проверяет всех пользователей сразу. Если их много, могут быть проблемы с одновременным подключением ко всем. Во-первых, это много коннектов, а, во-вторых, в реализации на windows socket_select используется битовые значения одного байта, а их 256. Но по сути ничего страшного не произойдет, может просто определит кому-то пассив принудительно. Можно попробовать таймаут увеличить. Например, с 3 секунд до 15-20. После старта может казаться что хаб завис, это нормально, оно пройдет. Сейчас неблокирующие сокеты. В случае блокирующих, подобные эффекты наблюдались на хабе с 160 пользователями. На данный момент скрипт работает на моем хабе, адрес которого в подписи. Сутки прошли - полет нормальный. Основная проблема скрипта - старт. Если не хотите тяжелого старта, закомментируйте всю функцию OnStartup, тогда скрипт будет работать только для нововошедших пользователей. После старта скрипт работает нормально и там проблем быть не должно.
Если совем будет туго, то я уже говорил, что перепишу на пул сокетов с очередью.
UPD: Даже если на старте определит как переопределенный пассив, достаточно будет перезайти этим пользователям и ситуация нормализуется.
Еще одно. Скрипт потребляет неплохо память. На моем хабе это порядка 600 кб для 150 пользователей. Сейчас 130 кб на 116 человек. Прямой корреляции между числом пользователей и потреблением памяти не должно быть, скорее между числом переопределенных пассивов + нововошедших пользователей. Такж может влиять активность пользователей с переопределенным пассивом, так как скрипт берет на себя часть функций хаба.
В будущем прикручу статистику, чтобы можно было смотреть сколько человек с каким режимом присутствует на хабе.
Автор: Ksan 16.1.2012, 13:50
Enyby
Цитата
Если не хотите тяжелого старта, закомментируйте всю функцию OnStartup, тогда скрипт будет работать только для нововошедших пользователей.
Я думаю, это надо закомментить заранее в твоём скрипте уже в первом сообщении, или вовсе убрать и перезалить. Ведь особой необходимости нет, чтоб из-за этого скрипта перезапускать хаб, а при рестарте по иным причинам так и так всё пойдёт т ак, как при наличии функции OnStartup.
Цитата
Скрипт потребляет неплохо память. На моем хабе это порядка 600 кб для 150 пользователей. Сейчас 130 кб на 116 человек.
Это фигня, а не память, у меня стоит скрипт, занимающий несколько десятков мб памяти (UserInfoF12_api2.lua). И ничего, хабу нипочём.
Цитата
[17:51:28] <MemBot> UserInfoF12_api2.lua = 57172.27 Kb.
Автор: Enyby 16.1.2012, 13:59
Это все мои догадки. Если действительно все будет так как я описал, кому надо - отключат. В следующей версии переделаю на пул. Больших хабов мало, а маленьких много. С маленькими все работает нормально.
Автор: LoT 16.1.2012, 19:56
Хм, вроде бы, работает, спасибо, полезная штука. Потестируем.
P.S. Еще бы тэг при этом менялся ;), а то смотришь список, видишь "активного" пользователя, а оно на самом деле... но это мелочи жизни)...
Автор: Enyby 17.1.2012, 2:00
Я думал над этим. Но это лишние проблемы. Во-первых, нагрузка. Во-вторых, нельзя отменить отсылку $MyInfo, можно только отослать второй раз исправленный вариант. В-третих, скрипт станет резко несовместимым с любыми скриптами изменяющими $MyInfo.
Но если так нужно и вас устраивает - могу сделать, никаких особых проблем нет.
PS Если у вас установлены скрипты которые фильтруют поиск, то они должны быть выше этого скрипта, иначе они работать не будут. Но тут тоже есть ограничения. Данные скрипты должны или запрещать обработку поиска, вернув true в функции или пропускать для дальнейшей обработки. Если же происходит поиск посредством скрипта в обход обработки хаба, то такой поиск не будет перехвачен и обработан этим скриптом. Тоже самое касается и комманд ConnectToMe (CTM) и RevConnectToMe (RCTM). Насчет последней есть еще одно дополнение. Все выше стоящие скрипты не должны запрещать или обрабатывать RCTM для бота хаба. Если у вас есть такие скрипты, то вам потребуется добавить отдельного бота для моего скрипта и указать его ник. Это довольно просто сделать. Если кому-то будет нужно - расскажу как.
ADD: Хотелось бы видеть отзывы от тех кто поставил скрипт, особенно касательно хабов с большим онлайном. Более 256 пользователей онлайн на момент старта.
ADD: Артём провел тест, за что ему спасибо. 1243 пользователя. Потребление памяти - 739 кб. Тормозов нет. Глюков тоже или же не замечены (возможно какой-то рабочий актив и переопределило в пассив, но этого точно сказать нельзя). Тестировалось на ОС Windows.
Автор: Littlemuk 17.1.2012, 7:28
Сужу по своей машине. Я за роутером. Каждый раз скрипт меня определял либо активом, либо пассивом. Это при запуске скрипта. Кстати, у меня онлайн 300. При саааамом первом запуске хаб "подвис" на пару секунд. Последующие перезапуски скрипта - все ок. ЗЫ Как можно отключить сообщение бота в чат?
Автор: Enyby 17.1.2012, 9:23
Отключить можно, причем достаточно просто. Строка 158:
Но на самом деле, эти сообщения нормальны. Они приходят только при входе пользователя на хаб или при перезапуске скрипта. В штатной ситуации он не должен перезапускаться по 100 раз на дню. Поэтому это сообщение будет у пользователя один раз за все время его каждого посещения. Это сообщение сделано для знающих, чтобы они видя, что у них переопределенный пассив, могли настроить у себя нормально актив.
ADD: Подправил информацию в первом посте.
ADD: Littlemuk, если у тебя скачет определение пассива и актива, то это плохо. Скрипт видимо глючит. Но это только в моменты его рестарта. В дальнейшем крайне маловероятно, что на хаб войдет более 256 активных пользователей одновременно. Это будет исправлено в следующей верссии (5 пункт TODO).
ADD: Littlemuk, а какая у тебя OS? Windows?
Автор: Kingston 17.1.2012, 10:32
Linux Debian, Ptokax 0.4.1.2, онлайн 300+ При запуске: секунд 20 подвис, потом сообщение: пассив (переопределен), при этом поиск не работает. После перезахода Ваш режим: пассив (переопределен), но поиск уже работает. Это у одного клиента, у другого клиента, с этой же сети, поиск не работает.
Автор: Enyby 17.1.2012, 10:35
Других скриптов, модифицирующих поиск нет? Странно, что поиск не работает. Он должен в любом случае работать, даже если детекция режима прошла неверно. Сколько раз проверяли поиск?
Автор: Littlemuk 17.1.2012, 11:10
Винда 7ка х64 Народ начал жаловаться на отсутствие поиска. Жалобы от пассивов. Других скриптов модифицирующих поиск нет.
Автор: Enyby 17.1.2012, 11:43
Крайне странно. В работу обычных пассивов скрипт не вмешивается. Хаб интернет? Если да, то сообщите адрес, я зайду потестирую.
У меня сейчас включен скрипт (в подписи адрес хаба), только что зашел полным пассивом, написало что у меня обычный пассив, не переопределенный, и поиск работает.
Автор: Kingston 17.1.2012, 12:24
Enyby, несколько раз проверяли. с другой сети и с инета пользователи. у одного ищет после перезахода, у кого то без перезахода. а режим пишется пассив (переопределен), у тех с кто проверял. есть скрипт NetworkSeparation.lua с заданными диапазонами сетей, но он не влияет на поиск в пределах одной сети, и не мешает скрипту, наверное.
Автор: Enyby 17.1.2012, 12:31
Вот это "наверное", очень под вопросом.
Посмотрел код NetworkSeparation_v1.3.1___API_2_____by_Nickolya___.lua - конфликтов не вижу. Правда скрипт может блокировать поисковые результаты пассивного поиска, если включено разделение сетей. Так что лучше его выключать на обкатке, чтобы было яснее, какой из скриптов виноват.
Автор: Kingston 17.1.2012, 12:59
Проблема оказалась в нем, сейчас все работает, определяется режим верно, и поиск работает. Хороший скрипт! Все забывал показать сколько памяти кушает скрипт: UserModeFixer_v1.03.lua (4621 kB) при этом онлайн 450+
Автор: Enyby 17.1.2012, 13:57
Новая версия 1.04. Теперь есть статистика. У кого какие-то проблемы - включаете расширенную статистику и присылаете ее сюда. Также приветствуется расширенная статистика с крупных хабов, это поможет улучшить скрипт в дальнейшем.
Статистика включает все необходимое, включая настройки скрипта и использование ним памяти, так что сообщать эти данные уже не обязательно.
Что-то все разом ринулись очищать статистику, перед тем как ее сюда постить. Это совершенно бесполезное занятие. Во-первых, очистка ничего не делает, если не включена расширенная статистика, а, во-вторых, очистка сбрасывает только инкрементные параметры, например число отосланных команд того или иного типа.
Так что лучше не очищайте.
Damaks, насчет секции OnStartup - зря закомментировал. Скрипт будет работать только для нововошедших пользователей, эдакий мягкий старт. Ну смотри сам.
Просьба ко всем - если снимаете статистику, снимайте ее хотя бы через минут 5-10 после старта скрипта, поскольку до этого времени, в особенности в течение первой минуты, от нее пользы мало.
И да, длинные простыни лучше прятать под спойлер.
ADD: Это список висящих коннектов, к активным пользователям. Хаб пытается ко всем ним подключиться. А всякие "tcp{client}: 03C8101A" это признак того, что сокет совсем сильно умер и там связь разорвана уже. Такая простыня возникла, как раз потому, что статистика была снята сразу после старта скрипта.
Автор: Damaks 17.1.2012, 16:51
Цитата(Enyby @ 17.1.2012, 17:46)
Damaks, насчет секции OnStartup - зря закомментировал. Скрипт будет работать только для нововошедших пользователей, эдакий мягкий старт. Ну смотри сам
Не хочу, чтобы хаб подвисал. Часа работы для статистики хватит, чтобы понять как ведёт себя скрипт.
Не знаю, в скрипте ли дело, но когда хаб с включённым скриптом набрал 1300+ юзеров, сотню быстренько выкинуло с хаба, потом опять до 1300 набрал минут за 10.
Автор: Enyby 17.1.2012, 17:47
Хаб подвисает только на время старта скрипта. И то если много юзеров онлайн. Но на нет и суда нет. Ждите версию с пулом сокетов - там все нормально с этим будет.
ADD: Скрипт увеличивает нагрузку на хаб и траффик, так как теперь все могут искать и зачастую через пассивный поиск.
ADD: Тут сложились некотрые непонятки со сбором статистики. Разъясню, чтобы их не было. Итак, статистика может быть собрана согласно двум сценариям. Первый. Вы хотите мне помочь отладить скрипт. Ваши действия:
Стартуете скрипт.
Через 5-10 минут через меню хаба вызываете статистику НЕ ОЧИЩАЯ ее.
Присылаете мне.
Второй. Вы нашли какую-то ошибку. Например, какой-то файл находит, когда скрипт остановлен и не находит когда он запущен, а пользователь с этим файлом по прежнему на хабе. Ваши действия:
Стартуете скрипт.
Через 5-10 минут через меню хаба вызываете очистку статистики.
Сразу за этим выполняете ту команду которая у вас не работает или работает не так. В данном примере это поиск этого файла.
Сразу после того, как вы убедились что команда отработала (например, для поиска, можно подождать минутку), через меню хаба вызываете статистику НЕ ОЧИЩАЯ ее.
Присылаете мне.
Если вы в первом сценарии делали очистку, то это здорово мешает анализировать статистику, в особенности если она была сделана за 15 секунд, то снятия статистики.
Спасибо за понимание.
UPD: И да, разумеется, статистика должна быть расширенной. т. е. в скрипте должно быть "bDetailedStats = true".
Автор: Littlemuk 17.1.2012, 18:26
Цитата(Enyby @ 17.1.2012, 12:43)
Крайне странно. В работу обычных пассивов скрипт не вмешивается. Хаб интернет? Если да, то сообщите адрес, я зайду потестирую.
У меня сейчас включен скрипт (в подписи адрес хаба), только что зашел полным пассивом, написало что у меня обычный пассив, не переопределенный, и поиск работает.
[19:18:26] <•Жжжжжжук•> Ваш IP: 10.213.39.194 Ваш режим: пассив. [19:18:34] *** Отключен [19:18:34] *** Соединение с dchub://dc.astralan.ru ... [19:18:34] *** Соединён [19:18:35] *** Пароль отправлен… [19:18:35] <•Жжжжжжук•> Этот хаб работает под управлением PtokaX DC Hub 0.4.1.2 (Время работы: 4 дней, 15 часов, 42 минут / Юзеры: 258) [19:18:37] <•Жжжжжжук•> Ваш IP: 10.213.39.194 Ваш режим: актив.
Скрипт не рестартовал, просто перезашел. Поставил скрипт v1.05 буду тестить
Автор: Enyby 17.1.2012, 19:48
"актив" после "пассив", вообще быть не может, если не менять настройки клиента. Вот "пассив (переопределен)" и "актив" могут играть в чехарду. Настройки в ДС менялись?
Автор: Littlemuk 17.1.2012, 20:34
Цитата
Настройки в ДС менялись?
Абсолютно ничего не делал. Просто перезашел. Это видно по времени. Заходи, потестишь
Автор: LoT 17.1.2012, 20:46
Потестил слегка. Поставил его вчера вечером, вроде бы работает, но проконтролировать не мог, т.к. на работе был.
Поставил сегодня обновленную версию 1.05. PtokaX 0.4.1.2c Ubuntu Server
1. На момент запуска скрипта онлайн было около 470-480 человек, заметных на глаз тормозов (при старте) не было, но ручаться не буду, т.к. в чате в это время не общались 2. Протестил сам, заходил под разными режимами, каждый раз скрипт определял мой режим корректно, исправлял при случае правильно 3. Поиск в "переопредеоленном" режиме работал, выдача была такая же, как и при "родном" пассиве
MemoryUsage вообще скачет в диапазоне 200-300Кб. В первые минуты запуска равнялся 2400-2800Кб
P.S. Одновременно были запущены скрипты: StatPX 1.06, Ekzekutor 3.0, block_words_4.0 (антимат), NoShareNoDownload (антилич), hub_commands_menu_api2, CollectorMagnets2.3, TriviaMod (игра Викторина), rss (FeedWatch), WhoIs. UserModeFixer был в самом низу списка.
Автор: Enyby 18.1.2012, 13:47
Новая версия 1.06. Шапка обновлена.
ADD: Хотелось бы видеть статистику для крупных хабов. Новая версия как раз заточена под них.
ADD: Возник вопрос по поводу совместимости данного скрипта с http://mydc.ru/topic1432.html. Посмотрел скрипты версии 0.32, конфликтов не вижу. Проблем быть не должно.
Также, поскольку этот скрипт заставляет подключаться хаб к пользователям, могут быть дополнительные сообщения со стороны фаервола. В случае когда на хабе разрешены только входящие соединения, это приведет к переопределению всех активов на пассив. Стоит учитывать этот момент.
Сама по себе проверка на актив пользователя очень проста - хаб пытается подключится к клиенту на порт, указанный в команде подключения. Если попытка не успешна, то считается что это неверно настроенный актив. На самом деле причин можт быть масса и это следует понимать.
UPD: И да, скрипт вирусом не является, ничего противоправного не делает, так что антивирус не должен влиять на его работу. В случае если он у вас совмещен с фаерволом, вам могут быть уведомления от фаервола.
ADD: Нужен текст справки о режимах, что они значат и как их настроить. Если у кого есть какие предложения и мысли - с радостью выслушаю.
ADD: Новая версия 1.07. Шапка обновлена.
В этой версии исправлена ошибка работы с пулом. Была "утечка" ресурса пула, которая могла бы привести к тому, что скрипт перестал бы проверять новых пользователей.
ADD: В режиме FIX для неверных IP адресов скрипт предоставляет дополнительную защиту от DDoS'еров, перенаправляя DDoS на его инициатора. Отключать защиту хаба при этом НЕ НУЖНО.
ADD: Если кому-то хотелось бы увидеть этот скрипт на другой платформе или, может быть, на другом API - оставляйте тут отзывы, постараюсь, по свободе, что-то сделать.
Автор: Saymon21 18.1.2012, 13:55
Цитата
Если кому-то хотелось бы увидеть этот скрипт на другой платформе или, может быть, на другом API - оставляйте тут отзывы, постараюсь, по свободе, что-то сделать.
Предлагаю переписать под русхаб. Сделал бы сам, но других дел море... :(
Автор: Kingston 18.1.2012, 14:03
Debian 6, PtokaX 0.4.1.2, онлайн +500 Через 5-6 минут после запуска.
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
Автор: Enyby 18.1.2012, 17:08
Новая версия 1.08.
Теперь возможно включать валидацию целостности. Не советую включать на боевом хабе и уходить. Если целостность будет нарушена операторы станут каждую секунду получать по 10 репортов об этом. Это отладочная опция, по умолчанию она отключена.
Теперь возможен еще один сценарий снятия статистики при проблемах. Третий. Это сценарий, когда у вас нарушается целостность. последовательность действий:
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
Автор: Enyby 19.1.2012, 2:41
Знаю. 9 версия в разработке.
ADD: Новая версия 1.09.
Автоматически восстанавливается целостность после ее нарушения. Исправлено несколько багов нарушения целостности. Созданы адекватные репорты при ошибках целостности. Теперь они не спамят со скоростью пулемета, хотя такие варианты все равно не исключены (например, если восстановление целостности не удалось). Есть быстрый режим отладки, позволяющий отлаживать скрипт без особых тормозов. Вывод доступен из меню, а также автоматом дописывается в репорты.
ADD: Теперь поддерживается изменение режима "на лету". При этом выдается такое же сообщение как и при входе. Для изменения достаточно изменить настройки клиента и все. Через некоторое время он обновит MyINFO. Если же у пользователя постоянно пишет его режим - надо смотреть что у него с отсылаемым тэгом.
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
[00:58:09] <pozitiv> Ваш IP: **** Ваш режим: пассив (переопределен). а по факту: активный
Автор: Enyby 19.1.2012, 23:49
Перезайди на хаб и сразу после того как тебе напишет твой режим, сними дамп быстрой отладки (пункт "Показать быструю отладку" в меню) и пришли сюда.
Автор: rival 19.1.2012, 23:53
Раскрывающийся текст
49. 172.23.96.48 К@пит;-)шка A Wait CTM timeout
отредактировал
Автор: Enyby 20.1.2012, 0:05
Ты не успел. Варианта два. Тренируйся в скорости снятия дампа или же увеличь iFastDebugHistory до большего значения. Например до 100. Чтобы быстро снять статистику, не ползая курсором по меню, достаточно написать в чат "!UMFShowFastDebug". В логе быстрой отладки должен быть виден твой IP + ник. Ты сразу его увидишь, если у тебя подсвечивается свой ник в чате. Пример, подобного вывода:
Код
20. 192.168.0.0 Enyby A in queue 21. 192.168.0.0 Enyby A RCTM to bot 22. 192.168.0.0 Enyby A Invalid IP in CTM: $ConnectToMe Совесть 82.0.0.0:0| 23. 192.168.0.0 Enyby A Processed CTM to bot: $ConnectToMe Совесть 82.0.0.0:0| [...] 30. 192.168.0.0 Enyby A Connect timeout
ADD: Советую для начала проверить на доступность свой порт руками. Делается это так: В консоли пишем telnet свой_IP порт. Например: telnet 192.168.1.1 7777. потом жмем Энтер. Если висит строка подключения - порт закрыт. Если окно очистилось и курсор мигает - порт открыт. Если все успешно, то все тоже самое делаем на сервере хаба. Если и там все тип топ, то изучаем фаервол на предмет запрета исходящих соединений для хаба. Если и тут все хорошо - ко мне с логом.
Если с телнетом тяжко, то в инете есть масса сервисов для тестирования открытости порта. Например, http://mydc.ru/r/?http://www.yougetsignal.com/tools/open-ports/ или http://mydc.ru/r/?http://www.digitalcoding.com/tools/open-port-check.html
Автор: rival 20.1.2012, 10:40
Раскрывающийся текст
11. 172.23.96.48 К@пит;-)шка A in queue 12. 172.23.96.48 К@пит;-)шка A RCTM to bot 62. 172.25.169.27 [KeepeR]1 A *disconnect user changed mode. from: A to: P $MyINFO $ALL [KeepeR]1 [14]<SharaDC V:r403,M:P,H:4/0/0,S:15>$ $100$$342043082308$| 63. 172.25.169.27 [KeepeR]1 A Fixed disconnected 64. 172.25.169.27 [KeepeR]1 nil clear user mode 65. 172.25.169.27 [KeepeR]1 P connected 66. 172.22.11.15 oldster-cynical A Fix Search: $Search 172.22.11.15:1559 F?T?0?9?TTH:V37B4LKASGFSR53JWITHSLRZTFWV4N7SGABN53I| to: $Search Hub:oldster-cynical F?T?0?9?TTH:V37B4LKASGFSR53JWITHSLRZTFWV4N7SGABN53I| 67. 95.54.182.50 maddog2k A Block CTM to Passive: $ConnectToMe Славич 95.54.182.50:30001| 68. 79.164.39.61 DeLor_CaI_I_Ia A Block CTM to Passive: $ConnectToMe Ифуч 79.164.39.61:5641| 69. 94.181.146.156 Faust A Block CTM to Passive: $ConnectToMe Sony-vaio 94.181.146.156:5275| 70. 128.74.134.117 VikMak A Block CTM to Passive: $ConnectToMe tols-di 128.74.134.117:23809| 71. 46.37.144.64 sabotage A Invalid IP in CTM: $ConnectToMe seek 172.29.75.5:6797| 72. 46.37.144.64 sabotage A Block CTM to Passive: $ConnectToMe seek 172.29.75.5:6797| 73. 172.25.197.16 Never@~X~ A Block CTM to Passive: $ConnectToMe SW2001 172.25.197.16:3027| 74. 81.7.92.14 renius A Fix CTM: $ConnectToMe denismega 81.7.92.14:2157| to: $RevConnectToMe renius denismega| 75. 109.126.39.113 avr-pozdnyak2 A Invalid IP in CTM: $ConnectToMe Ivan1983 172.29.2.43:10033| 76. 109.126.39.113 avr-pozdnyak2 A Fix CTM: $ConnectToMe Ivan1983 172.29.2.43:10033| to: $RevConnectToMe avr-pozdnyak2 Ivan1983| 77. 109.126.30.181 gangren A Invalid IP in CTM: $ConnectToMe Rapid 109.126.58.164:10031| 78. 109.126.30.181 gangren A Fix CTM: $ConnectToMe Rapid 109.126.58.164:10031| to: $RevConnectToMe gangren Rapid| 79. 172.16.194.13 [CATFISH} A Invalid IP in CTM: $ConnectToMe ((HUK)) 95.154.126.162:6469| 80. 172.16.194.13 [CATFISH} A Fix CTM: $ConnectToMe ((HUK)) 95.154.126.162:6469| to: $ConnectToMe ((HUK)) 172.16.194.13:6469| 81. 195.225.158.250 kotista A Fix Search: $Search 195.225.158.250:411 F?T?0?9?TTH:SWU7PHPX5TCIFLPGXGYH63U2TVCZB3MXCVBK7YA| to: $Search Hub:kotista F?T?0?9?TTH:SWU7PHPX5TCIFLPGXGYH63U2TVCZB3MXCVBK7YA| 82. 78.139.74.238 alexsp3860 A Block CTM to Passive: $ConnectToMe Sony-vaio 78.139.74.238:50123| 83. 128.74.134.117 VikMak A Block CTM to Passive: $ConnectToMe ВОВАН-81 128.74.134.117:23809| 84. 128.74.134.117 VikMak A Block CTM to Passive: $ConnectToMe Vatrus 128.74.134.117:23809| 85. 172.21.91.23 Benderan A Block CTM to Passive: $ConnectToMe Veroni4ka 172.21.91.23:4000| 86. 2.94.171.58 [lip]_хед A Fix Search: $Search 2.94.171.58:7964 F?T?0?9?TTH:NGVDSBYKZ54OJMLG7VJRLLFZYC5OP3THVQHXZ5A| to: $Search Hub:[lip]_хед F?T?0?9?TTH:NGVDSBYKZ54OJMLG7VJRLLFZYC5OP3THVQHXZ5A| 87. 188.255.106.144 toxas201 A Fix Search: $Search 188.255.106.144:6044 F?T?0?9?TTH:SVKUCUOTLUED4PGGCSVCNF6PHXF4EOJZOMJFYWA| to: $Search Hub:toxas201 F?T?0?9?TTH:SVKUCUOTLUED4PGGCSVCNF6PHXF4EOJZOMJFYWA| 88. 172.23.96.48 К@пит;-)шка A Wait CTM timeout 89. 172.16.33.80 Gori A Block CTM to Passive: $ConnectToMe z96z 172.16.33.80:45350| 90. 46.37.128.140 nnnnnn2339ll333 A Block CTM to Passive: $ConnectToMe [KeepeR]1 46.37.128.140:4027| 91. 109.195.185.33 [alt][rti]serba A Block CTM to Passive: $ConnectToMe Shura-Maior 109.195.185.33:7999| 92. 2.94.189.58 DiMoN999999 A Block CTM to Passive: $ConnectToMe djslash 2.94.189.58:2482| 93. 128.74.130.41 Skiff A Block CTM to Passive: $ConnectToMe quest1605 128.74.130.41:2000| 94. 188.134.46.97 Renn A Fix Search: $Search 10.184.120.43:1197 F?T?0?7?Универ| to: $Search Hub:Renn F?T?0?7?Универ| 95. 172.25.33.13 Sanchez2000 A Block CTM to Passive: $ConnectToMe Бабочка 172.25.33.13:5525| 96. 172.16.41.122 dimas A Invalid IP in CTM: $ConnectToMe dimas1 10.254.254.43:3151| 97. 172.16.41.122 dimas A Block CTM to Passive: $ConnectToMe dimas1 10.254.254.43:3151| 98. 172.16.41.122 dimas1 A Invalid IP in CTM: $ConnectToMe dimas 10.254.254.43:3151| 99. 172.16.41.122 dimas1 A Block CTM to Passive: $ConnectToMe dimas 10.254.254.43:3151| 100. 88.222.220.151 akras A Fix Search: $Search 88.222.220.151:2158 F?T?0?9?TTH:7UWM2LC6GT6N6C5M6NOMP752STR2O7BBLMUDAFI| to: $Search Hub:akras F?T?0?9?
курсор мигает - порт открыт(для TCP- порт клиента dc++) а когда нахожусь на хабе,и переподключаю скрипт,пишет верно: актив
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
танцы с разрешениями-запретами в фаерволе не помогла,думаю причина в кол-ве юзеров Сейчас: 905
Автор: Enyby 20.1.2012, 11:18
rival, если речь идет о пользователе "К@пит;-)шка", то он не ответил командой CTM на RCTM своевременно. Варианта тут два, или он не ответил вообще или же ответил позже таймаута iTimeout в 15 секунд. В первом случае проблема на стороне клиента и хаб тут ничего сделать не может. Во втором случае можно попробовать увеличить таймаут. Хотя, согласно статистике, число несвоевременных CTM запросов к боту очень мало: +OtherCTMForBot = 3. Это может говорить о двух вещах - такая проблема только у этого пользователя или же что верен первый вариант. Поставь версию 1.10 и пришли заново статисику, после входа на хаб, там будут дополнительные параметры.
Вышла версия 1.10. Ничего критичного, только улучшения статистики. Тем не менее весьма советую, так как намного легче разбираться что да почему.
Автор: Ksan 20.1.2012, 11:39
Enyby, насколько я знаю, у юзера К@пит;-)шка интернет тормозным бывает часто..и очень тормозным.
Автор: rival 20.1.2012, 13:40
local iCheckInterval = 500 пока что решило проблему,тестим далее )) остальные настройки по-дефолту
Автор: Enyby 21.1.2012, 2:09
Ok. Подыму дефолт до 60 секунд.
ADD: Кстати. Если на хабе присутствуют активные пользователи с неверными IP и включен режим исправлений команд, то при отключении скрипта (именно отключении, при перезапуске будет все нормально) их всех выкинет защита хаба от DDoS после первой же неверной команды. Так что после отключения скрипта число пользователей может уменьшаться.
1. При входе на хаб мне пишет "Ваш IP: xxx.xxx.xxx.xxx Ваш режим: xxxxxxxxx.". Что это такое? Хаб сообщает вам ваши настройки текущего подключения, чтобы вы их видели, знали и могли исправить, если они не соответствуют тем, какими бы вы их хотели видеть.
2. Это сообщение кто-нибудь кроме меня видит? Нет. Данное сообщение отправлено лично вам. Все остальные пользователи получают подобные сообщения, но со своими данными.
3. В сообщении указан не мой IP адрес! Мой IP совсем другой! Как такое может быть и что с этим делать? В сообщении указан IP адрес, с которым вы вошли на хаб. Если он не соответствует IP адресу вашего компьютера, то вы находитесь за NAT или же используете прокси. Делать ничего не нужно, все работает нормально.
4. Что означает "режим"? Режим - это вид вашего подключения в сеть DC++. Он бывает двух видов "актив" и "пассив". В первом случае к вам могут присоединяться пользователи, а во втором случае - нет. Лучшим является режим актива, поскольку вы можете качать со всех пользователей хаба. В пассиве же - только с тех пользователей, кто в активе. Так же в активном режиме лучше работает поиск.
5. Хорошо, режимов два, но в сообщении написано "пассив (переопределен)", как это понимать? Активный режим предъявляет некоторые требования к пользователю, а именно: - у него должен быть открыт порт для прямого подключения к нему других клиентов; - IP адрес и порт должны быть доступны для подключения всех остальных пользователей. Хаб выполняет, чтобы эти два пункта выполнялись для пользователей в активном режиме. Если проверка показала, что хотя бы один пункт не выполняется, то хаб сам переводит пользователя в пассивный режим.
6. Но пассивный режим это же плохо! Зачем тогда делать из активов пассивов? Да, плохо. Но если вышеуказанные условия не выполняются, то активный режим еще хуже чем пассив: не работает ни поиск, ни скачивание с других пользователей. Именно поэтому режим и исправляется.
7. Я зашел на ваш хаб и тут работает поиск и скачивание, а на других хабах меня выкидывает с сообщением о неверном IP адресе. Почему? На нашем хабе ваш IP адрес исправляется автоматически, а на остальных вам предлагают сделать это самостоятельно, настроив правильно свой DC++ клиент.
8. У меня рабочий актив, но при входе на хаб я вижу что меня переопределило в пассив, как мне сделать актив? Вам нужно пробросить порт для того IP адреса, который вам пишет в сообщении. Номера портов указаны в настройках вашего DC++ клиента.
9. Чем отличается режимы "пассив" от "пассив (переопределен)" и какой лучше использовать? Если вы точно знаете, что актив у вас не возможен, то тогда укажите в клиенте "пассив", это будет лучшим вариантом в данном случае. Если вы можете настроить актив - настройте его. От этого вы будете только в выигрыше. Практически эти режимы почти не отличаются, но при прочих равных условиях, предпочтительней режим "пассив": - меньше нагрузка на хаб; - меньше отсылаемых команд от вашего DC++ клиента; - возможно некоторые пользователи, использующие расширения протокола NMDC смогут с вами соединиться.
10. У меня есть вопрос, но на него тут нет ответа? Что делать? Обратитесь к одному из операторов хаба, он поможет вам найти нужные ответы.
Просьба подредактировать и/или дополнить желающим это меню. Возможно у вас на хабе пользователи что-то другое спрашивали. Просьба принимать во внимание, что это меню должно быть максимально общим, так как будет дефолтным в скрипте. Все желающие смогут изменить его у себя как угодно.
ADD: Новая версия 1.11.
Реализовано переопределение тэгов и пользовательское меню + мелкие фиксы.
Автор: rival 21.1.2012, 11:44
обнаружен побочный эффект: хаб стал стабильней,менее тормозной
Автор: Enyby 21.1.2012, 11:50
Возможные причины:
DDoS'еры ддосят себя.
Нет большой нагрузки бесконечными командами CTM от активов, которые совсем не активы.
Нет отправки RCTM от пассивов к активам, которые совсем не активы.
На данный момент скрипт имеет статус релиза. Если у вас не было никаких проблем в течение недели, то можно поотключать отладку и детальную статистику, нагрузка должна стать еще меньше:
Код
local bValidate = false -- признак валидации целостности скрипта. относится к отладке, на боевой версии скрипта лучше отключать, на обкатке лучше включать
local bDetailedStats = false -- признак включения детальной статистики хаба, может создавать дополнительную нагрузку на хаб
local sDebugLog = nil --"Debug.log" -- имя файла для вывода отладочного лога, если nil, то логирование отключено
local bFastDebug = false -- признак использования быстрой отладки, немного увеличивает расход памяти, но помогает разобраться при возникновении проблем
Если будут проблемы, их всегда можно будет включить.
Автор: Alex_lola 22.1.2012, 14:08
почему когда сделан проброс портов скрипт показывает режим пассив(переопределен)? он вобще актив показывает?))) удалил сие чудо из скриптов..
Автор: Enyby 22.1.2012, 14:20
Alex_lola, внимательно читай http://mydc.ru/ipb.html?showtopic=5112&view=findpost&p=41893, а потом присылай статистику с дампом.
Автор: Alex_lola 22.1.2012, 14:26
Цитата(Enyby @ 22.1.2012, 15:20)
Alex_lola, внимательно читай http://mydc.ru/ipb.html?showtopic=5112&view=findpost&p=41893, а потом присылай статистику с дампом.
порты открыты. с закрытыми я не смог бы качать да и на хаб никто не зашел бы. фаервол настроен верно. дамп позже сделаю.. если будет желание заниматся этим чудом))
Автор: Enyby 22.1.2012, 16:12
Alex_lola, у меня есть подозрение, что это вопрос настроек твоего компа/хаба/фаервола/проброса портов (лишнее можно вычеркнуть). Вот тебе кусок одной статистики хаба с примерно 1500 пользователей:
+FixedCTMIP = 22898 -- число исправленных запросов на подключение из за неверного IP +FixedSearch = 10344 -- число исправленных поисковых запросов +FixedCTM = 11423 -- число исправленных запросов на подключение +FixedSearchIP = 2390 -- число исправленных поисковых запросов из за неверного IP
Время работы скрипта - порядка 10 часов.
ADD: Новая версия 1.12. Улучшена и доработана статистика. Ничего критичного не менялось. Теперь в статистике можно видеть сколько времени работает скрипт, сколько времени собиралась расширенная статистика, (если она включена, конечно) и среднюю скорость появления событий расширенной статистики:
Цитата
Время сбора статистики = 43 с
+FixedCTMIP = 1 (0.023255813953488 в секунду или 1 за 43 секунд) +SendFixedMyINFO = 20 (0.46511627906977 в секунду или 1 за 2.15 секунд) +SendFixedMyINFOs = 3 (0.069767441860465 в секунду или 1 за 14.333333333333 секунд) +FixedSearch = 2 (0.046511627906977 в секунду или 1 за 21.5 секунд) +TrueCheckedActive = 127 (2.953488372093 в секунду или 1 за 0.33858267716535 секунд) +ValidCTMForBot = 143 (3.3255813953488 в секунду или 1 за 0.3006993006993 секунд) +BlockedCTMToPassive = 2 (0.046511627906977 в секунду или 1 за 21.5 секунд) +SendRCTMforBot = 146 (3.3953488372093 в секунду или 1 за 0.29452054794521 секунд) +TimeoutConnect = 16 (0.37209302325581 в секунду или 1 за 2.6875 секунд)
Автор: Damaks 22.1.2012, 20:34
Проработал скрипт более суток, все ограничения на хабе по шаре и пассивам были сняты. Можно с уверенностью сказать, что лишнюю нагрузку на хаб скрипт не создаёт, примерно такие же значения были и без скрипта. Память тоже не ест.
Поскольку, если что-то пойдет не так, а у вас будет bValidate = false, то вы об этом даже не узнаете. Если неделю все спокойно, тогда можно все повыключать и пусть себе работает.
ADD: Не думайте, что это перестраховка. Вот уже вылезла одна http://mydc.ru/index.html?showtopic=5118&view=findpost&p=41975.
Кстати, для крупных хабов (более 1000 человек онлайна), советую менять значение iMaxPoolSize на большее. Например, 48 или 64. Тогда режим пользователей будет определяться быстрее.
Автор: AfLc 22.1.2012, 23:48
Всё включил как Вы сказали , через недельку напишу статистику .
Автор: Enyby 23.1.2012, 2:24
Новая версия 1.13. Содержит критичное исправление.
Автор: AfLc 23.1.2012, 21:10
А для работы скрипта обязательно должна быть включена опция в ptokax " Строка тега"?
Автор: Enyby 24.1.2012, 3:50
Нет. Но скрипт в любом случае будет отсылать со строкой тэга.
ADD: Выложил версию 2.00. По большей части скрипт переписан заново. Должен быстрее работать на крупных хабах.
ADD: Выложил версию 2.01. Там дефолтные настройки чуть улучшены, а то я тестировал и забыл изменить.
Автор: Enyby 25.1.2012, 8:55
Кстати. Скрипт позволяет находиться на хабе и качать пользователям с весьма странными настройками актива. Например, видел как у одного пользователя во внешнем IP адресе актива стояла точка в конце. Т. е. он имел вид: "1.2.3.4.". И ничего. Все работало. Хотя это, конечно, безобразие со стороны клиента, он должен проверять IP, при вводе в настройках, на валидность. Кстати грей, в этом плане, весьма хорош - он не отсылает не валидные IP адреса, хотя их можно спокойно внести в настройки.
Теперь немного о принципах работы скрипта. Определение нерабочего актива основано на осуществлении подключения хаба к пользователю. Если же соединение не удалось установить, то пользователя считается неверным активом и устанавливается в пассив принудительно. Какие с этим могут быть проблемы:
Если хаб не может подключиться по указанному адресу, это не всегда значит, что по указанному адресу не может подключиться другой IP адрес. Решение: Обычно вызвано фаерволом у пользователя, так что тут нужно смотреть его настройки и разрешать входящие соединения от IP хаба.
Если на сервере хаба запрещены исходящие соединения, например, фаерволом, то скрипт будет работать некорректно. Симптомы: В статистике скрипта число активных пользователей либо отсутствует, либо равно нулю. Решение: Или разрешаете исходящие соединения или не используете этот скрипт.
Автор: Marc 26.1.2012, 1:14
Enyby! Хотелось бы вот что заметить в работе данного скрипта: если админ или модератор начнёт давать ссылки нескольким пользователям с адресом хаба, то на него также в конечном счёте будет распространяться врем бан... Если, допустим, для модератора это ещё можно и оставить, и тогда админ сам примет решение, то вот для админа неожиданно попать в бан, а на него он также будет распространяться, несколько это некорректно такое действие скрипта... Можно ли это учесть и как-то дополнить скрипт, чтобы админ не попадал в такую ситуацию? (просто может быть так, что админ сидит за другим компом и у него нет возможности сразу самого себя разбанить)
Автор: Enyby 26.1.2012, 1:16
О каком скрипте речь? Явно не о том, который обсуждается в данном топике.
Автор: Marc 26.1.2012, 1:32
речь о скрипте: UserModeFixer_v2.01.lua ( 43.38 килобайт ) админ по нему попал в бан)
Автор: Enyby 26.1.2012, 1:34
Приехали. Какой бан? Этот скрипт НЕ МОЖЕТ дать бан. У меня есть подозрение что речь идет о http://mydc.ru/topic5122.html.
Автор: Marc 26.1.2012, 1:38
Enyby! Сорри, прошу прощения, да речь шла о Defend PM! Отвлекли меня тут разговорами... Но я уже посмотрел, что Вы там уже внесли изменения в скрипт, именно те, что и были нужны! Эх, так получилось, что не туда написал! Извините!
Автор: rival 26.1.2012, 15:53
иногда возникает ошибка <Спикер> ...\scripts\UserModeFixer_v1.07.lua:981: attempt to index field '?' (a nil value) stack traceback: ...\scripts\UserModeFixer_v1.07.lua:999: in function <...\scripts\UserModeFixer_v1.07.lua:998>
строка 981 >> if tUsers[tUser.sNick].bActive then строка 999 >> Core.SendToOpChat(sErrorMsg.."\n"..debug.traceback())
на версию не обращай внимание,там свежая,просто чтоб список не обновлять,я в старом на новый(Версия скрипта: 2.01) замену кода сделал
Автор: Enyby 26.1.2012, 16:09
Цитата(rival @ 26.1.2012, 14:53)
просто чтоб список не обновлять
Какой список?
В принципе за код с заменами я не отвечаю, ибо вы могли выпустить какую-то тонкость, не зная об этом.
Выложил версию 2.02. Там добавлена дополнительная обработка ошибок и некоторые улучшения статистики. Если будут снова ошибки, то будут со статистикой и отладкой. Если в статистистике будет появляется параметр "+NilUser" - присылайте статистику с отладкой, будем разбираться.
+Connect = 7408 (0.085839098040579 в секунду или 1 за 11.649703023758 секунд) +BlockedRCTMBetweenPassive = 1416 (0.016407689366288 в секунду или 1 за 60.947033898305 секунд) +TimeoutWaitCTM = 1930 (0.02236358790744 в секунду или 1 за 44.715544041451 секунд) +FixedSearchIP = 5701 (0.066059489461304 в секунду или 1 за 15.137870549026 секунд) +SendRCTM = 12105 (0.14026488684952 в секунду или 1 за 7.1293680297398 секунд) +Errors = 1 (1.1587351247378e-05 в секунду или 1 за 86301 секунд) +ConnectTimeout = 1047 (0.012131956756005 в секунду или 1 за 82.426934097421 секунд) +BlockedRCTMToOffline = 11488 (0.13311549112988 в секунду или 1 за 7.5122736768802 секунд) +OtherCTMForBot = 118 (0.0013673074471906 в секунду или 1 за 731.36440677966 секунд) +FixedSearch = 18712 (0.21682251654094 в секунду или 1 за 4.612067122702 секунд) +FixedCTMIP = 75664 (0.87674534478164 в секунду или 1 за 1.1405820469444 секунд) +SendFixedMyINFO = 30586 (0.35441072525231 в секунду или 1 за 2.8215850389067 секунд) +BlockedCTMToPassive = 39266 (0.45498893407956 в секунду или 1 за 2.1978556511995 секунд) +FixedCTM = 33861 (0.39235930058748 в секунду или 1 за 2.548684327102 секунд) +SendFixedMyINFOs = 11859 (0.13741439844266 в секунду или 1 за 7.2772577789021 секунд) +BlockedCTMToOffline = 3047 (0.035306659250762 в секунду или 1 за 28.323268788973 секунд) +ChangedMyINFO = 3924 (0.045468766294713 в секунду или 1 за 21.993119266055 секунд) +ConnectDone = 6356 (0.073649204528337 в секунду или 1 за 13.577879169289 секунд)
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
Автор: Enyby 26.1.2012, 16:30
Нужна статистика + быстрая отладка (Fast Debug) сразу после возникновения ошибки. Если ее сейчас нет, то ставьте обновленную версию, она сама снимет все что надо в момент возникновения ошибки. Пришлете все это сюда. А так сказать что-то трудно.
Хотя, скорее всего, уже ошибки не будет, а будет повявлятся параметр "+NilUser". В этом случае тоже статитистику неплохо бы.
Автор: rival 26.1.2012, 23:36
Раскрывающийся текст
[05:04:55] <Спикер> ...\scripts\UserModeFixer_v2.02.lua:981: attempt to index field '?' (a nil value) stack traceback: ...\scripts\UserModeFixer_v2.02.lua:1002: in function <...\scripts\UserModeFixer_v2.02.lua:1000>
+Connect = 2818 (0.2620664000744 в секунду или 1 за 3.8158268275373 секунд) +BlockedRCTMBetweenPassive = 852 (0.079233702222636 в секунду или 1 за 12.620892018779 секунд) +TimeoutWaitCTM = 1303 (0.12117548591091 в секунду или 1 за 8.2524942440522 секунд) +FixedSearchIP = 521 (0.048451594903748 в секунду или 1 за 20.63915547025 секунд) +SendRCTM = 4834 (0.44954896308007 в секунду или 1 за 2.2244517997518 секунд) +Errors = 1 (9.2997303078211e-05 в секунду или 1 за 10753 секунд) +ConnectTimeout = 500 (0.046498651539105 в секунду или 1 за 21.506 секунд) +BlockedRCTMToOffline = 2723 (0.25323165628197 в секунду или 1 за 3.9489533602644 секунд) +OtherCTMForBot = 30 (0.0027899190923463 в секунду или 1 за 358.43333333333 секунд) +FixedSearch = 3040 (0.28271180135776 в секунду или 1 за 3.5371710526316 секунд) +FixedCTMIP = 9416 (0.87566260578443 в секунду или 1 за 1.141992353441 секунд) +SendFixedMyINFOs = 4481 (0.41672091509346 в секунду или 1 за 2.3996875697389 секунд) +BlockedCTMToPassive = 5826 (0.54180228773366 в секунду или 1 за 1.8456917267422 секунд) +FixedCTM = 4267 (0.39681949223473 в секунду или 1 за 2.5200374970705 секунд) +SendFixedMyINFO = 5745 (0.53426950618432 в секунду или 1 за 1.8717145343777 секунд) +BlockedCTMToOffline = 71 (0.006602808518553 в секунду или 1 за 151.45070422535 секунд) +ChangedMyINFO = 1335 (0.12415139960941 в секунду или 1 за 8.0546816479401 секунд) +ConnectDone = 2316 (0.21538175392914 в секунду или 1 за 4.6429188255613 секунд)
HubVersion = 0.4.1.1 LuaVersion = Lua 5.1 OS = Windows_NT
FastDebug: 1. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe [irina916] 88.85.200.244:0| 2. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe [irina916] 88.85.200.244:0| 3. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe [irina916] 88.85.200.244:0| 4. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe benail 88.85.200.244:0| 5. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe benail 88.85.200.244:0| 6. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe benail 88.85.200.244:0| 7. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe benail 88.85.200.244:0| 8. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe 0883nic2 88.85.200.244:0| 9. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe 0883nic2 88.85.200.244:0| 10. 88.85.200.244 Ex1 true Block CTM to Passive: $ConnectToMe 0883nic2 88.85.200.244:0| 11. 95.27.68.172 9xPrototipx9 true Sended RCTM: $RevConnectToMe pozitiv 9xPrototipx9| 12. 95.27.68.172 9xPrototipx9 true real connect 13. 109.126.21.210 barada true Invalid IP in CTM: $ConnectToMe satneve 172.26.252.12:10031| 14. 109.126.21.210 barada true Fix CTM: $ConnectToMe satneve 172.26.252.12:10031| to: $ConnectToMe satneve 109.126.21.210:10031| 15. 109.126.21.210 barada true Invalid IP in CTM: $ConnectToMe satneve 172.26.252.12:10031| 16. 109.126.21.210 barada true Fix CTM: $ConnectToMe satneve 172.26.252.12:10031| to: $ConnectToMe satneve 109.126.21.210:10031| 17. 109.126.21.210 barada true Invalid IP in CTM: $ConnectToMe satneve 172.26.252.12:10031| 18. 109.126.21.210 barada true Fix CTM: $ConnectToMe satneve 172.26.252.12:10031| to: $ConnectToMe satneve 109.126.21.210:10031| 19. 188.187.12.37 [OZK]Rurulnew true Block RCTM to Offline: $RevConnectToMe [OZK]Rurulnew pozitiv| 20. 88.85.200.244 Ex1 true real disconnect 21. 2.93.233.15 kokonv true Fix Search: $Search 2.93.233.15:3271 F?T?0?9?TTH:6EBVO6XMF2NJ5HGTBNKSJZVN5C5ZWFEQW2KX2MI| to: $Search Hub:kokonv F?T?0?9?TTH:6EBVO6XMF2NJ5HGTBNKSJZVN5C5ZWFEQW2KX2MI| 22. 79.164.28.125 Ksilo true fixed MyINFO. from: $MyINFO $ALL Ksilo <StrgDC++ V:2.42,M:A,H:75/0/0,S:75>$ $10$$182321811486$| to: $MyINFO $ALL Ksilo <StrgDC++ V:2.42,M:P,H:75/0/0,S:75>$ $10$$182321811486$| 23. 2.93.90.197 [saratov]kseniy true Added in queue 24. 2.93.90.197 [saratov]kseniy true Connect done 25. 81.88.222.19 lysandrej true Block CTM to Passive: $ConnectToMe jenek25 81.88.222.19:28502| 26. 81.88.222.19 lysandrej true Block CTM to Passive: $ConnectToMe jenek25 81.88.222.19:28502| 27. 81.88.222.19 lysandrej true Block CTM to Passive: $ConnectToMe jenek25 81.88.222.19:28502| 28. 81.88.222.19 lysandrej true Block CTM to Passive: $ConnectToMe jenek25 81.88.222.19:28502| 29. 91.206.126.248 kinderhomjkdenis true Sended RCTM: $RevConnectToMe pozitiv kinderhomjkdenis| 30. 91.206.126.248 kinderhomjkdenis true real connect
Пожалуйста, пришлите данное сообщение на форум mydc.ru: http://mydc.ru/topic5112.html или же на почту: enyby@ya.ru
Line 981: if tUsers[tUser.sNick].bActive then есть подозрение,ошибка вылазит при разрыве связи от провайдера,но выложить стоило,как пример
Автор: Enyby 27.1.2012, 0:18
Все это выглядит похоже на подключение юзера в обход UserConnected. Или на присутствии на хабе юзера, который не выводится в общем списке. Или на отсылке запроса на подключения юзеру находящемуся на невнятной стадии подключения. Это, кстати, возможно если кого-то часто кидает. А так все это похоже на мистику.
Новая версия 2.03. Добавил обработку этого бага.
Кстати, совет тем, у кого большой хаб. Если происходит медленный вход, то это может стать причиной отваливания юзеров по таймауту и переопределением в пассив. Чтобы этого не происходило - увеличиваем таймаут соединения с 3 секунд до приемлимых значений, например, 10 секунд. В тоже время можно попробовать уменьшить интервал вызова главного цикла с 100 мс до 10 мс. На винде сделать интервал меньше 10 мс не получится в принципе, так как все что меньше, будет приводится к 10 мс. Это особенности реализации таймеров C++ на винде. На линуксовой птоке используется своя реализация таймеров, работающая из принимающего цикла, так что там может быть все что угодно, но на крупных хабах, хотя бы 10 мс задержки между вызовами получить будет нереально, будет больше. А все потому что пользователей много и все обычно что-то шлют.
Автор: Ameet 27.1.2012, 10:31
Enyby, ты о local iCheckInterval = 100 -- интервал в миллисекундах между проверками: таймаута RCTM, соединения, опроса сокетов и обработки очереди? здесь ставить 10 мс?
Автор: Enyby 27.1.2012, 10:33
Да.
Автор: Ameet 27.1.2012, 11:19
онлайн почти 1к, вечером жду 3к+ посмотрим что будет
+TimeoutWaitCTM = 782 (0.20715231788079 в секунду или 1 за 4.8273657289003 секунд) +FixedSearchIP = 21 (0.0055629139072848 в секунду или 1 за 179.7619047619 секунд) +SendFixedMyINFOs = 866 (0.22940397350993 в секунду или 1 за 4.3591224018476 секунд) +FixedSearch = 6932 (1.8362913907285 в секунду или 1 за 0.54457587997692 секунд) +SendFixedMyINFO = 7599 (2.0129801324503 в секунду или 1 за 0.49677589156468 секунд) +FixedCTMIP = 143 (0.037880794701987 в секунду или 1 за 26.398601398601 секунд) +ConnectedDuplicateUser = 16 (0.0042384105960265 в секунду или 1 за 235.9375 секунд) +Connect = 21 (0.0055629139072848 в секунду или 1 за 179.7619047619 секунд) +ChangedMyINFO = 17 (0.0045033112582781 в секунду или 1 за 222.05882352941 секунд) +ConnectDone = 21 (0.0055629139072848 в секунду или 1 за 179.7619047619 секунд) +SendRCTM = 881 (0.23337748344371 в секунду или 1 за 4.2849035187287 секунд)
пробуй скрипт поставить выше/ниже других,и посмотри что будет, определяет пассив(принудительно),по факту - активный режим(я про себя) заходил у тебя стоит скрипт который определяет страну и профиль пользователя в описании,весьма вероятная причина в работе этого скрипта
Автор: Enyby 27.1.2012, 12:04
Цитата(Ameet @ 27.1.2012, 10:19)
+TimeoutWaitCTM = 782 (0.20715231788079 в секунду или 1 за 4.8273657289003 секунд)
Это плохой признак. Следует увеличить iTimeout. Поставьте 600 для начала.
Цитата(Ameet @ 27.1.2012, 10:19)
+ConnectedDuplicateUser = 16 (0.0042384105960265 в секунду или 1 за 235.9375 секунд)
Это вообще очень круто. В общем это вызов UserConnected для одного ника несколько раз, без UserDisconnected между вызовами. Попробуйте остальные скрипты отрубить или поставить этот выше всех. Выше не должно быть скриптов, которые возвращают return true в UserDisconnected, а ниже - скриптов, которые отключают юзера в UserConnected.
ADD: Версия 2.04. Улучшен отладочный вывод. Никаких критичных ихменений.
Ameet, ставь новую версию и присылай снова лог ошибки. Там будет чуть больше информации. Так же проверь другие скрипты на предмет совместимости с этим.
Автор: Ameet 27.1.2012, 12:21
Цитата(Enyby @ 27.1.2012, 12:04)
Это плохой признак. Следует увеличить iTimeout. Поставьте 600 для начала.
Это вообще очень круто. В общем это вызов UserConnected для одного ника несколько раз, без UserDisconnected между вызовами. Попробуйте остальные скрипты отрубить или поставить этот выше всех. Выше не должно быть скриптов, которые возвращают return true в UserDisconnected, а ниже - скриптов, которые отключают юзера в UserConnected.
ADD: Версия 2.04. Улучшен отладочный вывод. Никаких критичных ихменений.
Ameet, ставь новую версию и присылай снова лог ошибки. Там будет чуть больше информации. Так же проверь другие скрипты на предмет совместимости с этим.
Установил таймаут 600, что ещё бы ты посоветовал для большого онлайна?
Автор: rival 27.1.2012, 12:21
не успеваю обновлять
Автор: Ameet 27.1.2012, 12:31
Цитата(rival @ 27.1.2012, 11:42)
пробуй скрипт поставить выше/ниже других,и посмотри что будет, определяет пассив(принудительно),по факту - активный режим(я про себя) заходил у тебя стоит скрипт который определяет страну и профиль пользователя в описании,весьма вероятная причина в работе этого скрипта
сейчас только выше стоит антиреклама и авто-сохранение
Цифры примерные. Можешь сам с ними эксперементировать.
Проверь еще что:
Цитата
Несовместим со скриптами осуществлящими отключение пользователя в функциях (User|Op|Reg)Connected, когда эти скрипты находятся ниже этого скрипта в списке скриптов.
ADD: Если антиреклама подменяет описания, могут быть проблемы. Но не критичные.
+Connect = 851 (0.46224877783813 в секунду или 1 за 2.1633372502938 секунд) +BlockedRCTMBetweenPassive = 3 (0.0016295491580663 в секунду или 1 за 613.66666666667 секунд) +TimeoutWaitCTM = 4 (0.002172732210755 в секунду или 1 за 460.25 секунд) +FixedSearchIP = 35 (0.019011406844106 в секунду или 1 за 52.6 секунд) +ConnectTimeout = 415 (0.22542096686583 в секунду или 1 за 4.4361445783133 секунд) +SendFixedMyINFOs = 500 (0.27159152634438 в секунду или 1 за 3.682 секунд) +FixedSearch = 2218 (1.2047800108637 в секунду или 1 за 0.83002705139766 секунд) +BlockedRCTMToOffline = 10 (0.0054318305268876 в секунду или 1 за 184.1 секунд) +FixedCTMIP = 321 (0.17436175991309 в секунду или 1 за 5.7352024922118 секунд) +SendFixedMyINFO = 3504 (1.9033134166214 в секунду или 1 за 0.525399543379 секунд) +BlockedCTMToPassive = 2267 (1.2313959804454 в секунду или 1 за 0.81208645787384 секунд) +FixedCTM = 1296 (0.70396523628463 в секунду или 1 за 1.420524691358 секунд) +ConnectedDuplicateUser = 15 (0.0081477457903313 в секунду или 1 за 122.73333333333 секунд) +ChangedMyINFO = 19 (0.010320478001086 в секунду или 1 за 96.894736842105 секунд) +ConnectDone = 436 (0.2368278109723 в секунду или 1 за 4.2224770642202 секунд) +SendRCTM = 885 (0.48071700162955 в секунду или 1 за 2.0802259887006 секунд)
Попробуй выключить на время все другие скрипты и запустить этот. Если не будет вылетать, значит проблема в конфликте скриптов. Хоть ясность какая-то будет.
Скрипт не должен быть выше или ниже всех. Выше него не должно быть того, что будет перехватывать обработку подключений и прочего, а ниже - чтобы не нарушать последовательности. Например, если юзер вошел, то он должен выходить? Не правда ли? Но если ты в каком-то скрипте вызовыешь Core.Disconnect прямо в UserConnected, то UserDisconnected вызвано не будет, так как процедура входа еще не завершена. А все предыдущие скрипты будут думать, что юзер корректно вошел. И будут ждать его выхода. Естественно что не дождуться.
UPD: Более того. Они будут получать nil вместо таблицы пользователя при вызове Core.GetUser(sNick). Вот эта ошибка у тебя и лезет. Кстати, кроме тебя никто ее не прислал. Ни разу. Так что думаю дело в твоем наборе скриптов.
Автор: Ameet 27.1.2012, 13:13
Цитата(Enyby @ 27.1.2012, 12:57)
Попробуй выключить на время все другие скрипты и запустить этот. Если не будет вылетать, значит проблема в конфликте скриптов. Хоть ясность какая-то будет.
Скрипт не должен быть выше или ниже всех. Выше него не должно быть того, что будет перехватывать обработку подключений и прочего, а ниже - чтобы не нарушать последовательности. Например, если юзер вошел, то он должен выходить? Не правда ли? Но если ты в каком-то скрипте вызовыешь Core.Disconnect прямо в UserConnected, то UserDisconnected вызвано не будет, так как процедура входа еще не завершена. А все предыдущие скрипты будут думать, что юзер корректно вошел. И будут ждать его выхода. Естественно что не дождуться.
UPD: Более того. Они будут получать nil вместо таблицы пользователя при вызове Core.GetUser(sNick). Вот эта ошибка у тебя и лезет. Кстати, кроме тебя никто ее не прислал. Ни разу. Так что думаю дело в твоем наборе скриптов.
вот сейчас такие у меня скрипты, я точно не знаю использует ли екзоуратор те функции что ты писал, но если Вы знаете пожалуйста подскажите.
Автор: Enyby 27.1.2012, 13:23
Нет у меня настроения экзектура ворошить. Давай ты все отключишь и проверишь. так будет быстрее всего. saver - у меня работает. Конфликтов нет. CountryTag - он ниже - конфликтов нет, но я бы его вообще вырубил, поскольку мой скрипт перехватывает часть Тэгов. И будут одни со странами, а другие без. Unreg block - это непонятно что. Код в студию. Скорее всего он и колбасит.
Нет у меня настроения экзектура ворошить. Давай ты все отключишь и проверишь. так будет быстрее всего. saver - у меня работает. Конфликтов нет. CountryTag - он ниже - конфликтов нет, но я бы его вообще вырубил, поскольку мой скрипт перехватывает часть Тэгов. И будут одни со странами, а другие без. Unreg block - это непонятно что. Код в студию. Скорее всего он и колбасит.
тык
local sMsg=[[Сообщение о недоступности чата и лички незарегистрированному]] function ChatArrival(tUser) if tUser.iProfile == -1 then Core.SendToUser(tUser,sMsg) return true end end ToArrival=ChatArrival
не думаю
Автор: rival 27.1.2012, 13:27
Цитата
CountryTag - он ниже - конфликтов нет, но я бы его вообще вырубил, поскольку мой скрипт перехватывает часть Тэгов. И будут одни со странами, а другие без.
склоняюсь к конфликту с этим скриптом
Автор: Ameet 27.1.2012, 13:28
Цитата(Damaks @ 27.1.2012, 13:24)
Ameet, меня неверно переопределяет
когда я включаю скрипт меня тоже на принудительный пассив кидает почему-то
попутно выключил коунтри тег.
Автор: Enyby 27.1.2012, 13:35
Unreg block - все верно. Это не он.
Сейчас скрипт не работает? Захожу ничего не пишет и еще кидает с несовпадением адресов.
В скрипте количество юзеров больше на три, чем на хабе. Это плохой признак. Есть вероятность что это вызвано выходом юзеров без вызова UserDisconnected.
пробуй поставить такие настройки,у меня примерно такой же онлайн юзеров,что и у тебя,работает нормально
Спасибо, пока загрузил белье в машинку и подкрутил уровень а то танцевала вроде как дало опять ошибку ну я обновил жду опять... остались со скриптов антиреклама, кантри стат , регистрация через мыло верли инфо,мотд и унрег блок
Автор: Damaks 27.1.2012, 13:56
Цитата(Ameet @ 27.1.2012, 14:28)
когда я включаю скрипт меня тоже на принудительный пассив кидает почему-то
Зайди на GOLD-HUB, какой тебе режим напишет. У меня схожая проблема.
так походу дело в екзоураторе, как мне быть как решить проблему что бы и бот работал и данный скрипт, какие есть соображения?
Автор: Enyby 27.1.2012, 14:24
Ждать новую версию. Сегодня постараюсь выпустить.
Автор: Ameet 27.1.2012, 14:26
Цитата(Enyby @ 27.1.2012, 14:24)
Ждать новую версию. Сегодня постараюсь выпустить.
будем с радостью ждать так как бот тоже мне нужен =)
Автор: Enyby 27.1.2012, 19:48
Новая версия 2.05. По идее должна быть совместимость с экзекутором. А на деле - черт его знает.
Автор: LoT 28.1.2012, 15:30
Встретилась проблема неожиданно. Первый раз я списал на случайность (всякое бывает), глюк был сразу же при запуске скрипта. Второй раз вот сегодня, спустя более трех дней работы.
Грешу на фичу изменения тэга, т.к. первый раз затык был на новой версии скрипта, где была реализована подобная функция (1.11, если не ошибаюсь), сейчас вот - 2.01.
Трабл заключается в том, что совершенно неожиданно хаб зависает (даже через консоль не отвечает). Соединние пользователя доходит до статуса "Соединен", и на этом все замерает.
Вот статистика хаба, примерно, за два часа до зависания:
+Connect = 8028 (0,025549384975256 в секунду или 1 за 39,139885401096 секунд) +BlockedRCTMBetweenPassive = 15 (4,7738013780373e-05 в секунду или 1 за 20947,666666667 секунд) +TimeoutWaitCTM = 481 (0,001530798975224 в секунду или 1 за 653,25363825364 секунд) +FixedSearchIP = 1542 (0,0049074678166224 в секунду или 1 за 203,77107652399 секунд) +SendRCTM = 8706 (0,027707143198129 в секунду или 1 за 36,091775786814 секунд) +ConnectTimeout = 1336 (0,0042518657607052 в секунду или 1 за 235,19086826347 секунд) +SendFixedMyINFOs = 14809 (0,047130149738237 в секунду или 1 за 21,217840502397 секунд) +FixedCTMIP = 7391 (0,023522110656716 в секунду или 1 за 42,513191719659 секунд) +FixedSearch = 19055 (0,060643190172334 в секунду или 1 за 16,489897664655 секунд) +OtherCTMForBot = 88 (0,00028006301417819 в секунду или 1 за 3570,625 секунд) +BlockedCTMToPassive = 18203 (0,057931670989609 в секунду или 1 за 17,261715101906 секунд) +BlockedRCTMToOffline = 351 (0,0011170695224607 в секунду или 1 за 895,19943019943 секунд) +FixedCTM = 20871 (0,066422672374011 в секунду или 1 за 15,055100378516 секунд) +SendFixedMyINFO = 20010 (0,063682510383018 в секунду или 1 за 15,702898550725 секунд) +BlockedCTMToOffline = 3 (9,5476027560747e-06 в секунду или 1 за 104738,33333333 секунд) +ChangedMyINFO = 446 (0,0014194102764031 в секунду или 1 за 704,51793721973 секунд) +ConnectDone = 6675 (0,021243416132266 в секунду или 1 за 47,0734082397 секунд)
Может виноват скрипт экзекутор?Из-за него уже проблемка была , выше .Попробовать скачать версию 2.05.
Автор: Enyby 28.1.2012, 22:53
LoT, пришли сюда последние 100 строк перед зависанием. Если во время зависания что-то писало - добавь эти строки и укажи где они. Насчет экзекутора тебе уже сказали - совместимость с ним появилось только в версии 2.05. А что зависает это очень странно. С сетью в это время ничего не происходило странного? А так идей особых нет. Где-то скрипт зациклился. Или может в птоке что-то упало. Но последнее крайне маловероятно.
Автор: LoT 29.1.2012, 19:02
С хабом все было ок, с сетью, насколько я могу судить, тоже. Да, про Экзекутора я здесь читал, но на втором хабе с точно таким же набором скриптов все работает без проблем.
Раскрывающийся текст
92.113.118.21 Vetal-M true Invalid IP in CTM: $ConnectToMe HubBot 92.113.65.19:1035| 92.113.118.21 Vetal-M true Added in queue 92.113.118.21 Vetal-M true Invalid IP in CTM: $ConnectToMe dunya_DZ 92.113.65.19:1035| 92.113.118.21 Vetal-M true Fix CTM: $ConnectToMe dunya_DZ 92.113.65.19:1035| to: $ConnectToMe dunya_DZ 92.113.118.21:1035| 92.113.118.21 Vetal-M true Connect done 109.189.189.195 [BBB]Johans100mBit true Sended RCTM: $RevConnectToMe HubBot [BBB]Johans100mBit| 109.189.189.195 [BBB]Johans100mBit true real connect 10.192.133.83 makarov.alex1998 true real disconnect 92.113.118.21 Vetal-M true Fix Search for IP: $Search 92.113.65.19:1037 F?T?0?9?TTH:I3ODC4KSNEB5N2NERNHZMT5WP3WGKEOANTHUYOI| to: $Search 92.113.118.21:1037 F?T?0?9?TTH:I3ODC4KSNEB5N2NERNHZMT5WP3WGKEOANTHUYOI| 10.192.127.137 [vlg4]efimkus true Fix CTM: $ConnectToMe S(rus) 10.192.127.137:4035| to: $RevConnectToMe [vlg4]efimkus S(rus)| 188.134.33.193 DJBOYKOFF true fixed MyINFO. from: $MyINFO $ALL DJBOYKOFF http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.42,M:A,H:69/8/0,S:90>$ $50$alexandrboykoff@mail.ru$7128156162737$| to: $MyINFO $ALL DJBOYKOFF http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.42,M:P,H:69/8/0,S:90>$ $50$alexandrboykoff@mail.ru$7128156162737$| 92.113.118.21 Vetal-M true real disconnect 10.78.159.13 KTO3JLECb true Fix CTM: $ConnectToMe БУРЖУЙ 10.78.159.13:1861| to: $RevConnectToMe KTO3JLECb БУРЖУЙ| 188.24.132.42 cri.rds true Sended RCTM: $RevConnectToMe HubBot cri.rds| 188.24.132.42 cri.rds true real connect 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe intelligent12345 188.134.33.193:22719| 188.24.132.42 cri.rds true Added in queue 188.24.132.42 cri.rds true Connect done 89.23.134.128 tango true Invalid IP in CTM: $ConnectToMe intelligent12345 178.216.181.64:2128| 89.23.134.128 tango true Fix CTM: $ConnectToMe intelligent12345 178.216.181.64:2128| to: $ConnectToMe intelligent12345 89.23.134.128:2128| 10.78.82.210 NeReVaDeN true Fix Search: $Search 10.78.82.210:19183 F?T?0?9?TTH:ZLR7WVH5BKY7AUONEEQQEJGRHYIH665SNSKKOZQ| to: $Search Hub:NeReVaDeN F?T?0?9?TTH:ZLR7WVH5BKY7AUONEEQQEJGRHYIH665SNSKKOZQ| 10.78.159.13 KTO3JLECb true Block CTM to Passive: $ConnectToMe Palati 10.78.159.13:1861| 188.134.41.154 LEINSSNIEL true Sended RCTM: $RevConnectToMe HubBot LEINSSNIEL| 188.134.41.154 LEINSSNIEL true real connect 188.134.41.154 LEINSSNIEL true Added in queue 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe dunya_DZ 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe dunya_DZ 78.106.129.211:22068| to: $ConnectToMe dunya_DZ 10.12.79.234:22068| 10.192.127.137 [vlg4]efimkus true Fix CTM: $ConnectToMe LEINSSNIEL 10.192.127.137:4035| to: $RevConnectToMe [vlg4]efimkus LEINSSNIEL| 31.148.100.119 snouk true fixed MyINFO. from: $MyINFO $ALL snouk <++ V:0.699,M:A,H:14/0/0,S:15>$ $50$fedek.geniy@mail.ru$13487555039$| to: $MyINFO $ALL snouk <++ V:0.699,M:P,H:14/0/0,S:15>$ $50$fedek.geniy@mail.ru$13487555039$| 77.39.103.237 -=SHAH=- false real disconnect 188.134.41.154 LEINSSNIEL true Connect timeout 188.134.41.154 LEINSSNIEL true Wait CTM timeout. Send to all fixed MyINFO: $MyINFO $ALL LEINSSNIEL http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.42,M:P,H:100/0/0,S:100>$ $100$Feitrich@yandex.ru$91454682729$| 10.12.79.234 [vlg4]lirik1958 true Fix Search for IP: $Search 78.106.129.211:25886 F?T?0?9?TTH:XOJNUPYYUMDXAVQJPGLX5QT2P6HWBTH4SJHKJXQ| to: $Search 10.12.79.234:25886 F?T?0?9?TTH:XOJNUPYYUMDXAVQJPGLX5QT2P6HWBTH4SJHKJXQ| 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe [vlg]Roman88811 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe [vlg]Roman88811 78.106.129.211:22068| to: $ConnectToMe [vlg]Roman88811 10.12.79.234:22068| 109.167.192.235 ЛЫСЫЙ true fixed MyINFO. from: $MyINFO $ALL ЛЫСЫЙ [15]<FlylinkDC++ V:r500,M:A,H:29/2/0,S:15>$ $1000 $$181992946145$| to: $MyINFO $ALL ЛЫСЫЙ [15]<FlylinkDC++ V:r500,M:P,H:29/2/0,S:15>$ $1000 $$181992946145$| 109.167.192.235 ЛЫСЫЙ true Fix Search: $Search 109.167.192.235:2777 F?T?0?9?TTH:VYBCZYM2EY4LNLWKSFY2NBBABMRKE3IBUTX6SSA| to: $Search Hub:ЛЫСЫЙ F?T?0?9?TTH:VYBCZYM2EY4LNLWKSFY2NBBABMRKE3IBUTX6SSA| 10.168.136.109 [vlg3]_JohnLord true Block CTM to Passive: $ConnectToMe marka 10.168.136.109:2000| 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe Alex-EAA 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe Alex-EAA 78.106.129.211:22068| to: $ConnectToMe Alex-EAA 10.12.79.234:22068| 10.168.175.134 Loki false real disconnect 95.221.123.243 Щйюопреяйёдюь true fixed MyINFO. from: $MyINFO $ALL Щйюопреяйёдюь много всего<StrgDC++ V:2.30,M:A,H:88/0/0,S:88>$ $100$$0$| to: $MyINFO $ALL Щйюопреяйёдюь много всего<StrgDC++ V:2.30,M:P,H:88/0/0,S:88>$ $100$$0$| 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe RWSVANDA 188.134.33.193:22719| 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe [s]31TDNN 188.134.33.193:22719| 10.192.196.130 KoromyslO true Invalid IP in CTM: $ConnectToMe dunya_DZ 2.93.68.58:37787| 10.192.196.130 KoromyslO true Fix CTM: $ConnectToMe dunya_DZ 2.93.68.58:37787| to: $ConnectToMe dunya_DZ 10.192.196.130:37787| 89.23.134.128 tango true Fix Search for IP: $Search 178.216.181.64:4605 F?T?0?9?TTH:YBSLFXYOJG5QQEBO3B3QXFL2MGNLS4XQWCXBWNY| to: $Search 89.23.134.128:4605 F?T?0?9?TTH:YBSLFXYOJG5QQEBO3B3QXFL2MGNLS4XQWCXBWNY| 92.39.96.93 svyazist true Sended RCTM: $RevConnectToMe HubBot svyazist| 92.39.96.93 svyazist true real connect 92.39.96.93 svyazist true Added in queue 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe vchs 188.134.33.193:22719| 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe Alex-EAA 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe Alex-EAA 78.106.129.211:22068| to: $ConnectToMe Alex-EAA 10.12.79.234:22068| 92.39.96.93 svyazist true Connect done 10.78.159.13 KTO3JLECb true Fix Search: $Search 10.78.159.13:1092 F?T?0?9?TTH:5FYBQFYYT56O6VSBTAAOLFTLKCXT6N4FPA232OQ| to: $Search Hub:KTO3JLECb F?T?0?9?TTH:5FYBQFYYT56O6VSBTAAOLFTLKCXT6N4FPA232OQ| 10.78.159.13 KTO3JLECb true Fix CTM: $ConnectToMe GlaM 10.78.159.13:1861| to: $RevConnectToMe KTO3JLECb GlaM| 178.35.162.40 Alex_kot true Invalid IP in CTM: $ConnectToMe Alex-EAA 94.233.83.164:1316| 178.35.162.40 Alex_kot true Fix CTM: $ConnectToMe Alex-EAA 94.233.83.164:1316| to: $ConnectToMe Alex-EAA 178.35.162.40:1316| 10.192.127.137 [vlg4]efimkus true Block CTM to Passive: $ConnectToMe Palati 10.192.127.137:4035| 147.32.115.197 X77 true fixed MyINFO. from: $MyINFO $ALL X77 <ApexDC++ V:1.5.0,M:A,H:100/0/0,S:1>$ $0.1$$0$| to: $MyINFO $ALL X77 <ApexDC++ V:1.5.0,M:P,H:100/0/0,S:1>$ $0.1$$0$| 188.134.46.116 чайники true fixed MyINFO. from: $MyINFO $ALL чайники http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.41,M:A,H:67/0/0,S:67>$ $100$$90803204533$| to: $MyINFO $ALL чайники http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.41,M:P,H:67/0/0,S:67>$ $100$$90803204533$| 10.192.134.250 (Егор) true Sended RCTM: $RevConnectToMe HubBot (Егор)| 10.192.134.250 (Егор) true real connect 10.192.134.250 (Егор) true Added in queue 10.192.134.250 (Егор) true Connect done 10.168.190.158 Palati true Block CTM to Passive: $ConnectToMe ironDDD 10.168.190.158:29208| 10.168.190.158 Palati true fixed MyINFO. from: $MyINFO $ALL Palati [15]Ecnovides@mail.ru<FlylinkDC++ V:r501-beta69-x64,M:A,H:1/1/0,S:15>$ $50 $$927860843720$| to: $MyINFO $ALL Palati [15]Ecnovides@mail.ru<FlylinkDC++ V:r501-beta69-x64,M:P,H:1/1/0,S:15>$ $50 $$927860843720$| 193.169.32.8 e4tgfshtjujs true real disconnect 188.134.60.36 andrei11 true fixed MyINFO. from: $MyINFO $ALL andrei11 http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.41,M:A,H:17/0/0,S:17>$ $1000$$41812999485$| to: $MyINFO $ALL andrei11 http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.41,M:P,H:17/0/0,S:17>$ $1000$$41812999485$| 109.189.189.195 [BBB]Johans100mBit true Wait CTM timeout. Send to all fixed MyINFO: $MyINFO $ALL [BBB]Johans100mBit <++ V:0.790,M:P,H:48/0/0,S:3>$ $100$$0$| 95.25.29.155 [glv]igor1956 true fixed MyINFO. from: $MyINFO $ALL [glv]igor1956 <ApexDC++ V:1.5.1,M:A,H:8/2/0,S:3>$ $100 $$63218541114$| to: $MyINFO $ALL [glv]igor1956 <ApexDC++ V:1.5.1,M:P,H:8/2/0,S:3>$ $100 $$63218541114$| 93.81.199.107 gly2 true fixed MyINFO. from: $MyINFO $ALL gly2 [4]<FlylinkDC++ V:r500-beta133-x64,M:A,H:2/2/0,S:15>$ $100 $$84432213736$| to: $MyINFO $ALL gly2 [4]<FlylinkDC++ V:r500-beta133-x64,M:P,H:2/2/0,S:15>$ $100 $$84432213736$| 10.192.127.137 [vlg4]efimkus true Fix CTM: $ConnectToMe S(rus) 10.192.127.137:4035| to: $RevConnectToMe [vlg4]efimkus S(rus)| 188.134.33.193 DJBOYKOFF true fixed MyINFO. from: $MyINFO $ALL DJBOYKOFF http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.42,M:A,H:68/8/0,S:90>$ $50$alexandrboykoff@mail.ru$7128156162737$| to: $MyINFO $ALL DJBOYKOFF http://mydc.ru/r/?http://dcclub.zet<StrgDC++ V:2.42,M:P,H:68/8/0,S:90>$ $50$alexandrboykoff@mail.ru$7128156162737$| 10.192.133.208 intelligent12345 false real disconnect 10.78.159.13 KTO3JLECb true Fix CTM: $ConnectToMe БУРЖУЙ 10.78.159.13:1861| to: $RevConnectToMe KTO3JLECb БУРЖУЙ| 10.78.159.13 KTO3JLECb true Block CTM to Passive: $ConnectToMe Palati 10.78.159.13:1861| 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe dunya_DZ 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe dunya_DZ 78.106.129.211:22068| to: $ConnectToMe dunya_DZ 10.12.79.234:22068| 10.78.159.13 KTO3JLECb true Block CTM to Passive: $ConnectToMe Palati 10.78.159.13:1861| 10.78.159.13 KTO3JLECb true Fix CTM: $ConnectToMe GlaM 10.78.159.13:1861| to: $RevConnectToMe KTO3JLECb GlaM| 10.78.159.13 KTO3JLECb true Fix CTM: $ConnectToMe aexa 10.78.159.13:1861| to: $RevConnectToMe KTO3JLECb aexa| 10.192.127.137 [vlg4]efimkus true Block CTM to Passive: $ConnectToMe LEINSSNIEL 10.192.127.137:4035| 10.12.79.234 [vlg4]lirik1958 true Invalid IP in CTM: $ConnectToMe [vlg]Roman88811 78.106.129.211:22068| 10.12.79.234 [vlg4]lirik1958 true Fix CTM: $ConnectToMe [vlg]Roman88811 78.106.129.211:22068| to: $ConnectToMe [vlg]Roman88811 10.12.79.234:22068| 31.129.192.65 про true Sended RCTM: $RevConnectToMe HubBot про| 31.129.192.65 про true real connect 109.167.192.235 ЛЫСЫЙ true fixed MyINFO. from: $MyINFO $ALL ЛЫСЫЙ [15]<FlylinkDC++ V:r500,M:A,H:30/3/0,S:15>$ $1000 $$181992946145$| to: $MyINFO $ALL ЛЫСЫЙ [15]<FlylinkDC++ V:r500,M:P,H:30/3/0,S:15>$ $1000 $$181992946145$| 10.168.136.109 [vlg3]_JohnLord true Block CTM to Passive: $ConnectToMe marka 10.168.136.109:2000| 10.78.82.210 NeReVaDeN true Fix CTM: $ConnectToMe [vlg]zimnuk 10.78.82.210:16218| to: $RevConnectToMe NeReVaDeN [vlg]zimnuk| 31.129.192.65 про true Added in queue 10.78.159.13 KTO3JLECb true Fix Search: $Search 10.78.159.13:1092 F?T?0?9?TTH:TVOPRFPVYVLBQH3ZF2ZDRLDBACXOJEZBTSO5INI| to: $Search Hub:KTO3JLECb F?T?0?9?TTH:TVOPRFPVYVLBQH3ZF2ZDRLDBACXOJEZBTSO5INI| 92.61.64.206 МИХА1974 false Passive connected 92.61.64.206 МИХА1974 false real connect 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe RWSVANDA 188.134.33.193:22719| 95.221.123.243 Щйюопреяйёдюь true fixed MyINFO. from: $MyINFO $ALL Щйюопреяйёдюь много всего<StrgDC++ V:2.30,M:A,H:89/0/0,S:89>$ $100$$0$| to: $MyINFO $ALL Щйюопреяйёдюь много всего<StrgDC++ V:2.30,M:P,H:89/0/0,S:89>$ $100$$0$| 31.129.192.65 про true Connect timeout 31.129.192.65 про true Wait CTM timeout. Send to all fixed MyINFO: $MyINFO $ALL про [kht] user<++ V:0.791,M:P,H:33/18/1,S:3>$ $100$user@kht$136434730754$| 10.168.190.244 макс34 false Passive connected 10.168.190.244 макс34 false real connect 188.134.33.193 DJBOYKOFF true Block CTM to Passive: $ConnectToMe [s]31TDNN 188.134.33.193:22719| 10.192.196.130 KoromyslO true Invalid IP in CTM: $ConnectToMe dunya_DZ 2.93.68.58:37787| 10.192.196.130 KoromyslO true Fix CTM: $ConnectToMe dunya_DZ 2.93.68.58:37787| to: $ConnectToMe dunya_DZ 10.192.196.130:37787| 4.79.231.188 avatr false Passive connected 4.79.231.188 avatr false real connect
Автор: Enyby 30.1.2012, 10:45
Сложно сказать. Причин я не вижу. В логе ничего особого нет. Может быть это из-за отладки в файл, коллапс и произошел. Дисковые операции не самые быстрые. Именно по этой причине я перешел на быструю отладку.
Автор: LoT 30.1.2012, 20:03
Ок, прикручу, наверно, на днях версию 2.05. Потестим с ней. Ибо скрипт полезный, не хочется отказываться)
Автор: Sergey613 8.10.2012, 14:24
Синтаксис [string "--[[#######################################..."]:153: attempt to index global 'SetMan' (a nil value)
Автор: Enyby 11.10.2012, 16:41
Какая версия скрипта? Какая версия птоки?
Автор: Alexey 11.10.2012, 16:53
Лучше спроси, был ли включен хаб при запуске скрипта?
Автор: dj hoodo 13.10.2012, 1:35
Ubuntu 10.10 PtokaX DC Hub 0.4.1.2 мои действия: скачал скрипт из шапки 2.05. закинул в папку скрипты хаба. зашел на хаб через PXControl и включил скрипт. симптомы: захожу клиентом на хаб, [00:24:26] *** Соединение с dchub://dj-hoodo.triolan.com.ua... [00:24:26] *** Соединён. и все ждал минут 5 ] *** Пароль послан еще через 3 минуты пускает на хаб, но никаких сообщений о режимах нет. В меню хаба есть менюшка скрипта, но на действия ответа нет... Пытаюсь вырубить скрипт из клиента, ответа нет, сообщения в чат не проходят (видать хаб висит) через PXControl вырубить тоже нельзя, он тоже висит. рестарт хаба не помог, пришлось вынуть скрипт из папки и ребутать сервер. Где посмотреть статистику скрипта, чтоб увидить что произошло? в логах скриптов ничего такого нет
Автор: Артём 13.10.2012, 9:48
Цитата(dj hoodo @ 13.10.2012, 1:35)
симптомы: захожу клиентом на хаб, [00:24:26] *** Соединение с ... [00:24:26] *** Соединён. и все ждал минут 5 ] *** Пароль послан еще через 3 минуты пускает на хаб, но никаких сообщений о режимах нет. В меню хаба есть менюшка скрипта, но на действия ответа нет... Пытаюсь вырубить скрипт из клиента, ответа нет, сообщения в чат не проходят (видать хаб висит) через PXControl вырубить тоже нельзя, он тоже висит. рестарт хаба не помог, пришлось вынуть скрипт из папки и ребутать сервер. Где посмотреть статистику скрипта, чтоб увидить что произошло? в логах скриптов ничего такого нет
Было похожее ( OS: Linux 3.0.6-gentoo (i686) ). Только при онлайне 180 + (почему-то именно 180 и выше) хаб зависал, меню работало, скрипт при входе сообщал о режиме, все скрипты отключались, оставлял только этот скрипт, но всё равно хаб висел... пришлось убрать скрипт :( , а на венде работал этот скрипт при 1500 юзерах отлично
Автор: dj hoodo 13.10.2012, 9:54
у меня в момент испытания было 400+юзеров. мож ему PXControl не нравится? кто пробывал?
Автор: Sergey613 13.10.2012, 10:50
Цитата(Enyby @ 11.10.2012, 17:41)
Какая версия скрипта? Какая версия птоки?
UserModeFixer_v2.05.lua Версия птохи ниже...
Автор: Артём 14.10.2012, 0:32
Цитата(dj hoodo @ 13.10.2012, 9:54)
у меня в момент испытания было 400+юзеров. мож ему PXControl не нравится? кто пробывал?
PXControl не причём, у меня эта проблема (зависание) появилось после перехода на линукс (на венде без проблем всё было, даже при 1500+ юзерах)... не знаю в чём именно, хаб виснет если даже скрипт этот один работает, но что есть, то есть
Автор: Enyby 14.10.2012, 13:14
В линуксе попробуйте покрутить параметр
Цитата
local iMaxPoolSize = 32 -- максимальный размер пула активных сокетов, при малых значениях будет медленно тестировать режим, при больших - неверно его определять -- примерный диапазон значений 32 - 256
в сторону меньших значений.
Sergey613, скорее всего вы стартовали скрипт, когда хаб был не запущен. Это так?
Автор: KCAHDEP 6.1.2013, 12:04
Цитата(Артём @ 13.10.2012, 10:48)
Было похожее ( OS: Linux 3.0.6-gentoo (i686) ). Только при онлайне 180 + (почему-то именно 180 и выше) хаб зависал, меню работало, скрипт при входе сообщал о режиме, все скрипты отключались, оставлял только этот скрипт, но всё равно хаб висел... пришлось убрать скрипт :( , а на венде работал этот скрипт при 1500 юзерах отлично
1 в 1 ситуация, скрипт 2.05 ubuntu 12.04 ptoka 0.4.1.2 что делать так и не понял, скрипт стартовал при включенном хабе, так и не разобрался, очень хороший скрипт но пришлось отключить, никто не решил проблему?
Автор: Bearserk 9.1.2013, 21:40
Скрипт проверен на ХАБе при 10000+ юзеров. Жрёт очень много памяти, благо железо мощное (проц двухъядерный, 4 гига оперативы, инет 100 Мбит, локалка гиг, Ptokax 0.5.0.0). До запуска скрипта процессор использовался на 20-30%, при скрипте 60-70%. Порядка 4000 юзеров отвалилось в первые 30 сек., половина списков файлов перестали открываться, ЧАТ стал тормозить до 10-ти сек, личка до 5-ти сек.
Автор: MIKHAIL 13.1.2013, 21:30
Имею: PtokaX v0.4.0.0, UMF v2.05. При старте скрипта пишет:
[21:22] Syntax UserModeFixer_v2.05.lua:283: attempt to call field 'GetScript' (a nil value) [21:22] Syntax UserModeFixer_v2.05.lua:283: attempt to call field 'GetScript' (a nil value)
При рефреше скрипт втягивается в работу. Меню для ОПа нет.
Подскажите, как решить проблему для PtokaX v0.4.0.0 (на PtokaX v0.4.1.2 всё ОК).
Автор: Alexey 13.1.2013, 23:40
Скрипт использует функцию ScriptMan.GetScript, которая появилась в PtokaX только с версии 0.4.1.0. Обнови птоку.
Автор: Yamakasi 17.6.2015, 2:01
привет, не пашет скрипт((( на PtokaX 0.5.0.3 with Lua 5.3.0 Win64 GUI стоит UserModeFixer_v2.05.lua кто даст решение?
Цитата
Синтаксис C:\0.5.0.0-Lua5.2.1-x64\scripts\libs\socket.lua:19: attempt to index a boolean value (local '_M')
заменил на это http://mydc.ru/index.html?showtopic=43&view=findpost&p=46358 тоже не пашет!
всё, вопрос снимается, спасибо большое, это решение http://mydc.ru/index.html?showtopic=43&view=findpost&p=46837
Автор: Setup 14.9.2015, 4:41
Есть возможность добавить исключения в данный скрипт? То есть, диапазоны IP или ники пользователей, которых скрипт не будет обрабатывать. Для чего это нужно? Сижу рядом с хабом в одной локалке, на хаб прокинуты одни порты, мне другие. И моё соединение скрипт тоже исправляет, присваивая мне локальный IP вместо внешнего, и в итоге я на своём хабе только не могу качать.)) Спасибо за понимание.
Автор: Tsd 24.9.2016, 12:30
Цитата(Setup @ 14.9.2015, 4:41)
Есть возможность добавить исключения в данный скрипт? То есть, диапазоны IP или ники пользователей, которых скрипт не будет обрабатывать. Для чего это нужно? Сижу рядом с хабом в одной локалке, на хаб прокинуты одни порты, мне другие. И моё соединение скрипт тоже исправляет, присваивая мне локальный IP вместо внешнего, и в итоге я на своём хабе только не могу качать.)) Спасибо за понимание.
Присоединяюсь. Вместе со скриптом PXControl "палит" ник PXControl`a в списке пользователей, данный скрипт стоИт ниже.