Установка Direct Connect клиента microDC2 на маршрутизатор с DD-WRT
From DD-WRT Wiki
Пока это черновик... В течение некоторого времени напишу сюда как я настраивал microdc2 у себя на роутере. Все уже работает, осталось только описать... Просьба до релиза не вносить правку и НЕ СЛЕДОВАТЬ ДАННОЙ ИНСТРУКЦИИ --Sionyx 23:14, 7 December 2009 (CET)
Contents |
[edit] Вступление
microdc2 является клиентом для пиринговых сетей работающих по протоколу direct connect. Одним из широкораспространенных клиектов для ОС Windows является StrongDC++.
Если вы решили установить к себе на роутер клиент для обмена файлами в сети DC, то, вероятно, у вас уже настроен внешний диск для накопления и раздачи файлов, и скорее всего настроен сервер samba для доступа к этим файлам из ОС Windows.
[edit] Ограничения программы
microdc2 не умеет:
- подключаться к серверу, если указан хост, а не ip-адрес. Чтобы узнать ip-адрес, зная хост, воспользуйтесь командой ping;
- подключаться к нескольким серверам одновременно;
[edit] Установка
Установка microdc2 проходит в несколько этапов.
- Установим непосредственно microdc2
ipkg-opt install microdc2
- Далее для последующего использования microdc2 нам будет необходима менеджер экранов screen
ipkg-opt install screen
- Для менеджера screen понадобится так же библиотека ncursesw
ipkg-opt install ncursesw
Если во время установки потребуется еще какие-то пакеты, сообщите об этом, пожалуйста.
[edit] Запуск microdc2 в тестовом режиме
Т.к. после установки сразу же хочется проверить, работает ли программа - запустим ее. Настройки будем делать позже.
Запускаем microdc2
root@DD-WRT:/# microdc2
Программа выводит, что расшаренных директорий пока нет, и ждет ввода команд.
Loading local FileList...done Sharing 0 bytes (0B) totally microdc2>
Далее последовательно вводим следующие команды
share /путь_к_дирректории_с_файлами/ set nick User connect 195.91.*.*
Если хаб не требует обязательного расшаривания файлов, команду share можно пропустить.
Если хаб требует подключения через порт отличный от 411, то номер порта вводится после адреса через двоеточие
connect 195.91.*.*:412
Если вы знаете только host хаба, то воспользуйтесь командой ping, чтобы узнать ip-адрес (для этого необходимо выйти из microdc2 или открыть другой терминал.
Если подключение прошло успешно, то в консоль выводится информация о подключении, например:
Connecting to hub on 195.91.*.*:411. Connected to hub from 172.20.*.*:1032. Public: This Hub Is Running Version 0.9.8d-RC2 (Thursday September 13 2007) of VerliHub[RunTime:26weeks 1days ].[Current User Count:300]. Hub name is ***. Nick accepted. You are now logged in.
Если вы это видите, то подключение прошло удачно, и теперь необходимо отключиться от сервера, выйти из программы и перейти к настройкам.
microdc2> disconnect Disconnecting from hub. Shutting down hub connection. microdc2> exit root@DD-WRT:/#
[edit] Настройка microdc2
Для начала в настройках роутера в стартап скрипте добавляем строчку
export LANG="ru_RU.UTF-8"
Это позволит microdc2 правильно работать с русским языком, в том числе с русскими именами в разделе Ext3.
Далее в директории /opt/etc/.microdc2/ создаем файл config. Для этого переходим в папку /opt/etc/
cd /opt/etc/
создаем поддиректорию .microdc2/ и переходим в нее
mkdir .microdc2 cd .microdc2/
Далее необходимо создать файл config следующего содержания:
%Имя пользователя set nick username %Пароль, если нужен set password ***
Файл можно создать прямо на роутере, используя консольные редакторы или создать на компьютере, записать в доступную через samba или ftp директорию, а дальше переместить в нужное место командой mv, например
mv /mnt/shared/common/config /opt/etc/.microdc2/
Если после создания файла настройки micdodc2 его не подгружает, перенесите настроечный файл в домашнюю дирректорию:
сd ~ mkdir .microdc2 cd .microdc2/
[edit] Запуск microdc2
Правильно настроенный microdc2 при запуске выводит следующее:
Loading local FileList...done Sharing 2936155648 bytes (2,8GiB) totally Listening address set to 172.20.*.*. Logging to `/mnt/shared/common/log/microdc2.log'. Connecting to hub on 195.91.*.*:411. Connected to hub from 172.20.*.*:1702. Public: This Hub Is Running Version 0.9.8d-RC2 (Thursday September 13 2007) of VerliHub [RunTime:26weeks 14hours ].[Current User Count:292]. filelist_update: /mnt/shared/common/Video directory is already shared as subfolder of existing shared tree Sharing 2936155648 bytes (2,8GiB) totally Sharing 2936155648 bytes (2,8GiB) totally Hub name is ***. Nick accepted. You are now logged in.
[edit] Запуск microdc2 в роли "демона"
Режим работы в роли демона в microdc2 не предусмотрен, поэтому, чтобы держать его постоянно запущенным и периодически управлять им, используется утилита screen
Далее исходный текст взят с link AsusForum.NET -- WL500g, автoр Reyter
Далее опишу как лично я немного упростил использование microdc2.
...
2) поскольку microdc2 имеет смысл запускать только из-под sreen, то его нужно установить, если он не установлен:
ipkg install screen
3) для удобной работы с microdc2 в окружении screen создаю два скрипта. Первый с именем dcs , он будет запускать microdc2 в screen с прицепленным конфигом (о нем чуть позже):
#!/bin/sh screen -dmS microdc /opt/bin/microdc2 -c /opt/etc/.microdc2/config
Второй с именем dc будет "вытаскивать" консоль screen
#!/bin/sh screen -x microdc
... и кладу оба скрипта опять же в /opt/bin . Ну и не забудьте сделать оба файла исполняемыми. Теперь для ручного запуска достаточно просто набрать в консоли dcs Для автоматического запуска просто нужно прописать в post-mount
/opt/bin/dcs
Чтобы вызвать окно с работающим microdc2, достаточно просто набрать dc в консоли. Чтобы скрыть окно не прерывая работы программы, нужно последовательно нажать Ctrl-A и Ctrl-D.
От себя хочу добавить, что так и не смог заставить скрипты запускаться просто по имени, поэтому приходится запускать так:
# sh dcs # sh dc
[edit] Использование microdc2
[edit] Проверка статуса программы
[edit] Подключение к пользователю
[edit] Скачивание файлов
[edit] Просмотр состояния загрузки
[edit] Общение с другими пользователями
SiONYX
Источники:
- http://godin.net.ru/en/blog/07/09/22/nastroika-microdc2-dlya-domashnego-servera-pod-upravleniem-gentoo-linux
- http://itblog.su/linux-screen.html
- http://ubuntuforums.org/showthread.php?t=702350
- http://209.85.135.132/search?q=cache:NCjscc-hcRcJ:wl500g.info/showthread.php%3Ft%3D8896%26page%3D2+microdc2+on+router&cd=4&hl=ru&ct=clnk&client=opera