Здравствуйте, гость ( Вход | Регистрация )
Отправлено: 16.3.2010, 13:07 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Dumaxa, вот поэтому-то и требуется: 1) участие администрации сети; 2) проверить, а не поднят ли УЖЕ в вашей сети другой ретрекер. Ни здесь http://domonet.kh-ix.net/domonet.networklist, ни здесь http://www.kh-ix.net/members нет вашего Билайна, следовательно сеть Билайна не входит в kh-ix. Проверьте свои внешние IP в этом списке - http://www.kh-ix.net/rs.kh-ix.net-bgp-routes |
Форум: Украина · Просмотр сообщения: #5479 · Ответов: 20 · Просмотров: 63 326 |
Отправлено: 30.11.2009, 0:02 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Ненавижу перл. Хоть начинал свое образование веб-программирования с книги с примерами именно на перле - "CGI-программирование". Уж очень он страшный. PHP, имхо, проще =) Кстати, да, приведенный выше патчер уже имеющихся торрентов как бы не относится напрямую к wTorrent |
Форум: Патчер торрентов · Просмотр сообщения: #5254 · Ответов: 9 · Просмотров: 37 176 |
Отправлено: 29.11.2009, 13:18 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
FreeM@N, я не буду этим заниматься, как и обновлением wTorrent`а на своем клиенте, т.к. вижу множество недостатков, которые лень дорабатывать: 0) дофигища доработок самого wTorrent, 1) увеличение количества дополнительных ретреккеров - то же самое, но с массивом, 2) навеска дополнительных параметров "для статистики", 3) расширение формы добавления торрент-файлов, чтобы пользователь сам вводил треккеры. 4) работа с треккерами торрентов, уже имеющимися в списке... Если вам это интересно, я не против. |
Форум: Патчер торрентов · Просмотр сообщения: #5244 · Ответов: 9 · Просмотров: 37 176 |
Отправлено: 28.11.2009, 22:29 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Каким образом происходит "тест треккера" патчером?(Тем самым, который ваш, под винду). Почиму-то мой ретреккер при проверке не проходит, но если его вручную добавить в список в uTorrent, его статус будет "работает". Например, http://gpk.org.ua:80/qbt/ не проходит проверку. |
Форум: Патчер торрентов · Просмотр сообщения: #5239 · Ответов: 73 · Просмотров: 255 247 |
Отправлено: 28.11.2009, 22:15 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Ой, спасибо за форк =)) Теперь это отдельная тема с обсуждением глюков и недоработок именно этого скрипта =) |
Форум: Патчер торрентов · Просмотр сообщения: #5237 · Ответов: 9 · Просмотров: 37 176 |
Отправлено: 28.11.2009, 1:25 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
FreeM@N, под пользователями я имел ввиду пиров >_<. Выложил исходник, вроде, работает. Скрипт, который апдейтит существующие торренты, пишется схожим образом. CODE <? Следует учесть, что папка /usr/home/ftpall/session/*.torrent не простая, нужно сделать chmod 666 /usr/home/ftpall/session/*.torrent и chmod 777 /usr/home/ftpall/session require ('conf/user.conf.php'); require ('lib/bdecode/class.bdecode.php'); require ('lib/bdecode/bencode.php'); foreach (glob('/usr/home/ftpall/session/*.torrent') as $file){ $torrent = new BDECODE($file); $bencode = new BEncodeLib(); if(!$torrent->result) continue; if($torrent->result['announce']){ if($torrent->result['announce-list']){ if(!in_array($tmp = array(TRACKER_URL), $torrent->result['announce-list'])) $torrent->result['announce-list'][] = $tmp; } elseif($torrent->result['announce'] != TRACKER_URL) $torrent->result['announce-list'] = array(array($torrent->result['announce']), array(TRACKER_URL)); } else $torrent->result['announce'] = TRACKER_URL; file_put_contents( $file, $bencode->bencode($torrent->result)); } ?> |
Форум: Патчер торрентов · Просмотр сообщения: #5234 · Ответов: 9 · Просмотров: 37 176 |
Отправлено: 27.11.2009, 16:23 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Как я понял, здесь патчер отдельно от рторрента существует. Если рторрент работает совместно в wTorrent`ом и только через него производятся все операции с файлами, давайте подумаем, как на него навесить патчер?! ------------------------------------------------------------------- Все, сделал. 1. Открыть /conf/user.conf.php и дописать Код define ('TRACKER_URL', 'http://127.0.0.1:80/announce');// GPK INJECTION где 127.0.0.1 - хост ретреккера, 80 - порт, /announce - путь2. Открыть /wt/cls/AddT.cls.php, найти в нем Код if($private == 'on'){.......} и дописать после закрывающей скобки (строка ~201)CODE // GPK INJECTION { elseif(TRACKER_URL){ $torrent = new BDECODE($uploadfile); $bencode = new BEncodeLib(); if($torrent->result['announce']){ if($torrent->result['announce-list']){ if(!in_array($tmp = array(TRACKER_URL), $torrent->result['announce-list'])) $torrent->result['announce-list'][] = $tmp; } elseif($torrent->result['announce'] != TRACKER_URL) $torrent->result['announce-list'] = array(array($torrent->result['announce']), array(TRACKER_URL)); } else $torrent->result['announce'] = TRACKER_URL; file_put_contents($uploadfile,$bencode->bencode($torrent->result)); } // GPK INJECTION } После чего, если в конфигурационном файле определена константа TRACKER_URL и торрент загружается без выставления опции `Частное` на странице загрузки (а не то `частное`, которое отмечается при создании торрента), то в список треккеров будет добавлен Ваш. Если же в торренте не было указано ни одного треккера, Ваш будет единственным. Если же хотите добавлять треккер и для частных торрентов, удалите else в строке elseif(TRACKER_URL){ ------------------------------------------------------------------- И, раз уж тема от специфическом торрент-клиенте, подскажите, как можно, ограничивая скорость по одному интерфейсу, не ограничивать ее по другому или как настроить рторрент чтобы он не ограничивал скорость отдачи определенным пользователям? |
Форум: Патчер торрентов · Просмотр сообщения: #5227 · Ответов: 9 · Просмотров: 37 176 |
Отправлено: 27.11.2009, 16:05 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Прошу заменить Код http://tracker.eastnet.com.ua:80/announce наКод http://10.20.25.5:3277/announce.php Это другая тачка, а на той пока настроил редирект для совместимости. Спасибо!)) |
Форум: Украина · Просмотр сообщения: #5226 · Ответов: 20 · Просмотров: 63 326 |
Отправлено: 1.11.2009, 1:26 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Это кошмар какой-то. Сайт не загружается. Пров ругает какой-то спамхост. Буду искать прокси ;-((( А лучше - хеш гугла! А вы может быть еще что-нть подскажите? |
Форум: Установка РеТрекера · Просмотр сообщения: #5028 · Ответов: 6 · Просмотров: 12 584 |
Отправлено: 1.11.2009, 1:22 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Видимо, я не достаточно ознакомился с данной темой и настрочил флуда... FreeM@N, спасибо за ссылку. ПС. То, что у меня получилось - gpk . org . ua / qbt / look . php |
Форум: Статистика · Просмотр сообщения: #5027 · Ответов: 151 · Просмотров: 661 400 |
Отправлено: 31.10.2009, 21:32 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Подскажите треккер, типа opentracker, но такой, чтобы на него можно было файлы заливать и он анонсировал только их. |
Форум: Установка РеТрекера · Просмотр сообщения: #5024 · Ответов: 6 · Просмотров: 12 584 |
Отправлено: 7.4.2009, 10:02 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Глюк был в следующем: при вызове file_get_contents(), добавлялись слеши - подправил, добавив stripslashes() |
Форум: Болталка · Просмотр сообщения: #3663 · Ответов: 4 · Просмотров: 25 037 |
Отправлено: 5.4.2009, 1:02 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
FreeM@N, спасибо, а можно что-нть без PEAR? |
Форум: Болталка · Просмотр сообщения: #3628 · Ответов: 4 · Просмотров: 25 037 |
Отправлено: 4.4.2009, 1:02 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Задача: обработать на PHP полученный торрент-файл и выловить оттуда: 1) инфо-хеш, 2) дату создания, 3) список треккеров, 4) дерево файлов, если таковое имеется. Для этой цели было найдено несколько исходных кодов: треккер FTS_1_0_1_BETA CODE function bdec($s) { if (preg_match('/^(\d+):/', $s, $m)) { $pl = strlen($m[1]) + 1; $v = substr($s, $pl, $m[1]); $ss = substr($s, 0, $pl + $m[1]); if (strlen($v) != $m[1]) return; return array('type' => "string", 'value' => $v, 'strlen' => strlen($ss), 'string' => $ss); } if (preg_match('/^i(\d+)e/', $s, $m)) { $v = $m[1]; $ss = "i" . $v . "e"; if ($v === "-0") return; if ($v[0] == "0" && strlen($v) != 1) return; return array('type' => "integer", 'value' => $v, 'strlen' => strlen($ss), 'string' => $ss); } switch ($s[0]) { case "l": return bdec_list($s); case "d": return bdec_dict($s); default: return; } } function bdec_list($s) { if ($s[0] != "l") return; $sl = strlen($s); $i = 1; $v = array(); $ss = "l"; for (;;) { if ($i >= $sl) return; if ($s[$i] == "e") break; $ret = bdec(substr($s, $i)); if (!isset($ret) || !is_array($ret)) return; $v[] = $ret; $i += $ret["strlen"]; $ss .= $ret["string"]; } $ss .= "e"; return array('type' => "list", 'value' => $v, 'strlen' => strlen($ss), 'string' => $ss); } function bdec_dict($s) { if ($s[0] != "d") return; $sl = strlen($s); $i = 1; $v = array(); $ss = "d"; for (;;) { if ($i >= $sl) return; if ($s[$i] == "e") break; $ret = bdec(substr($s, $i)); if (!isset($ret) || !is_array($ret) || $ret["type"] != "string") return; $k = $ret["value"]; $i += $ret["strlen"]; $ss .= $ret["string"]; if ($i >= $sl) return; $ret = bdec(substr($s, $i)); if (!isset($ret) || !is_array($ret)) return; $v[$k] = $ret; $i += $ret["strlen"]; $ss .= $ret["string"]; } $ss .= "e"; return array('type' => "dictionary", 'value' => $v, 'strlen' => strlen($ss), 'string' => $ss); } PHP Classes / BDecode - bdecode_2006_10_28.zip ( 2.45 килобайт ) Кол-во скачиваний: 49 И немного похожий, взятый из TorrentParse v2.2 CODE class BDecode { function numberdecode($wholefile, $start) { $ret[0] = 0; $offset = $start; // Funky handling of negative numbers and zero $negative = false; if ($wholefile[$offset] == '-') { $negative = true; $offset++; } if ($wholefile[$offset] == '0') { $offset++; if ($negative) return array(false); if ($wholefile[$offset] == ':' || $wholefile[$offset] == 'e') { $offset++; $ret[0] = 0; $ret[1] = $offset; return $ret; } return array(false); } while (true) { if ($wholefile[$offset] >= '0' && $wholefile[$offset] <= '9') { $ret[0] *= 10; $ret[0] += ord($wholefile[$offset]) - ord("0"); $offset++; } // Tolerate : or e because this is a multiuse function else if ($wholefile[$offset] == 'e' || $wholefile[$offset] == ':') { $ret[1] = $offset+1; if ($negative) { if ($ret[0] == 0) return array(false); $ret[0] = - $ret[0]; } return $ret; } else return array(false); } } function decodeEntry($wholefile, $offset=0) { if ($wholefile[$offset] == 'd') return $this->decodeDict($wholefile, $offset); if ($wholefile[$offset] == 'l') return $this->decodelist($wholefile, $offset); if ($wholefile[$offset] == "i") { $offset++; return $this->numberdecode($wholefile, $offset); } // String value: decode number, then grab substring $info = $this->numberdecode($wholefile, $offset); if ($info[0] === false) return array(false); $ret[0] = substr($wholefile, $info[1], $info[0]); $ret[1] = $info[1]+strlen($ret[0]); return $ret; } function decodeList($wholefile, $start) { $offset = $start+1; $i = 0; if ($wholefile[$start] != 'l') return array(false); $ret = array(); while (true) { if ($wholefile[$offset] == 'e') break; $value = $this->decodeEntry($wholefile, $offset); if ($value[0] === false) return array(false); $ret[$i] = $value[0]; $offset = $value[1]; $i ++; } // The empy list is an empty array. Seems fine. $final[0] = $ret; $final[1] = $offset+1; return $final; } // Tries to construct an array function decodeDict($wholefile, $start=0) { $offset = $start; if ($wholefile[$offset] == 'l') return $this->decodeList($wholefile, $start); if ($wholefile[$offset] != 'd') return false; $ret = array(); $offset++; while (true) { if ($wholefile[$offset] == 'e') { $offset++; break; } $left = $this->decodeEntry($wholefile, $offset); if (!$left[0]) return false; $offset = $left[1]; if ($wholefile[$offset] == 'd') { // Recurse $value = $this->decodedict($wholefile, $offset); if (!$value[0]) return false; $ret[addslashes($left[0])] = $value[0]; $offset= $value[1]; continue; } else if ($wholefile[$offset] == 'l') { $value = $this->decodeList($wholefile, $offset); if (!$value[0] && is_bool($value[0])) return false; $ret[addslashes($left[0])] = $value[0]; $offset = $value[1]; } else { $value = $this->decodeEntry($wholefile, $offset); if ($value[0] === false) return false; $ret[addslashes($left[0])] = $value[0]; $offset = $value[1]; } } if (empty($ret)) $final[0] = true; else $final[0] = $ret; $final[1] = $offset; return $final; } } // End of class declaration. // Use this function. eg: BDecode("d8:announce44:http://www. ... e"); function BDecode($wholefile) { $decoder = new BDecode; $return = $decoder->decodeEntry($wholefile); return $return[0]; } Все 3 варианта почему-то не парсят торренты, либо при работе превышают 20 метров выделяемой памяти. Помогите, кто чем может. Заранее благодарен.
Прикрепленные файлы
|
Форум: Болталка · Просмотр сообщения: #3613 · Ответов: 4 · Просмотров: 25 037 |
Отправлено: 26.2.2009, 16:35 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Почитал мануальчик, тот самый, который "недоперевод" и по быстрому накатал "аннонсер". Интересно ваше мнение о том, на сколько он может быть глюкавым и работает ли он вообще? Требования: PHP Установка: распаковать, сделать Код chmod 777 share работает на файлах, блокировок нету ;-(От правильности сидеров/личеров я абстрагировался, т.к. чтобы реально отследить, сколько пиров завершило скачку и какой завершил, а какой - нет, нужно отслеживать их отдельно; достаточное количество пиров для ответа никак не рассматривается: отдаются сразу все пиры, потом можно как-нть переделать. Главное - минимум интеллекта и работает на файлах !-)
Прикрепленные файлы
|
Форум: Установка РеТрекера · Просмотр сообщения: #2239 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 1.2.2009, 18:49 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Tracker 'scrape' Convention я лениво перевожу, поэтму понадеялся на авось и перенаправил все на аннонс-пхп Код RewriteEngine On RewriteRule ^announce(.*)$ /announce.php$1 RewriteRule ^scrape(.*)$ /announce.php$1 |
Форум: Установка РеТрекера · Просмотр сообщения: #1430 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 1.2.2009, 17:22 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
в логах замечено, что клиенты иногда отправляют запрос: some.host.net/scrape почему и чем бы это залепить? |
Форум: Установка РеТрекера · Просмотр сообщения: #1426 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 1.2.2009, 16:53 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
А можно его на 2 разных хоста повесить, но использовать одну таблицу БД на двоих? Там какой-то cache создается, возможны ли с ним проблемы? |
Форум: Установка РеТрекера · Просмотр сообщения: #1421 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 23.1.2009, 14:28 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Потеряли 1 ретреккер сети "Притекс", узнают админы, будет мне http://193.30.242.149:2710/announce Кстате, вот ссылка на тему, с которой я к вам попал. http://altfast.ru/1000029122-sozdan-retrek...ja-skachki.html я попросил автора темы исправить инструкцию под КХ-ИКС |
Форум: Украина · Просмотр сообщения: #1172 · Ответов: 20 · Просмотров: 63 326 |
Отправлено: 23.1.2009, 13:34 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Vedmed, а фтопку их! ip2long работает с IPv4 long2ip работает с IPv4 из decode_ip возвращается long2ip я чего-то недопонимаю, или единственное место, в котором предусмотрено IPv6 - это размер поля в БД? |
Форум: Установка РеТрекера · Просмотр сообщения: #1169 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 23.1.2009, 12:00 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
что может быть плохого, если удалить из таблицы поле ip_real , а ip сделаю типом int ? + подправить код. зачем вообще 2 написанных по-разному IP адреса? Или, давайте, я сделаю, а потом опишу все неприятности?!! UPD в подправил announce.php и common.php в announce, в самом конце упростилась обработка: ip не декодируется и не преобразуется в long, а просто выбирается и передается там много еще можно упрощать и ускорять |
Форум: Установка РеТрекера · Просмотр сообщения: #1165 · Ответов: 23 · Просмотров: 37 907 |
Отправлено: 23.1.2009, 11:54 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Пардон, Kirill Masuk, никакой слободы Код C:\>tracert www.newhouse.org.ua Похоже, идет через kh-ix Трассировка маршрута к www.newhouse.org.ua [194.114.135.185] ... 4 24 ms 17 ms 14 ms 193.110.156.5 5 1 ms 5 ms 14 ms scana.kh-ix.net [193.110.156.166] 6 2 ms 5 ms 14 ms su.scana.net.ua [194.114.132.8] 7 10 ms 14 ms 26 ms 194.114.135.185 Трассировка завершена. |
Форум: Украина · Просмотр сообщения: #1164 · Ответов: 33 · Просмотров: 73 159 |
Отправлено: 23.1.2009, 1:57 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Код 4=http://195.95.151.61:2710/announce Прошу прощения за настойчивость, уберите эти 3 свсем; это единый, мой камп и работать ретреккером он не будет. 5=http://gpk.net.ru:2710/announce 6=http://10.24.24.113:2710/announce |
Форум: Украина · Просмотр сообщения: #1160 · Ответов: 20 · Просмотров: 63 326 |
Отправлено: 23.1.2009, 1:52 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Как было сказано выше, нет, но она пытается выкрутиться, открыв сервер в Интернет. Хотя лично у меня, и он не работает: Код C:\>tracert www.newhouse.org.ua И так до бесконечности Трассировка маршрута к www.newhouse.org.ua [194.114.135.185] с максимальным числом прыжков 30: ... 4 4294967283 ms 15 ms 13 ms 193.110.156.5 5 21 ms 17 ms 42 ms scana.kh-ix.net [193.110.156.166] 6 4 ms 14 ms 17 ms scana.kh-ix.net [193.110.156.166] 7 5 ms 48 ms 17 ms scana.kh-ix.net [193.110.156.166] 8 3 ms 14 ms 27 ms scana.kh-ix.net [193.110.156.166] 9 15 ms 12 ms 15 ms scana.kh-ix.net [193.110.156.166] |
Форум: Украина · Просмотр сообщения: #1159 · Ответов: 33 · Просмотров: 73 159 |
Отправлено: 22.1.2009, 23:23 | |
Активный участник Группа: Пользователи Сообщений: 37 Регистрация: 18.1.2009 Пользователь №: 281 |
Он тестирует только те, которые Вы прописали, но не все. + ответ на вопрос, заданный Вами в другой теме. Предлагаю Притекс (экс-Фастнет) переместиь или скопировать в секцию Харьков КХ-ИКС а EastNET удалить совсем, потому что если и будет треккер, то обязательно доступен КХ-ИКС |
Форум: Украина · Просмотр сообщения: #1155 · Ответов: 33 · Просмотров: 73 159 |
Открытая тема (есть новые ответы) Открытая тема (нет новых ответов) Горячая тема (есть новые ответы) Горячая тема (нет новых ответов) |
Опрос (есть новые голоса) Опрос (нет новых голосов) Закрытая тема Тема перемещена |
Текстовая версия | Сейчас: 28.5.2024, 18:35 |