Содержание

Поднимаем свою Vertcoin ноду P2Pool *c merged-ом и плюхами / Хабр

Проснулся утром, сравнил статистику начислений честно намайненных монет в кабинете пула с показателями калькулятора, и окончательно убедился в том что пул недоначисляет?

Надоело платить комиссии «не за что»?

Или решил поддержать децентрализацию сети и уйти с крупного пула?

А может просто захотелось «поднять» что-то своё?

Не важно какова причина, важно другое — в голове засело едкое, ослепляющее желание что-то поменять, и прекращать майнить «через дядю».

И между ней и тобой появляется один простой, но в то же время очень резонный вопрос — «Как?».

Ответ на него такой же простой — «Легко!».

Чем же так хорош P2Pool и как его едят?

Во-первых — это open source, со всей вытекающей от сюда прозрачность. В любом случае всегда можно самостоятельно проверить интересующие моменты.
Во-вторых — майнинг на п2пуле эквивалентен соло майнингу с финансовой точки зрения, разумеется на некотором промежутке времени.
В третьих — он способствует децентрализации сети.
И если в первом пункте вопросов не возникает, то последние два требуют базового понимая что же из себя представляет п2пул.

Если говорить очень грубо и кратко, то это множество узлов(нод), работающих скоординированно и в то же время независимо. На каждой ноде админ вправе установить свои параметры, как комиссий, так и генерации блоков, которые будут иметь силу только для майнеров на данной ноде. В то же время найденный на одной ноде блок распределяется всем участникам п2пула, пропорционально ихнему вкладу в общее дело. Всё это закреплено и учитывается через собственные шары пониженной сложности и блокчейн п2пула (sharechain). Такой себе военно-политический альянс независимых нод, выступающих единым фронтом. О P2Pool, нежно и подробно.

Возвратимся к нашим пунктам. При нулевых комиссия (нода ведь наша собственная — зачем нам ставить самим себе комиссии, и потом их же получать?) мы получаем пропорциональное нашему вкладу количество монет от найденного блока genereted транзакцией напрямую. Более того — помимо базового значения монет в блоке, распределяются и включённые в блок комиссии. Всё как при соло майнинге, только в меньших количествах, но на порядок чаще.

Говоря об краеугольном камне децентрализации, об который между прочим уже чиркнули днищами такие лайнеры как Bitcoin и Litecoin и «атаке 51 процента», когда один пул может единолично решить, какие транзакции ему обрабатывать, а какие нет, можно высказываться в довольно широком спектре — начиная от панически истерического, и заканчивая пофигистически нейтральным. Но то что это «не есть хорошо», ясно всем. И пусть пока обошлось без эксцессов и крупные пулы выступают о недопущении «атаки 51 процента», повод для тревоги есть — дядя Адя тоже много говорил и ему тоже верили, правда до тех пор пока не стало уже слишком поздно. В случае же если же P2Pool займёт 51% хешрейта сети, или даже 70% — без разницы, существенно влиять на выборочность обработки транзакций у него не выйдет — не забываем что P2Pool состоит из независимых нод, каждая из которых сама и только для себя устанавливает правила и критерии принимаемых на обработку транзакций.

В данном примере будет использовать сервер с установленным на него Debian 7, и криптовалюта Vertcoin(сайт, форум, реддит). Почему именно vertcoin? По тому что данный форк не только взял самое лучшее от своих предшественников, биткоина и лайткоина, но и добавил много своего — стелс транзакции (Stealth Payments), защищённость от специализированного оборудования для майнинга, т.е. ASIC-ов, за счёт меняющегося со временем алгоритма (а если быть точным, то изменяется параметр хеш функции), а еще верткоин вырастет в цене во много-много-много раз, и все нынешние майнеры станут миллионерами. В прочем хватит о верткоине — статья не о нём, и всё написанное имеет место быть для подавляющего большинства остальных криптовалют, разумеется при некоторых особенностях и соответствующей адаптации действий под конкретно взятую криптовалюту и ОС.

Закладываем основу: бинарники и скрипты

И так, приступаем.
Первым делом следует обновить имеющийся софт

apt-get update
apt-get dist-upgrade

Далее возможны два варианта — скачать готовый исполняемый файл кошелька, либо самостоятельно скомпилировать его на сервере. Если решаем скачать уже готовый бинарник, то можно сразу переходить к следующему пункту. Ниже будет рассмотрен второй вариант, как более общий и универсальный.
Загружаем на сервер необходимые пакеты, для сборки бинарника и git (актуальный список всегда можно посмотреть в документации):

apt-get install build-essential libssl-dev libdb-dev libdb++-dev libboost-dev libminiupnpc-dev libboost-all-dev
apt-get install git

Сливаем исходники с репозитория гитхаба и собираем бинарник в максимальной «комплектации» и защищённостью:

git clone https://github.com/vertcoin/vertcoin
cd ~/vertcoin/src
make -f makefile.unix USE_UPNP=1 USE_IPV6=1 -e PIE=1

Подробнее об параметрах можно посмотреть там же на странице документации.
Если на сервере стоит многоядерный процессор(что крайней рекомендуется), можно также добавить параметр -jN, где N — количество ядер. Это позволит собирать в указанное количество потоков и значительно сократить время компиляции. Например, для двухъядерной системы строка будет выглядеть следующим образом:

make -j2 -f makefile.unix USE_UPNP=1 USE_IPV6=1 -e PIE=1

Если всё прошло успешно, то на выходе получаем бинарник vertcoind.

Теперь займёмся скриптом p2pool-а, скопируем и установим его:

cd ~
apt-get install python-zope.interface python-twisted python-twisted-web
git clone https://github.com/donSchoe/p2pool-n
cd ~/p2pool-n/py_modules/vertcoin_scrypt
python setup.py install

Теперь можно создать файл конфигурации для кошелька и внести в него необходимые данные

nano ~/.vertcoin/vertcoin.conf
server=1
gen=0
rpcport=5899
rpcallowip=127.0.0.1
rpcuser=user
rpcpassword=password

После чего запустить в одном окне клиент кошелька, а в другом скрипт p2pool-а

~/vertcoin/src/vertcoind --server
python ~/p2pool-n/run_p2pool.py --net vertcoin

И в принципе худо-бедно нода начнёт работать, можно нацеливать на неё свою ферму, и начинать пиарить на всех ресурсах своё творение. Но мы этого пока-что делать не будем по одной простой причине — «А где же обещанные плюхи?».

Создаём для наших целей отдельного пользователя

Вещь хоть в принципе и логичная, но далеко не очевидная, как минимум для человека до этого не сильно сталкивавышемся с администрированием серверов. Создадим домашний каталог нового пользователя, и перенесём на «правильные» места ранее полученные компоненты

cd /home
mkdir vtc
mv /root/vertcoin/src/vertcoind /usr/bin/
mv /root/p2pool-n /home/vtc/

Для добавления нового пользователя в систему я использовал команду adduser. Сначала создадим новую группу для пользователя (в примере её имя — vtc), потом создадим нового пользователя (не будем изощряться с фантазией, и назовём пользователя так же — vtc) и добавим его в данную группу. Полный список команд можно посмотреть, запустив утилиту adduser с параметром —help.

addgroup --gid 1000 vtc
adduser --home /home/vtc --shell /bin/false --no-create-home --uid 1000 --gid 1000 vtc
adduser vtc vtc

Добавлю несколько комментариев, касательно вышенаписанного, по строкам:

  1. Создаем группу с названием vtc и идентификатором 1000.
  2. Создаём уже пользователя с именем vtc, идентификатором 1000, указываем путь к его домашнему каталогу и то что его создавать не нужно(мы его создали шагом ранее), а так же указываем какая программа будет отвечать до доступ к шеллу, при попытке SSH подключения под данным пользователем. В качестве программы выбран простой бинарник, который в любом случае возвращает логическую «ложь» — другими словами, подключиться через SSH под данным аккаунтом не выйдет. Сделано это в целях безопасности. Среди вопросов, задаваемых в процессе добавления юзера, достоин ответа только пароль. Остальные можно прощелкивать энтером.
  3. Добавляем пользователя с именем vtc в группу с названием vtc.

Проверить корректность проделанных манипуляций можно просмотрев содержимое системных файлов passwd и group, которые лежат в папке /etc. Делается это следующими командами через стандартный редактор nano(либо любой другой):

cd /etc
nano passwd
...
nano group

Там же можно внести и косметические правки, например изменить программу доступа по SSH, или удалить назойливые запятые в описании пользователя (которые по идее должны разделять имя/фамилию/название фирмы/etc, в случае если эти данные вводились).
На окончание указываем владельца нашей директории /home/vtc — очевидно что им будет наш новый пользователь vtc. Флаг -R указывает, что данное имеет место быть и для всех вложенных каталогов и файлов.

chown -R vtc:vtc /home/vtc/

Так же, установив на сервер FTP клиент, например vsFTPd (легко ставится пакетом через apt-get, немного геморно настраивается, но зато довольно хорош в плане безопасности — а когда речь идёт о криптовалютах, безопасность никогда не бывает чрезмерной), можно коннектится к серверу под данным пользователя vtc.

Теперь можно приступить к настройке клиента верткоина. Создадим скрытый каталог .vertcoin и в нём файл конфигурации vertcoin.conf со следующими параметрами:

cd /home/vtc
mkdir .vertcoin
nano .vertcoin/vertcoin.conf
server=1  
gen=0
rpcport=5899
rpcallowip=127.0.0.1
rpcuser=vertcoin
rpcpassword=vtcRPCpass
mintxfee=0.0005
minrelaytxfee=0.0005

  • server — указывает на то, что этот узел будет являться «серверным». Понимаем как-то так на интуитивном уровне.
  • gen — отключает автоматический майнинг монет на процессоре, из-за его крайней неэффективности.
  • rpcport/allowip/user/password — задаёт значения для коммуникации и приём/отдачу команд кошельком. Менять первый два параметра крайне не рекомендуется. Имя/пароль устанавливаем на своё усмотрение, последний — чем длиннее и нетривиальней, тем лучше. Рекомендуемая длина — от 20 знаков.
  • Последние два параметра имеют отношение к комиссиям — минимальное значение комиссий от транзакции, необходимое для включение её в сгенерированный нодой блок и минимальное значение, при котором нода передаст информацию о комиссии дальше по сети. Хотим больше зарабатывать — увеличиваем значение. Хотим поддержать сеть — ставим ноль.

Сохраняем и закрываем редактор. После чего изменяем права доступа к созданному файлу на «только чтение для владельца» (если ты параноик, то это еще не значит, что твои монеты никто не хочет украсть), и опять же обновляем владельца каталога /home/vtc:

cd .vertcoin
chmod 0400 vertcoin.conf
chown -R vtc:vtc /home/vtc/

Теперь залогинимся под нашим пользователем и запустим кошелёк. Ключ -s указывает, какой именно шелл использовать (помните мы указали бинарник false в качестве шелла для пользователя? простой логин под юзером vtc просто завершит сеанс)

su -s /bin/bash vtc
vertcoind -daemon

В ответ должны получить фразу о том, что сервер стартовал. Получать текущую информацию можно командой getinfo:

vertcoind getinfo
...
{
    "version" : 80701,
    "protocolversion" : 70002,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "blocks" : 4941,
    "timeoffset" : 0,
    "connections" : 8,
    "proxy" : "",
    "difficulty" : 0.00238789,
    "testnet" : false,
    "keypoololdest" : 1405374049,
    "keypoolsize" : 101,
    "paytxfee" : 0.00000000,
    "mininput" : 0.00001000,
    "errors" : ""
}

В принципе большинство полей в описании не нуждаются. Максимум на чём можно остановить внимание, это blocks. Сейчас клиент скачивает с сети всю историю транзакций, а соответственно и блоков, что может занять не один час — на момент написания данной строки в системе было 121578 блоков. Когда клиент получит последний текущий блок (можно легко посмотреть по любому block explorer-у для данной валюты, либо когда спадёт постоянная нагрузка на CPU сервера), наш клиент станет полноценным участником сети.
Если спустя несколько минут количество соединений (connections) так и будет нуль, это может означать что клиент не смог самостоятельно найти другие узлы сети, по крайней мере за приемлемое время. В этом случае можно либо просто ждать его «прозрения», либо добавить вручную действующие узлы в файл конфигурации (список работающих узлов зачастую публикуется в первом сообщении темы об монете на форумах, вместе с остальной общей информацией) через команду addnode:

addnode=ip_address_or_domain_name

Разлогиниваемся из под юзера vtc, оставляя клиент спокойно делать своё непростое дело.

exit

Merged mining: вступление

Приступим к созданию основы для merged майнинга. Если говорить кратко, то это позволяет параллельно майнить несколько валют, используя при попытке создать блоки для двух и более валют, одни и те же данные — майним и получаем одну основную валюту, а к ним бонусом еще и другие. Конечно можно самостоятельно майнить merged валюты как основные, но с финансовой точки зрения это бесперспективно.
Далеко и далеко не все валюты возможно майнить таким образом — есть основная валюта и есть merged валюта, которую можно майнить совместно с основной. Данное отношение не является симметричным. Разумеется, merged валюта никогда не выходит из тени своего старшего брата, по этому целесообразность их будущего под вопросом.

В данном примере основная валюта — верткоин, merged валюты к нему — Monocle(сайт и форум) и Parallaxcoin(форум).

Несколько слов об них:

  • Монокли — монета от разработчиков верткоина. Задумана как испытательный полигон для тестирования нововведений, перед введением их на верте.
  • Параллаксы — говнофорк, который может параллельно майнится сразу с несколькими другими монетами, в том числе и с другими говнофорками. В последнее время соскамился чуть более чем полностью, и представляет чисто академическую ценность.

Так же, примером совместного майнинга является пара bitcoin и namecoin (последний можно майнить параллельно с BTC). Для litecoin тоже есть свои merged валюты.

Описывать еще раз для каждой из монет вышеописанные шаги по сборке и настройки не буду, а просто приведу порядок действий:

  1. Скачиваем исходники с GitHub-а — монокли/параллаксы.
  2. Собираем бинарники.
  3. Переносим их в «правильное» место — /usr/bin/ в данном случае.
  4. Создаём служебные каталоги и файлы конфигурации для обоих монет — .monocle & monocle.conf и parallaxcoin & parallaxcoin.conf соответственно, всё в том же каталоге /home/vtc. Ниже будет приведён пример содержимого данных файлов. Выставляем права доступа конфигурационных файлов и еще раз обновляем владельца содержимого каталога /home/vtc/, ради новых файлов и каталогов.
  5. Заходим под нашим пользователем, и запускаем кошельки на синхронизацию с сетью.

monocle.conf

server=1
gen=0
rpcport=6888
rpcallowip=127.0.0.1
rpcuser=monocle
rpcpassword=monRPCpass
mintxfee=0.01
minrelaytxfee=0.01

* комиссия в 0.01 монеты является для моноклей обязательной и минимально возможным. Без неё транзакция просто не будет восприниматься всей остальной сетью.
parallaxcoin.conf

server=1
gen=0
rpcallowip=127.0.0.1
rpcport=7817
rpcuser=parallaxcoin
rpcpassword=plxRPCpass
mintxfee=0.0005
minrelaytxfee=0.0005

В скором времени должен стартовать еще один говнофорк — Umbrella, а если быть точным — то целых четыре: форки биткоина и лайткона стартуют уже сегодня, а верта и дарка — 1 августа. Если это всё-таки произойдёт, то в дополнение к текущему набору монет на ноду можно будет добавить еще и merged майнинг «зонтиков».

Улучшаем «производительность» ноды

В одноранговой сети, коей формально и является любая криптовалюта, главных и каких либо регуляторов нету как таковых. По этому «прав» будет тот, кто кричит о своей «правоте» «раньше» и «громче». Да да, речь идёт как раз о тех случаях, когда два узла находят один и тот же блок одновременно — кто раньше и быстрее успел всех оповестить об этом, тот и в выигрыше. Проигравший же остаётся с ничем (а если быть полностью корректным — то с орфаном (orphan)). Такая себе битва за время, где каждая миллисекунда на счету. По этому будем учить наш узел сообщать об собственных успехах быстро и на максимальное количество других узлов, тем самым повышая вес нашей ноды в сети.

«Скорость»

1). Одним из критериев, который влияет на скорость сборки и дальнейшей передачи блока по сети, является его размер. Стандартный максимальный размер блока, который может сгенерировать узел, равен 250000 байтам. Что-бы ускорить вышеназванные процессы мы уменьшим его размер в два раза. В теории это конечно может понизить нашу прибыль, за счёт не включения в блок большего количества транзакций (а следовательно и комиссий за них), но лично моё мнение что выигрыш от увеличения скорости будет больше. Делается это добавлением следующей строки в файл конфигурации клиента всех наших трёх монет (тот что *.conf)

blockmaxsize=125000

2). Так же важным параметром, влияющим на скорость, является распределение процессов между ядрами. Это будет рассмотрено ниже в части про настройку демонов.

«Громкость»

1). Увеличим максимальное количество возможных соединений для нашего клиента, тем самым позволяя ему сообщать об найденных блоках на большее количество других узлов. Для этого снова дополняем файлы конфигурации наших клиентов строкой:

maxconnections=500

2). Снятие ограничений файрвола (зачастую им выступает iptables). Скажу сразу — на ОС Debian под OpenVZ данная возможность отсутствует по одной простой причине — ограничений нету в принципе, по крайней мере по заявлению моего хостера и некоторых людей на форумах. По этому данная часть будет несколько абстрактной, без чётких указаний «что и как» делать.
Нам нужно задать следующие правила для файрвола:

# Разрешаем 8 подключений на подсеть класса /24
-A INPUT -p tcp --syn --dport PORT -m connlimit --connlimit-above 8 --connlimit-mask 24 -j REJECT --reject-with tcp-reset
# Разрешаем два подключения с одного IP
-A INPUT -p tcp --syn --dport PORT -m connlimit --connlimit-above 2 -j REJECT --reject-with tcp-reset
# Разрешаем TCP соединение в случае удачного выполнения предыдущих правил
-A INPUT -m state --state NEW -m tcp -p tcp --dport PORT -j ACCEPT

Данные правила следует задать для всех портов, через которые будет работать наша нода — как для портов, которые используют клиенты криптовалют, так и скрипт p2pool-а. Посмотреть кто какой порт слушает можно через команду

netstat -tunap

Эти правила должны автоматически загружаться и выгружать при старте/выключении системы. Делается это двумя способами — неправильным (через ручную загрузку правил, за что «другой сисадмин, пришедший на ваше место, будет очень долго вас материть»(с)) и правильным (через демона iptables-persistent). Нормальный how-to можно посмотреть тут.
Add: для возможности повышения этих ограничений в ядро должен быть включен модуль connlimit. Если же этот модуль не включен — нету и никаких ограничений, а значит и самой проблемы. by poiuty

Настройка демонов

Приступим к ключевому моменту всех наших изысканий — правильным автозапуском клиентов и скрипта p2pool-а с merged майнинга при старте системы. Осуществляться это будет стандартными способами — через создание и настройку демонов. Для этого в системе есть специальной каталог, где лежат все «сценарии управления» — /etc/init.d/. В данном каталоге лежит шаблон — skeleton, по образу и подобию которого мы будем делать свои сценарии. Перейдём в данный каталог и скопируем шаблон:

cd /etc/init.d/
cp skeleton vertcoind

Откроем файл для редактирования, и внесём изменения:

nano vertcoind
#! /bin/sh
### BEGIN INIT INFO
# Provides:          vertcoind
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Auto init Vertcoind
# Description:       Auto init Vertcoind via booting system
### END INIT INFO

# Author: vk <[email protected]>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Vertcoin daemon"
NAME=vertcoind
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="-daemon"
DAEMON_LOADER="/usr/bin/taskset 0x1 "$DAEMON
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
CHUID=vtc:vtc
...
do_start()
{
	# Return
	#   0 if daemon has been started
	#   1 if daemon was already running
	#   2 if daemon could not be started
	start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON_LOADER --test > /dev/null \
		|| return 1
	start-stop-daemon --start --quiet --chuid $CHUID --pidfile $PIDFILE --exec $DAEMON_LOADER -- \
		$DAEMON_ARGS \
		|| return 2

А теперь, что же мы собственно сделали:

  1. Provides — задаём название
  2. Short-Description/Description — описание того что делает данный файл, на случай его вдруг сами «забудем» или разбираться во всём этом будут третьи лица
  3. DESC=«Vertcoin daemon» — описание сервиса
  4. NAME=vertcoind — задаём название исполняемого файла
  5. DAEMON=/usr/bin/$NAME — и его полное имя (помнишь мы ранее скопировали их в этот каталог?)
  6. DAEMON_ARGS=»-daemon» — задаём аргументы запуска: кошелёк должен стартовать в фоновом режиме демона
  7. DAEMON_LOADER=»/usr/bin/taskset 0x1 «$DAEMON — как уже говорилось ранее, настоятельно рекомендуется распределять между ядрами процессы самих клиентов и скрипта p2pool-a, для повышения скорости работы ноды в целом. В данном случае мы с помощью утилиты taskset указываем что клиент будет выполняться исключительно на первом ядре. В наличии у меня двухъядерный сервер, по этому было решено все три клиента спихнуть на одно ядро(первое), а скрипт p2pool-а на другое(второе).

    В случае когда у вас под рукой только одноядерный сервер, то данную строку можно упразднить, убрав часть относящуюся к taskset-у, оставив только $DAEMON.

    В случае когда у вас сервер с более чем двумя ядрами, задача немного усложняется, и для правильной конфигурации нужно будет таки изучить принцип работы утилиты taskset. Внимание! Основная идея не в том, что-бы равномерно раскидать нагрузку между ядрами, а что-бы разграничить между ядрами выполнение клиентов и скрипта p2pool-a, и при возможности отдать больше ресурсов основной валюте. Так например в случае какой-либо трёхъядерной экзотики нам следует на первое ядро повесить клиент верткоина, на второе скрипт p2pool-а, а на третье — всё остальное.
  8. CHUID=vtc:vtc — задаём юзера и группу, от имени которых будет стартовать исполняемый файл.
  9. start-stop-daemon —start_blah_blah — вносим соответствующие изменения в саму команду запуска демона.

Сохраняем и закрываем файл, предоставляем ему права на исполнение и копируем его как заготовку для двух других клиентов и скрипта p2pool-а:

chmod 0755 vertcoind
cp vertcoind monocled
cp vertcoind parallaxcoind
cp vertcoind p2pool_vtc

Корректируем содержимое файлов monocled и parallaxcoind. Они в принципе аналогичны vertcoind, за исключением того что имеют отношение к другим исполняемым файлам (пункты 1-4 выше) — меняем vertcoind на monocled и parallaxcoind соответственно. В моноклях так же в пункте 6 добавляем значение минимальной комиссии, что является особенность конкретно этой монеты, так что строка принимает следующий вид:

DAEMON_ARGS="-daemon -paytxfee=0.01"

Отдельно остановимся на файле p2pool_vtc. Ниже приведён его конечный вид в местах, с отличных от vertcoind:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          p2pool_vtc
# Required-Start:    $all
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Auto init Vertcoin P2Pool
# Description:       Auto init Vertcoind P2Pool via booting system
### END INIT INFO

# Author: vk <[email protected]>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="P2Pool VTC daemon"
NAME=python
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="/home/vtc/p2pool-n/run_p2pool.py --net vertcoin -a your_wallet_name --merged http://monocle:[email protected]:6888 --merged http://parallaxcoin:[email protected]:7817 --give-author 0 --max-conns 100 --outgoing-conns 10"
DAEMON_LOADER="/usr/bin/taskset 0x2 "$DAEMON
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
CHUID=vtc:vtc

Касательно самих изменений:

  1. Provides — опять же название
  2. Required-Start: $all — так как скрипт p2pool-а для своей корректной и полноценной работы требует уже запущенные три(в данном случае) клиента криптовалют, то указываем что для старта данного демона необходимо подождать до того, пока все остальные демоны пойдут на выполнение (в том числе и три наших).
  3. Short-Description/Description/DESC — задаём соответствующие описания
  4. NAME=python — так как p2pool не является самостоятельной программой, а всего лишь скриптом, написанный на питоне, то исполняемым файлом нашего демона будет именно питон.
  5. DAEMON_ARGS=blah-blah-blah — и уже в качестве аргумента демона мы подсовываем питону полное название нашего скрипта p2pool-а(/home/vtc/p2pool-n/run_p2pool.py) и его собственные параметры запуска. Рассмотрим их подробней:
    • a). —net vertcoin — задаём с какой именно сетью будет работать p2pool. В данном примере используется основная p2pool сеть верткоина. Для общности информации скажу, что есть так-же вторая и третьи сети верткоина, а так-же — как минимум по одной сети у всех уважающих себя криптовалют.
    • b). -a your_wallet_name — задаём кошелёк по умолчанию, на который будут капать монеты. Если или ты, или другой майнер на нашей ноде неправильно укажет, или не укажет вовсе, кошелёк для получения монет. Если данный параметр не указывать, то монеты будут капать на кошелёк нашего узла на сервере, что не есть хорошо. Как сказал один умный человек —

      Big fat wallets on a public server are not a good idea

    • c). —merged blah_blah — здесь мы указывает все merged валюты, которые будут майнится узлом. Синтаксис следующий: —merged rpcuser:[email protected]_address_or_domain:rpcport. Все данные берутся из конфигурационных файлов соответствующих клиентов. В данном примере таких валют две. Так же стоит понимать, что именно эта строка указывает — именно от этого клиента(который находится по заданному адресу, слушает заданный порт, и имеет заданных юзера и пароля) будет осуществляться рассылка в сеть информации об найденном блоке. Так что в теории это можно нацелить на совершенно другой клиент, который находится на другом сервере. В нашем примере монеты будут начислять на «наши» клиенты(а точнее их кошельки), которые находятся у нас на сервере.
    • d). DAEMON_LOADER=»/usr/bin/taskset 0x2 «$DAEMON — указываем что скрипт p2pool-а будет выполняться исключительно на втором ядре. В случае если система не двухъядерная — см. выше.
    • e). —give-author 0 — задаём размер пожертвований автору скрипта равным нулю. На своё усмотрение.
    • d). max-conns & outgoing-conns — задаём высокое количество возможным соединений, что позволит нашей ноде сообщать и получать информацию об найденных блоках/шарах от большего количества узлов.

Теперь, когда почти всё готово, мы можем управлять нашими демонами вручную через удобные команды, без всякой процедуры логина под пользователем и прописыванием аргументов. Первая команда выдаст нам возможный список действий, вторая же — запустит скрипт p2pool-а(разумеется при условии что наши узлы уже синхронизировались с сетью, загрузив всю историю блоков, и работают):

/etc/init.d/p2pool_vtc
/etc/init.d/p2pool_vtc start

Последняя команда «оживит» нашу ноду, и она начнёт синхронизацию с сетью p2pool-a. Вскоре станет доступна статистика нашей ноды, в данном случае моей, по которой писался данный мануал — http://91.234.32.241:9171/static/. Нода создана «исключительно для примера», так что ломать её, пытаясь заполучить сотни биткоинов не стоит.

Последним штрихом обновляем список автозагрузки на сервере, что-бы наши демоны автоматически стартовали при запуске сервера, и перезагружаем сервер, дабы проверить успешность наших действий:

update-rc.d vertcoind defaults
update-rc.d monocled defaults
update-rc.d parallaxcoind defaults
update-rc.d p2pool_vtc defaults
reboot

После ребута всё запустилось? Вот и хорошо!

Вместо заключения или «допиливаем надфилем»

Первым делом сделаем статистику нашей ноды более человеко-пригодной. Для этого будем использовать сторонний frond-end, например этот или этот. За одно можно будет и удалить весь мусор, если не сделали этого раньше:

cd
git clone https://github.com/hardcpp/P2PoolExtendedFrontEnd
rm -rf /home/vtc/p2pool-n/web-static/
mv -f P2PoolExtendedFrontEnd /home/vtc/p2pool-n/web-static
chown -R vtc:vtc /home/vtc/
rm -rf monocle
rm -rf parallaxcoin
rm -rf vertcoin

Так же можно через диспетчер задач htop можно удостоверится, что все наши четыре демона успешно стартовали под юзером vtc, а так же работают на разных ядрах процессора (узнаётся это с помощью той же утилиты taskset и pid запущенных процессов).
Там же можно увеличить приоритет данных процессов(nice), задав его равным «-10»: выбираем нужный процесс и жмём F7. Реализовать это в автоматическом режиме через те же файлы запуска демонов мне не удалось, по этому этот момент нужно будет делать «ручками» после каждого ребута сервера. Повышение приоритета так же положительно сказывается на быстродействии ноды.

Еще одно узкое место — отсутствие проверки во время работы, не самозавершился ли какой-то из наших процессов, другими словами — «не упала ли нода?». По хорошему здесь должен быть некий скрипт, который бы по крону проверял наличии тех или иных процессов, и в случае отсутствия оных, перезагружал бы сервер. Но так как моя ферма находится у меня за спиной, то о падении (коих наверное за месяца четыре было всего буквально пару штук) я узнавал сразу-же по исчезновению шума в помещении. Если же ты хочешь автоматизировать всё до такой степени, что-бы про ноду можно было б забыть на пару месяцев, то об этом таки стоит задуматься.

Нацеливается ферма на ноду очень просто:
-o stratum+tcp://your_ip_or_node_domain:9171 -u wallet_name -p any_password -Q 0 -s 1 -E 1

Разумеется можно добавлять и конкретно свои параметры, но оптимизация и настройка майнера не является темой данного топика.

Значения параметров Q,s и E являются рекомендуемыми для p2pool-а, и способствуют более «резвому» обмену заданиями между нодой и фермой:

  • -Q|—queue — длина очереди запрошенных работ. По умолчанию равно 1. Рекомендуемое значение — 0.
  • -s|—scan-time — лимит времени, для сканирования текущего задания. По умолчанию равно 60. Рекомендуемое значение — 1
  • -E|—expiry — верхняя граница времени, которая позволительна после получения работы, на рассмотрение её «запоздавшести»(stale). Значение по умолчанию — 120. Рекомендуемое значение — 1.

Последим абзацем хочется просветить судьбу намайненных merged валют. Они майнятся в режиме «соло» клиентом на нашей ноде. Соответственно, блоки монет начисляются на него же. Как быстро наша нода будет находить блоки и получать за них вознаграждение, целиком и полностью зависит её общего хешрейта. Что-бы получить монеты на свой кошелёк(к примеру тот, который установлен на рабочем ПК/ноутбуке, и с которого используя графический интерфейс ими можно легко распоряжаться), нам нужно залогиниться под нашим пользователем vtc, проверить наличие положительно баланса на кошельках(нашелся блок, или нет), и после перевести их майнерам ноды, пропорционально их хешрейту(на примере моноклей):

su -s /bin/bash vtc
monocled getinfo
monocled sendmany blah-blah-blah

Синтаксис команды sendmany, как в прочем и список всех остальных параметров и команд, можно посмотреть запустив клиент/скрипт p2pool-а с ключем —help/-h, соответственно.

Данный материал был написан человеком, ранее не имевшим опыта системного администрирования. На случай, если у бородатых сисадминов от написанного начнёт жечь в глазах: лучший способ доказать свою правоту — указать на ошибки в комментариях. Конструктивная критика всегда приветствуется.

Использованная, но не упомянутая литература:

1). Топик на реддите, по которому в своё время поднимал свою первую ноду.

2). Замечательная тема на Bitcointalk, про тонкую настройку p2pool-а от Гуру этого ремесла.

3). Руководство по созданию суперноды для лайткоина.

Всем спасибо, все свободны.

Настройки P2Pool ноды Dash — Документация Dash latest

В этой инструкции описано, как установить P2Pool ноду Dash, чтобы управлять пулом майнеров. В отличие от централизованных майнинговых пулов, P2Pool работает по той же пиринговой (P2P) модели, что и Dash, что делает пул в целом высокоусточивым к атакам злоумышленников, а также сохраняет и защищает децентрализованную природу Dash. Когда вы запускаете P2Pool ноду, она ищет, соединяется и обменивается данными с децентрализованной сетью других P2Pool нод (которые также известны как пиры). Подобно блокчейну Dash, P2Pool ноды обменивается криптографической цепочкой ценных данных. P2Pool версия называется шэрчейн. Майнинг с P2Pool настоятельно рекомендуется из-за его децентрализованной и честной модели. P2Pool для Dash использует p2pool-dash софт с GitHub, который является форком p2pool для Биткойна. Больше информации тут.

Из-за того, каким образом P2Pool управляет сложностью подстройки к шэрчейну, важно поддерживать низкую степень задержки между майнерами и P2Pool нодой, чтобы избежать ситуаций, когда майнеры подписывают шэры слишком поздно для входа в шэрчейн. Когда вы устанавливаете вашу ноду, нужно учитывать её физическое расположение и расположение в сети по отношению к майнерам, которых вы планируете подключать к ноде. Если вы управляете майнинговой фермой, возможно вам стоить установить P2Pool ноду на физическую машину в той же локальной сети, где находятся ваши майнеры. Если вы планируете управлять публичной нодой, возможно, налучшим вариантом будет установить вашу P2Pool ноду в виде виртуальной машины в дата центре с высокой скоростью соединения, чтобы недалеко живущие майнеры могли подсоединяться к ноде с относительно небольшой задержкой.

В следующем разделе пошагово описывается установка Ubuntu Server, на котором будет работать P2Pool для Dash. Всё это было протестировано на Ubuntu 16.04 LTS и 18.04 LTS и Dash 0.12.2.3. Хотя нужно будет приложить некоторые усилия, чтобы использовать инструкцию с обновлённым ПО, эту инструкцию вполне можно использовать с разными версиями ПО или операционными системами, если это потребуется.

Настройка хостинг-сервера

Скачайте копию Ubuntu Server LTS с https://www.ubuntu.com/download/server и установите её на вашу систему по инструкции, приведённой тут. Если вы используете VPS, например, Vultr или AWS, скорее всего ваш провайдер предоставляет функцию установки этой системы. Убедитесь, что вы отметили опцию «OpenSSH server» в процессе установки — с ней вы сможете управлять вашим сервером с удалённой консоли. Когда вы получите доступ к серверу, создайте нового пользователя без рут-прав (если вы ещё этого не сделали), через приведённую ниже команду, заменив <username> на выбранное вами имя пользователя.

Тут же вам предложат выбрать пароль. Введите его и подтвердите, используя новый пароль (который отличается от вашего рут-пароля) и сохраните его в безопасном месте. Также тут вы можете ввести информацию о пользователе, но эти поля можно не заполнять. После создания пользователя, мы добавим их в sudo группу, таким образом, они смогу выполнять те же команды, что и рут-пользователи:

usermod -aG sudo <username>

Перезапустите ваш сервер и войдите от имени нового пользователя. Здесь рекомендуется подключаться удалённо через PuTTY (для Windows) или ssh (для Linux или macOS), если вы ещё этого не сделали.

Настройка переадресации портов

Если у вас роутер и приватная сеть, вам нужно будет настроить переадресацию портов как минимум для 8999 порта (UDP/TCP) для доступа к шэрчейну, а также для 7903 порта (UDP/TCP), если вы хотите, чтобы к вашей ноде был публичный доступ. Как это сделать — зависит от вашего сетевого роутера, и потому за рамками охвата этой инструкции. Ниже описывается настройка переадресации на примере роутера DD-WRT с открытым кодом. Инструкции по настройке переадресации порта можно найти здесь и здесь.

Узнайте свой IP адрес — либо из панели управления роутера, либо на сайте https://www.whatismyip.com

Настройка переадресации порта под DD-WRT

Вариант 1: Автоматическая настройка с помощью скрипта

Участник сообщества Dash dracocephalum щедро поделился скриптом для автоматической настройки всего, что требуется для работы p2pool-dash ноды под Ubuntu Server 16.04 и выше. Чтобы узнать больше, смотрите тут — или просто следуйте инструкции. Чтобы получить скрипт и начать, напечатайте:

sudo apt install git
git clone https://github.com/strophy/p2pool-dash-deploy

В папке p2pool-dash-deploy будут созданы файлы. Теперь нам нужно настроить некоторые параметры, касающиеся вашей системы:

nano ./p2pool-dash-deploy/p2pool.deploy.sh

Прокрутите вниз до раздела под названием #Variables и введите следующую информацию, заменяя шаблоны <xxx> после знака =. Обратите внимание, что возможно нужно будет обновить значения DASH_WALLET_URL, DASH_WALLET_ZIP и DASH_WALLET_LOCAL, если они не соответствуют текущей версии Dash:

  • PUBLIC_IP = your public IP address from the previous step
  • EMAIL = your email address
  • PAYOUT_ADDRESS = your DASH wallet address to receive fees
  • USER_NAME = linux user name
  • RPCUSER = enter a random alphanumeric rpc user name
  • RPCPASSWORD = enter a random alphanumeric rpc password

Нажмите Ctrl + X и закройте редактор, а затем нажмите Y и Enter, чтобы сохранить файл. Затем запустите скрипт:

bash ./p2pool-dash-deploy/p2pool.deploy.sh

Этот скрипт выполнит все необходимые шаги для установки P2pool на Ubuntu Server и запуска dashd синхронизации. После завершения установки вы увидите сообщение с надписью Installation Completed. Теперь вы можете запустить второй скрипт, чтобы установить p2pool-dash:

Теперь ваша P2Pool  нода работает. Если вы видите ошибки, например, Error getting work from dashd или -10 Dash Core is downloading blocks…, вам нужно подождать, пока Dash завершит синхронизацию. Когда она завершится, вы можете направить ваших майнеров через <ip_address>:7903, чтобы начать майнить.

Пример настроек с Bitmain Antminer D3, подключённым к p2pool-dash ноде в локальной сети.

Вариант 2: Установка вручную

Сначала обновите вашу оперативную систему:

sudo apt update
sudo apt upgrade

Установка dashd

Для того, чтобы получать блок и данные по транзакции, P2Pool требуется полноценная нода Dash. Чтобы скачать и установить Dash, зайдите на https://www.dash.org/wallets с вашего компьютера и найдите там ссылку на последнюю версию кошелька Dash Core. Нажмите Linux, затем правой кнопкой мыши кликните на Скачать TGZ под Dash Core Linux 64 Bit и выберите Скопировать адрес ссылки. Затем вернитесь в консоль и введите следующую команду, вставив туда адрес последней версии Dash Core через клик правой кнопкой мыши или Ctrl + V:

cd ~
wget https://github.com/dashpay/dash/releases/download/v0.12.2.3/dashcore-0.12.2.3-linux64.tar.gz

Проверьте целостность скачанного, запустив следующую команду и сравнив выходное значение со значением файла, указанным на сайте Dash под Hash File:

sha256sum dashcore-0.12.2.3-linux64.tar.gz

Ссылка на хеш файл для проверки целостности скачанного

Создайте рабочую папку для Dash, извлеките туда архив, скопируйте необходимые файлы в эту папку и сделайте их исполняемыми файлами:

mkdir .dashcore
tar xfvz dashcore-0.12.2.3-linux64.tar.gz
cp dashcore-0.12.2/bin/dashd .dashcore/
cp dashcore-0.12.2/bin/dash-cli .dashcore/
chmod 777 .dashcore/dash*

Очистка от ненужных файлов:

rm dashcore-0.12.2.3-linux64.tar.gz
rm -r dashcore-0.12.2/

С помощью следующей команды создайте файл настроек:

nano ~/.dashcore/dash.conf

Появится окно редактора. Теперь нам нужно создать файл настроек, в котором будут описаны некоторые параметры. Для начала, скопируйте и вставьте туда следующий текст, а затем замените параметры на те, которые вам подходят:

#----
rpcuser=XXXXXXXXXXXXX
rpcpassword=XXXXXXXXXXXXXXXXXXXXXXXXXXXX
rpcallowip=127.0.0.1
#----
listen=1
server=1
daemon=1
maxconnections=64
#----

Замените все поля с XXXXXXX следующим образом:

  • rpcuser: введите любой набор цифр или букв, без специальных символов
  • rpcpassword: введите любой набор цифр или букв, без специальных символов

В результате должно получиться что-то похожее:

Ввод ключевых данных в dash.conf для P2Pool ноды

Нажмите Ctrl + X и закройте редактор, а затем нажмите Y и Enter, чтобы сохранить файл. Теперь вы можете запустить Dash на мастерноде, чтобы синхронизироваться с блокчейном:

Вы увидите сообщение Dash Core server starting. Сейчас можно продолжить работать по инструкции и периодически проверять синхронизацию, используя следующую команду. Синхронизация завершится, когда число blocks будет равно текущему числу блоков в блокчейне Dash — то же самое можно увидеть в любом синхронизированном кошельке Dash или эксплорере блоков:

~/.dashcore/dash-cli getblockcount

Установка P2Pool

Сейчас мы настроим ПО для P2Pool и всего, что с ним связано. Начнём со связанных с ним настроек:

sudo apt install python-zope.interface python-twisted python-twisted-web python-dev
sudo apt install gcc g++ git

Создайте рабочие папки и установите p2pool-dash:

mkdir git
cd git
git clone https://github.com/dashpay/p2pool-dash
cd p2pool-dash
git submodule init
git submodule update
cd dash_hash
python setup.py install --user

Теперь мы добавим несколько дополнительных интерфейсов в панель управления:

cd ..
mv web-static web-static.old
git clone https://github.com/justino/p2pool-ui-punchy web-static
mv web-static.old web-static/legacy
cd web-static
git clone https://github.com/johndoe75/p2pool-node-status status
git clone https://github.com/hardcpp/P2PoolExtendedFrontEnd ext

Теперь вы можете запустить p2pool и по желанию настроить адрес для выплат, внешний IP (если необходимо), комиссию и пожертвования, как это описано ниже:

python ~/git/p2pool-dash/run_p2pool.py --external-ip <public_ip> -f <fee> --give-author <donation> -a <payout_address>

Затем вы можете отслеживать активность вашей ноды через следующий адрес, заменив <ip_address> на IP-адрес вашей P2Pool ноды:

Пример настроек с Bitmain Antminer D3, подключённым к p2pool-dash ноде в локальной сети.

Обзор пула P2Pool для майнинга: регистрация, настройка, выплаты, отзывы

Пул предназначен для добычи биткоина. Это одноранговая сеть, состоящая из узлов и майнеров, подключенных к ним. Соответственно, можно настроить свое оборудование, чтобы быть узлом, а можно подключиться к ближайшему чужому узлу. Наиболее эффективно майнить локально на своем узле.

Что добывают

На P2Pool майнится только биткоин.

Регистрация в P2Pool

На пуле регистрация не требуется. Достаточно ввести свой адрес, куда будут поступать вознаграждения.

Настройки

Существует два основных способа начать добычу на P2Pool:

  • настройте локальный узел P2Pool, в идеале, на том компьютере, где установлены ваши вокеры;
  • работать на публичном узле P2Pool рядом с вами.

Для скачивания кода необходимо пройти на https://github.com/p2pool/p2pool. Более новая версия находится здесь — http://p2pool.in/.

Не используйте обменный адрес для получения своих вознаграждений! Указывайте только собственный адрес.

Рекомендуется установить три отдельных узла P2Pool на вашей ферме: основной и две резервные копии. Если ваш основной перестанет работать, ваши вокеры перейдут на резервный узел, и вы не потеряете ни времени, ни накопленные доли, это часть противодействия атакам DDoS на P2Pool.

Как вывести средства с P2Pool

Пул не хранит у себя ваши средства, все сразу поступает на указанный вами адрес.

Мобильные клиенты

Специальных мобильных клиентов для P2Pool нет. Можно попробовать универсальные клиенты, которые предлагают AppStore, Google Play или Microsoft Store.

Отзывы

Основной тон отзывов о пуле на форумах — деловой. Форумчане задают вопросы по решению технических проблем и по работе пула.

Конечно, как и везде, есть недовольные, которых не устраивает как организован вывод средств, статистика, сложность настройки и прочее. В том числе ругаются на высокий порог вывода эфира. Техподдержка говорит, что это связано с порогом, который выставляет биржа Poloniex, где находятся кошельки у большинства майнеров.

Большое обсуждение на forum.bits.media.

solo BTC | Страница 2

P2Pool создает новую цепочку блоков(псевдошар), в которой сложность регулируется таким образом, чтобы новый блок(псевдошара) был найден за время установленное разработчиком пула, которое гораздо меньше, чем время нахождения блока в сети монеты(Bitcoin, Litecoin, DASH и др.). Блоки, которые попадают в цепочку блоков P2Pool (называемую «цепочкой шар(share chain)»), являются теми же блоками, которые попадают в цепочку блоков монеты, только у них есть более низкая сложность. Всякий раз, когда узел(peer) объявляет о новой найденной псевдошаре (новый блок в цепочке блоков P2Pool), он посылает ее другим узлам, а те проверяют, содержит ли этот блок(псевдошара) выплаты для всех предыдущих майнеров, которые нашли псевдошары (и объявили их). Процесс продолжается до тех пор, пока кто-то не найдет блок(псевдошару), который имеет сложность, соответствующую сложности сети монеты. Этот пир отправляет этот блок сети монеты и майнеры, которые нашли псевдошары для этого блока оплачиваются в транзакции рождения монет, пропорционально тому, сколько псевдошар они нашли за последнее время. То есть монеты из блока по сути рождаются на кошельке майнера.
Распределенность и децентрализация процесса выплат решает проблему сосредоточения в одних руках майнинговых мощностей и позволяет избежать воровства владельцев пулов. В p2pool воровство не возможно в принципе, потому что все комиссии известны и легко проверяются, отсутствуют промежуточные кошельки и все монеты рождаются на кошельках пользователей.
Майнеры настраиваются на подключение к узлу P2Pool, который может быть установлен и запущен локально, рядом с майнером. Для работы P2Pool необходимо иметь полный узел той монеты, для которой настраивается P2Pool. Он необходим для подтверждения транзакций в цепочке блоков монеты.
Псевдошары P2Pool образуют «sharechain», где каждая псевдошара, ссылается на хэш предыдущей псевдошары. Каждая псевдошара содержит стандартный для добываемой криптовалюты блок заголовка, а также специфические данные p2pool, которые используются для формирования транзакции рождения (generated) (общий объем субсидий, платежный скрипт для данной псевдошары, nonce(специальное слово), хэшсуммы предыдущих псевдошар, и текущую сложность для псевдошар), а также Merkle branch.

Цепь псевдошар постоянно регулирует свою сложность, чтобы находить псевдошару через установленное время, так же, как в криптовалютах регулируется время нахождения блока.
Это означает, что поиск псевдошар становится тем труднее (в результате более высокой дисперсии), чем больше людей добывают на P2Pool!
В отличие от криптовалюты, которую добывают на P2Pool, узлы не знают всю цепочку блоков — вместо этого они держат только некоторое количество последних псевдошар. Например на Bitcoin – 8640 (примерно 3 дня работы), на Litecoin – 17335, на DASH – 8692. Количество псевдошар задается при разработке P2Pool под конкретную криптовалюту разработчиком.

СИСТЕМА ВЫПЛАТ НА P2POOL
Скрыть содержимое
Система выплат на p2pool — модифицированная PPLNS (Плата за количество Ваших шар в общей цепочке)

Выше описан принцип работы п2пула, рассказано про шаречейн — общую цепочку шар (псевдошар).
Эта цепочка шар имеет фиксированную длину. Майнеры заполняют ее каждый в зависимости от своего хешрейта. Чем выше хешрейт майнера, тем больше его шар в цепочке.
Те шары, которые доходят до конца цепочки — выталкиваются. На Биткоине это происходит примерно за три дня. Поэтому майнер набирает максимальную выплату именно за три дня. При появлении других майнеров, его шары «разбавляются» с новыми, так как место в шаречейне ограничено и не может динамически меняться.

Каждая псевдошара содержит транзакцию рождения (generation), которая оплачивает предыдущие N псевдошар, где N-количество псевдошар, общая работа которых равна 3 умножить на среднюю работу, необходимую для решения блока. Выплаты пропорциональны объему работы, решение которой включено в псевдошару и пропорциональна сложности p2pool в это время.
Награда за нахождение блока (в зависимости от монеты) и сборы за транзакции объединяются и распределяются в соответствии с некоторыми правилами. Часть блока (например 2% на DASH, 0,5% на Litecoin) отправляется узлу, решившему блок. Остальные 99,5% распределяются равномерно между майнерами учитывая работу, проделанную за последнее время.

На практике в реалиях p2pool это выглядит так:
Майнер подключается используя адрес кошелька той монеты, которую он майнит. Этот адрес — его имя на п2пуле.
После подключения начинают учитываться шары майнера и справа от его адреса в статистике появляются цифры
Predicted payout — 0.004
Вот именно эти нули и мизерные значения пугают и отталкивают майнеров от п2пула.

На самом деле эти цифры вполне себе нормальные, учитывая систему выплат.
Во-первых со временем эта цифра будет расти, пока не выйдет на устоявшийся уровень. Это будет очень хорошо видно по выплатам — каждая следующая будет БОЛЬШЕ предыдущей.
Но САМОЕ главное — если вы отключитесь от п2пула и уйдете в другое место, то еще некоторое время будете получать выплаты. При стабильном хешрейте сети, вы например 6 часов выходили на нормальную оплату, потом отключились и еще 6 часов будете получать выплаты, но уже по нисходящим значениям.

Обзор пула для майнинга P2Pool: безопасность, настройка, недостатки

Данный пул является децентрализованным. Позволяет майнерам вести добычу с высоким уровнем безопасности на платформе с широким функционалом.

Сеть P2Pool представляет собой связанные между собой ноды, каждая из которых является отдельным оператором, управляющим программным приложением.

Все вместе ноды соединены в сеть p2p, которая по своей сути очень похожа на сеть биткоина. Здесь не существует иерархии или нод, которые имеют больший либо меньший вес. Информация о состоянии сети передается между отдельными узлами.

Новые блоки добываются в разных нодах, поэтому сеть P2Pool считается децентрализованной. И это является одним из преимуществ данного пула, так как подобный подход позволяет не только повысить уровень безопасности, но и обеспечивает вовлечение большего количества пользователей.

Однако, в отличие от биткоина, нодам не доступна вся информация о сети.

В них хранится лишь 8640 долей (которые были получены за последние три дня).

Делается это с целью предотвращения возможных атак со стороны пользователей пула.

Содержание:

Как распределяется вознаграждение внутри P2Pool сети

Те 12,5 биткоина, которые получает пул, распределяются по следующей схеме. 99,5% процентов всей прибыли распределяется между майнерами в зависимости от того, какую именно работу проделал каждый из них.

перейти к содержанию ↑

Участие в проекте

Майнеры могут присоединиться к любой из уже доступных нод P2Pool или настроить свою собственную с последующим ее присоединением к сети.

Для этого необходимо запустить специальное приложение p2pool на сетевом хосте.

Настройка и подключение ноды проводится бесплатно. Программное обеспечение также предоставляется на безвозмездной основе. Причем оно поставляется с открытым кодом, так что каждый желающий может внести свои интересные идеи.

С учетом всех преимуществ системы, P2Pool обеспечивает майнеров одними из лучших условий в сравнении с другими пулами, а также теми, кто предпочитает работать самостоятельно.

Кстати, здесь можно выбирать между самостоятельной добычей криптовалюты и участием в пуле. В первом случае, оператор ноды несет ответственность за свою работу сам и настраивает программу и оборудование по своему усмотрению.

Следует отметить, что пользователи, которые занимаются добычей на уже созданных нодах (то есть присоединяются к другим, а не настраивают свои собственные) теряют значительные преимущества децентрализации сети и оказываются уязвимыми ко всем недостаткам традиционных пулов.

Конечно, это не значит, что группа майнеров не может работать вместе на одной ноде. Но здесь вопрос лежит в плоскости безопасности всей сети и доверия. Решение каждый принимает самостоятельно.

перейти к содержанию ↑

Как работает система

Пул P2Pool дает каждому присоединенному майнеру несложную задачу. По завершению каждого этапа пользователь получает свою долю.

Последние распределяются между всеми нодами сети и собираются в так называемую цепочку долей (или sharechain). Примерно также построена работа сети биткоин.

Как только пул открывает новый блок, все участники получают вознаграждение в соответствии с тем, какой долей они владеют в пуле. Платежи распределяются автоматически без участия третьих лиц.

перейти к содержанию ↑

Доли и выплаты

Термин «доля» отражает всю систему с точки зрения производства и выплат.

Пул P2Pool позволяет всем присоединившемся майнерам объединить хешрейт и вместе работать над созданием новых блоков.

Каждая нода получает свою долю в зависимости от того, какой процент вклада в добычу она сделала.

Как только открывается новый блок, каждый майнер получает свою долю от общей стоимости вознаграждения за блок.

В пуле P2Pool реализована система вознаграждения PPLNS.

Платежи отправляются непосредственно на кошелек майнера без предварительного зачисления в некий общий фонд или хранилище.

Благодаря этому достигается прозрачность в работе. Более того, такой подход позволяет защитить пул от краж средств и коррупции, которая свойственна централизованным облачным пулам. Связано это с тем, что распределение средств в последних предоставляется одному человеку или группе людей. В системе, подобной P2Pool за это никто не отвечает.

перейти к содержанию ↑

Безопасность P2Pool

В отличие от других пулов где нет разделения на доли, P2Pool является более защищенным. Здесь прогресс в создании блоков, равно как и владение долями распределено по сети. То есть найти уязвимость в такой системе практически невозможно.

Причем каждая отдельная нода является надежной и это приводит к высокому уровню защиты всей сети.

Соответственно, такой подход с использованием децентрализованных узлов является существенным преимуществом.

В том случае, если злоумышленники все-таки смогут каким-то образом нанести ущерб одному из узлов, они не похитят данные о добыче и не уничтожат их.

Оператор ноды сможет ее переустановить. При этом, вся информация, касающаяся этого узла, хранится в публичной сети долей.

После переустановки, оператор сможет снова присоединиться к сети и получить свою долю, а также все необходимые сведения от сети долей за считанные минуты.

Пул P2Pool предоставляет высокий уровень защиты и от известных всем DDoS атак. Такой децентрализованный метод считают устойчивым к DDoS атакам. Дело в том, что в подобной системе достаточно, чтобы хотя бы один узел выдержал нападение. В этом случае, он сможет восстановить всю остальную систему.

Это еще один большой плюс именно децентрализованной системы. Дело в том, что взлом централизованной сети остановит всю дальнейшую работу.

Что касается информации, в большинстве случаев она либо уничтожается, либо теряется безвозвратно. Вот одна из причин, по которой сеть биткоин также является децентрализованной.

В случае с централизованными сетями, возможны также ситуации, когда часть пула сможет получить более 50% хешрейта. В этом случае, возникает опасность манипуляций подобным «картелем». В случае с децентрализованными сетями, подобное просто невозможно.

На практике, это означает, что даже если 100% майнеров использовали бы P2Pool, захватить преимущество в сети биткоина было бы невозможно именно благодаря P2P.

перейти к содержанию ↑

Вывод средств

Для того, чтобы вывести заработанные деньги из системы, необходимо подождать в течение 20 часов.

Собственный баланс пользователь может видеть в разделе

перейти к содержанию ↑

Процедура настройки P2Pool

Предлагаем пошаговую инструкцию по настройке:

Шаг 1. Скачивание и установка Bitcoin-QT или bitcoind. Начальная синхронизация может занять более одного дня. Соответственно, устанавливать приложения лучше заранее. В bitcoin.conf необходимо вписать следующий текст:

server=1

rpcuser=bitcoinrpc

rpcpassword=0UFEREdMDttuXIcIpFUOZX39EAnqXueYrGsuGSR9REk3Ylvs8qMylD29o09pFrovXIxD7UegCskBPhwRB0EYgV7fBPYxbzPIMBqx

Затем необходимо перезапустить приложение.

Шаг 2. Запуск P2Pool. Необходимо скачать дистрибутив и запустить файл p2pool.exe или p2pool.py (Linux, OS X). После этого P2Pool запускает загрузку цепочки долей (sharechain)

Шаг 3. Запуск майнеров. Необходимо указать майнеры для адреса http://HOST:9332/, где HOST является ip-адресом компьютера, на котором установлен P2Pool. В качестве имени пользователя можно использовать адрес кошелька биткоина на который будет производиться выплата.

Шаг 4. Статистика. Если для имени пользователя не используется адрес биткоин кошелька, выплаты будут производится на кошелек Bitcoin-Qt или bitcoind. Проверить статистику и графики можно в веб интерфейсе P2Pool. Для этого можно ввести следующий адрес: http://Хостпулапользователя:9332/.

После завершения настройки, пользователи обычно подписываются на уведомления, среди которых могут быть важные новости о статусе работы и апдейта пула.

перейти к содержанию ↑

Преимущества и недостатки P2Pool

PROS:

  • Система полностью децентрализована, что существенно повышает уровень безопасности, а также исключает возможность «захвата» контроля отдельными нодами.
  • Из предыдущего преимущества вытекает большая защищенность перед атаками. Даже в случае DDoS, сеть сможет восстановиться если хотя бы один узел останется нетронутым.
  • Отсутствие каких-либо комиссий пула. Для того, чтобы начать работу, необходимо просто скачать соответствующее ПО и провести базовые настройки. Пользователь может запустить свою собственную ноду.
  • Контроль за своими заработками. В системе нет центрального органа, который бы аккумулировал и распределял заработки. Они автоматически перечисляются на кошелек клиента.
  • Нет рисков кражи монет или шатдауна всего пула.
  • P2Pool является более «здоровым» решением для сетей лайткоина и биткоина.
  • Можно приглашать в пул своих друзей.

CONS:

  • Определенные сложности при настройке. В большинстве классических пулов предлагается уже полностью настроенное программное обеспечение. В P2Pool все это приходится делать вручную.
  • Не подходит для Асик оборудования.

В целом, пул P2Pool представляет определенный интерес для майнеров, так как является уникальным в своем роде продуктом. Несмотря на некоторые сложности в первоначальной настройке, система более прозрачна и, что самое главное, за добычу не взимаются никакие проценты.

Обзор пула для майнинга P2Pool: безопасность, настройка, плюсы и минусы

3.2 (63.89%) 36 голос(ов)

настройка и заработок на пуле

P2Pool – это децентрализованный Биткоин пул, работающий за счет создания одноранговой сети узлов майнеров. P2Pool формирует новую цепочку блоков, в которой сложность добычи может подстраиваться так, чтобы новый блок создавался каждые 20 секунд.

Блоки, попадающие блокчейн P2Pool, являются такими же блоками, которые могут попасть в блокчейн P2Pool, лишь с той разницей, что они имеют меньшую сложность.

Когда пир находит новый шар, он передается другому пиру, и оставшиеся пиры проверяют, чтобы этот блок содержал выплаты для всех предыдущих майнеров, которые находили шары в блокчейне P2Pool.

Это продолжается до тех пор, пока определенный пир не найдет блок, который по уровню сложности соответствует уровню сложности сети Биткоин. Этот пир объявляет сети Биткоин о найденном блоке, и майнеры с готовыми шарами для него получают оплату пропорционально до того, сколько шаров они нашли.

Что такое пул F2Pool

F2Pool, который также известен под названием Discus Fich, появился на свет в мае 2013 года. После обкатки сервиса и привлечения новых пользователей он превратился в одно из крупнейших сообществ по добыче биткоина. А уже в начале 2014 года пул стал предлагать услуги по добыче ряда других популярных криптовалют.

Проект был запущен китайскими инвесторами. Долгое время он оставался лидером по доле хэшрейта, но в 2018 году начал постепенно сдавать позиции.

Однако даже несмотря на это сервис все еще остается одним из крупнейших пулов. По итогам 2018 года он может удержаться на второй позиции по добыче блоков. И даже при самых худших прогнозах сервис вряд ли покинет пятерку лучших.

Особенности пула Ф2

  1. Главная фишка пула – это его открытость и простота работы. К примеру, вывод средств доступен даже без регистрации на сайте проекта.
  2. Ресурс F2Pool во всемирной сети доступен не только на китайском, но и на английском языке. Поддержки русского пока нет, но создатели обещают ввести.
  3. Еще одна ключевая особенность сервиса – это стабильность. За все время работы он практически никогда не выпадал из пятерки крупнейших пулов.
  4. Таких показателей проекту удалось добиться за счет большого количества участников со всего мира и огромного суммарного вычислительного потенциала.
  5. Для пользователей, находящихся за фаерволлами, включен майнинговый протокол Stratum по наиболее массовым портам TCP – 80 и 25.

Как настроить майнинг через F2Pool

Для того чтобы присоединиться к пулу, необходимо в клиенте Bitcoin, в файле bitcoin.conf прописать имя пользователя, пароль и сервер 1. Пароль лучше составлять довольно длинный, который состоял бы из 20-25 символов.

Клиент лучше использовать версии 0.8.5 или любой более новой версии. Важно, чтобы клиент был синхронизирован перед началом добычи. Следующий шаг – запуск пула. В строке Windows py2exe нужно прописать run_p2pool.exe, а в поле источника – python run_ p2pool.py.

После этого нужно запустить майнер daemon с подключением к IP 127.0.0.1 порта 9332. Рекомендуется также использовать майнер bfgminer с аналогичными параметрами.

Регистрация на пуле

Для того, чтобы подключиться к пулу и начать майнить, необходимо пройти регистрацию на сайте, перейдите по ссылке https://www.f2pool.com. Откройте “Sign Up”, введите свою электронную почту, пароль, капчу, подтвердите согласие с правилами пула и нажмите “Создать аккаунт”.

Также от вас потребуется указать номер телефона и подтвердить его, указав код и присланного вам SMS. Вот и все. Теперь вы можете войти в свой личный кабинет, посмотреть настройки серверов для майнинга, создать воркера и начать майнить.

Как начать майнить на F2Pool

На начало 2018 года пул позволяет майнить криптовалюты Bitcoin, Litecoin, Ethereum, Ethereum Classic, Zcash, Siacoin, Dash, Monero.

Конфигурация для настройки майнера:

Майнинг Bitcoin

  • Первичный URL: stratum.f2pool.com:3333
  • Вторичный URL: stratum.f2pool.com:25
  • Американский сервер: stratum-us.f2pool.com
  • Расчетные монеты в день 0,00009950 BTC / Thash / s.
  • Выплата: PPS на -3%. Mine 1 BTC, получите 5 NMC + 100 SYS + 1 EMC в подарок.

Майнинг Litecoin

  • Первичный URL: stratum.f2pool.com:8888
  • Вторичный URL: stratum.f2pool.com:25
  • Американский сервер: stratum-us.f2pool.com
  • Расчетные монеты в день 0.00012036 LTC / Mhash / s
  • Выплата: PPS 4%. Mine 1 LTC, получите 1000 DOGE в подарок.

Майнинг Ethereum

  • Первичный и вторичный URL: eth.f2pool.com:8008, eth.f2pool.com:8080
  • Расчетные монеты в день 0.00010042 ETH / Mhash/s
  • Выплата: PPS 3%

Майнинг Ethereum Classic

  • Первичный и вторичный URL: etc.f2pool.com:8118
  • Расчетные монеты в день 0.00303783 ETC / Mhash/s Выплата: PPS 5%

Майнинг Zcash

  • Первичный и вторичный: URL zec.f2pool.com:3357
  • Расчетные монеты в день 1.28362234 SC / Ghash/s
  • Выплата: PPS 5%

Майнинг Dash

  • Первичный и вторичный URL: dash.f2pool.com:5588
  • Расчетные монеты в день 0.00051030 DASH / Ghash/s
  • Выплата: PPS 0%

Майнинг Siacoin

  • Первичный и вторичный URL для GPU & A3 Miner: sc.f2pool.com:7778
  • Первичный и вторичный URL для ETH + SC Dual Mining: sc.f2pool.com:7777
  • Расчетные монеты в день 1.28362234 SC / Ghash/s
  • Выплата: PPS 3%

Майнинг Monero

  • Первичный и вторичный URL: xmr.f2pool.com:13531
  • Расчетные монеты в день 0.00841084 XMR / Khash/s
  • Выплата: PPS 0%

Выплаты вознаграждения на пуле F2Pool

F2Pool одним из первым ввел поддержку PPS. В настоящее время в пуле доступны и другие системы выплат. А комиссия транзакции вознаграждения в начале декабря 2017 года составляла 32.52 %, что является одним из лучших показателей среди подобных сервисов.

Руководство F2Pool рекомендует пользователям выводить заработанные средства сразу после их начисления. Это связано с тем, что после срока в девяносто дней они могут быть использованы для развития системы.

Пулы для майнинга — зачем шахтерам бассейн?


Когда речь идёт о майнинге криптовалют, нельзя переводить слова «miner» и «pool» буквально, как «шахтёр» и «бассейн». Они уже получили своё наполнение в русском языке. «Майнер» — тот, кто занимается майнингом биткоинов, а «пул» — жизненно необходимая вещь для добычи криптовалюты.


Процесс подбора подписи блока, иначе называемый майнингом, имеет большую вычислительную сложность (difficulty). Она является одним из самых важных параметров для майнера, так как именно от изменения сложности зависят его доходы. За время существования Bitcoin сложность в долгосрочной перспективе непрерывно растёт, поэтому, майнеру все труднее рассчитать подпись блока в одиночку.


Сеть Биткоина построена таким образом, что вознаграждение (сначала 50 BTC, потом 25, а скоро лишь 12.5 BTC) за валидную подпись блока является единственным методом эмиссии криптовалюты. Кроме этой фиксированной величины, нашедший блок майнер получает и сумму комиссий, заложенных во все включенные в блок транзакции. Сейчас это десятые доли биткоина, но в будущем, возможно, оплата транзакций превысит эмиссионную составляющую.


Пока сложность была невысокой, существовал одиночный, так называемый «соло» майнинг. Решение вычислительной задачи можно было получить даже на процессоре одного компьютера, поэтому каждый майнер работал один и сам получал вознаграждение в виде целого блока.


С ростом сложности, соло-майнинг отошёл в прошлое. Теперь даже с самым мощным специализированным оборудованием можно майнить годами, но так и не найти хэш для подписи блока – нужны сотни таких устройств. Поэтому, когда Биткоин обрел популярность, появилась технология совместного майнинга — объединение в пулы множества независимых майнеров.

Как работает пул


 «Пул» (mining pool) представляет собой сервер, распределяющий задачу расчёта подписи блока между всеми подключёнными участниками. Вклад каждого из них оценивается с помощью так называемых «шар» (share), которые являются потенциальными кандидатами на получение драгоценной подписи. Как только одна из «шар» попадает в цель, пул объявляет о готовности блока и распределяет вознаграждение.


При расчете вознаграждения учитываются все принятые шары (есть нюансы в некоторых системах оплаты), вне зависимости от того, превратилась «шара» в подпись блока или нет. Именно этим достигается справедливое распределение добытых монет. Майнер с небольшой мощностью может работать очень долго, не найдя ни одного блока, но при этом получит свою долю общего пирога – ему платят за вероятность того, что именно одно из его решений окажется правильным. Иногда такое действительно случается.


При этом, неизбежно возникает отбраковка некоторых шар. От 0.5% до 1.5% потенциальных результатов теряется ввиду устаревания шар (stale share) и на неизбежных технических ошибках. «Фонд оплаты труда» майнера рассчитывается так:

  • Пул устанавливает минимальную сложность шар, которые он принимает. Значение обычно является целой степенью числа 2. Оно выбирается так, чтобы минимизировать трафик от пользователя, при этом поток решений должен оставаться стабильным. Для современных устройств минимально принимаемая сложность обычно устанавливается в диапазоне 16-128, а оптимальная рабочая величина находится в интервале 64-512. Как правило, эта сложность устанавливается майнером вручную или автоматически подбирается сервером. Она никак не связана с реальной величиной сложности, действующей в сети и используется только для внутреннего учета.
  • Затем, пул суммирует все полученные от пользователя шары за период времени и умножает их на установленную рабочую сложность. Таким образом, получается, как будто майнер присылал шары со сложностью 1, но в огромном количестве. Это и есть базовая величина для расчета заработка майнеров: количество решений сложности 1 (Diff 1 shares). Когда пул находит блок и получает вознаграждение (25 BTC + комиссии), сервер делит эту величину на количество шар сложности 1, принятых от всех майнеров, а потом для каждого майнера умножает на сумму принятых от него решений.
  • Через 120 подтверждений найденного блока пул получает возможность распоряжаться добытыми биткоинами и распределяет награду по аккаунтам или кошелькам майнеров за вычетом своей комиссии, если она есть. Крупные пулы делают выплаты быстрее, часто авансом – это один из способов привлечь к себе больше майнеров. При выводе с пула следует учитывать размер его комиссии, а также размер комиссии на вывод средств.

Распределение награды за блок


У каждого пула есть свои правила и режимы выплат.  За предоставляемую услугу пул получает свою долю, рассчитываясь с майнерами по одной из тринадцати систем. 

Основные системы начисления награды


PROP (Proportional) — пропорциональная модель, при которой награда за блок делится строго пропорционально присланной каждым майнером доле шар. Как только блок найден – счетчик принятых шар сбрасывается и подсчет начинается с нуля.  Это самая простая система, но выплаты крайне нестабильны, особенно для небольших пулов. Если майнер пришел и ушел во время «длинного» блока – он получит очень мало, а если майнил в удачный период – то может получить награду в несколько раз больше средней по калькулятору.


PPLNS (Pay Per Last N Shares) – тоже пропорциональное распределение, но более сглаженное. Одна из самых сложных для понимания систем, в то же время наиболее эффективная и для пула, и для стабильных майнеров.


Оплата рассчитывается за количество шар, присланных не за время, прошедшее между двумя найденными блоками, а за фиксированное количество определенных временных промежутков, называемых «шифтами» (shift — сдвиг). Количество и длительность «шифтов» каждый пул выбирает на свое усмотрение.


Выплаты происходят после того, как пул найдет очередной блок. Величина награды значительно меньше зависит от промежутков времени между блоками. Если блок долго не находится – то оплата плавно растет, если пулу везет и блоки сыплются, как из рога изобилия – то оплата за каждый отдельный блок снижается, но за время N*длительность_шифта сумма выплат остается более или менее постоянной.


Рассмотрим простой пример. На пуле действует система PPLNS с 10 шифтами, длительность каждого – 1 час. Хэшрейт устройств пользователя составляет 1/100 от общей мощности пула.


Полную награду, аналогичную пропорциональной системе, майнер начинает получать только после того, как он отработал на полной скорости своих устройств больше 10 часов. Если на момент получения пулом блока он майнил только 1 час – он заработает всего 10% от своей доли при пропорциональном распределении, если 3 часа – то 30%.


Казалось бы, чистой воды грабеж. Но если пользователь прекратит работу на пуле, то в следующие 10 часов он все так же будет получать награду – через 3 часа – 70% от «нормальной» доли, через 5 часов – 50% и так далее. Начисление полностью прекратится через те же 10 часов.


Допустим, за 10 часов пул нашел 3 блока. В этом случае, майнер получит 25 BTC*3/100, то есть 0.75 BTC. Если же за 10 часов найден один блок, то фактический доход майнера составит всего 0.25 BTC. Но, в отличие от системы PROP, «наработанные» им шары учитываются еще в течение 10 часов, и если будут быстро добыты еще несколько блоков – они компенсируют неудачный период.


То есть, система PPLNS сглаживает влияние фактора случайности, но не может полностью его исключить. Она лучше всего подходит для майнеров, которые постоянно работают на одном пуле. Еще одно ее достоинство – низкие или нулевые комиссии, так как пул не несет рисков перед пользователями, выплачивая только фактически добытое. Некоторые пулы включают в распределение и комиссии, полученные за проведение транзакций. У PPLNS есть несколько разновидностей, принципиально не меняющих схемы.


PPS (Pay Per Share) — фиксированная оплата за каждую принятую пулом шару. В этом случае пул назначает за шару фиксированное вознаграждение. Оно рассчитывается на основании награды за блок, разделенной на текущую сложность в сети, а потом умножается на количество присланных пользователем шар со сложностью 1. С точки зрения пользователя, такая система наиболее «справедливая», так как оплачивается вся выполненная работа, независимо от ее результата – то есть не важно, найдены блоки или нет.


Но для пула такой подход несет серьезные риски – так как длительные периоды между блоками, орфаны (не принятые сетью блоки) приводят к убыткам – пул выплачивает награду майнерам авансом из резервов, но сам дохода не получает. Поэтому, на пулах с системой PPS обычно устанавливается высокая комиссия – обычно от 3 до 7%.


Режим PPS, в свою очередь, имеет разновидности:


SMPPS — каждая шара ценится по номиналу, но за счет задержки перед выплатой, чтобы пул смог найти блоки для пополнения резерва. Интервал обычно составляет 120 блоков (стандартное число, необходимое, чтобы можно было тратить биткоины из эмиссионной транзакции). Обычно пулы с таким методом начисления комиссию не берут. Примеры: Eligius (0%).


RSMPPS — при нахождении блока награда распределяется пропорционально количеству полученных от майнеров шар за последний блок, без учёта задолженности по предыдущим блокам.


Если после этой раздачи что-то осталось, остаток распределяется пропорционально задолженности по предпоследнему блоку. Если и после этого что-то осталось, выплачивается задолженность по еще более ранним блокам. 

Такая система выплаты выгодна для новых участников пула, так как задолженность по старым блокам выплачивается по остаточному принципу и не влияет на размер выплат новым участникам. Но накопленная задолженность может стать критической для пула при уполовинивании награды за блок, как это случилось с tzod.ru. Сейчас ни один крупный пул не использует этот механизм.


В долгосрочной перспективе для майнера, работающего на одном пуле, не важно, какая система оплаты используется. Разумеется, более выгодны системы без комиссий.


На странице Биткоин-википедии Comparison of mining pools можно найти наиболее полную таблицу сравнения пулов с их характеристиками. Но она не очень часто обновляется и многие данные могут быть устаревшими. Многие пулы из тех, что начинали первыми, уже закрылись.

P2Pool – децентрализованный пул


Нередко пулы взламывали хакеры, поскольку знали, что на их кошельках всегда есть немалые деньги. Случалось, что сами администраторы пула проявляли недобросовестность (например, исчезали с деньгами и закрывали сервер). Чтобы исключить такие возможности, был придуман децентрализованный пул P2Pool, программный код которого открыт для проверки и изменения. Каждый узел (нода) P2Pool является только одним из элементов системы. Участникам для получения максимальной награды следует оставаться на одном из узлов. Здесь не выгодно «прыгать» с одной ноды на другую.


P2pool имеет немало преимуществ перед классическим пулом.В первую очередь, это анонимность — не требуется вводить свои личные данные, для начала работы потребуется только действительные адреса кошелька и электронной почты. Децентрализованная структура даёт 100% защиту от DDoS, а если «отвалится» один из узлов, результаты автоматически подхватит другой узел. Cреди майнеров P2Pool распределяется комиссия, что дополнительно увеличивает их доход. Владельцы обычных пулов часто оставляют комиссии себе.

Merged mining – добыча нескольких криптовалют


Merged mining представляет собой совместную добычу сразу нескольких криптовалют. Те решения хэшей, которые не пригодились при расчёте подписи блока Биткоина, идут на расчёт для других криптовалют, настроенных на совместный майнинг. Среди параллельно добываемых форков можно назвать Namecoin, Devcoin, IxCoin, I0Coin. Все они отличаются огромной сложностью и невысоким обменным курсом.


Некоторые пулы для Биткоина включают совместный майнинг одного или нескольких форков, как правило это Namecoin. Он дает майнерам 1-2% дополнительного дохода. Поэтому, при выборе пула, обращайте внимание на возможность использования merged mining.


Совместный майнинг поддерживается Лайткойном и Догикойном. Так как обе криптовалюты используют один и тот же алгоритм Scrypt, технических проблем с этим никаких нет.


Тот, кто майнит Лайткойн, получает дополнительно некоторое количество Догикойнов и наоборот.

 Многомонетные и мультипулы


Существуют пулы не только для добычи биткоинов, но и для других криптовалют. Из альтернатив наиболее популярен Лайткоин (Litecoin, LTC). Тем более, что для алгоритма Scrypt также существует специализированное оборудование (ASIC).


В своём классическом виде, пул является сервером для подключения устройств, выполняющих вычисления по одному алгоритму – для Bitcoin это двойной SHA256. Но со временем появились и многомонетные пулы. К ним подключаются майнеры, которые хотят добывать несколько криптовалют, переключаясь на майнинг наиболее выгодной на данный момент. Все переключения майнер выполняет вручную. Для переключения на другой альткоин достаточно поменять порт TCP в настройках программы для майнинга.


Фактически, многомонетный пул отличается от обычных только тем, что пользователю не нужно заводить несколько учетных записей под каждый отдельный форк. Все добытые монеты переводятся пулом на один аккаунт, откуда они вручную или автоматически выплачиваются на кошельки майнера.


 Следующим шагом развития стали мультипулы. Основное их преимущество в том, что майнинг автоматически переключается на добычу самой выгодной в настоящее время криптовалюты. При этом учитывается сложность, цена монеты на биржах и множество других факторов. На мультипулах, как правило, можно майнить альткоины по нескольким распространенным алгоритмам хэширования: SHA256, Scrypt, Scrypt-N, X11-13-15 и т.д.


Нужно сказать, что многие современные криптовалюты — например, Ethereum и DASH — используют для майнинга графические процессоры видеокарт (GPU). Существуют и такие форки Bitcoin, которые можно добывать только на центральных процессорах.


Но, вне зависимости от используемого оборудования, принцип остаётся неизменным: на смену соло-майнингу приходит майнинг в пулах, что значительно снижает потенциал децентрализации, так как пул фактически распоряжается мощностями подключенным майнеров по своему усмотрению. В том числе, например, оператор пула может включать в свои блоки только нужные ему транзакции. Стратегической целью энтузиастов децентрализованных валют должно стать совершенствование технологии распределенной добычи, чтобы ей мог пользоваться любой желающий – так же просто, как подключиться к одному из обычных пулов.

Настройка узла P2Pool

— последняя версия документации Dash

В этом руководстве описывается, как настроить узел Dash P2Pool для управления пулом.
майнеров. В отличие от централизованных пулов для майнинга, P2Pool основан на том же
одноранговая (P2P) модель как Dash, что делает пул в целом высоко
устойчивость к злонамеренным атакам, а также сохранение и защита
децентрализованный характер Dash. Когда вы запускаете узел P2Pool, он ищет
выходят, подключаются и обмениваются данными с децентрализованной сетью
другие узлы P2Pool (также известные как одноранговые узлы).Узлы P2Pool совместно используют
криптографическая цепочка данных, представляющих ценность, аналогичная цепочке Dash
блокчейн. Версия P2Pool называется sharechain. В
децентрализованный и справедливый характер этой модели майнинга означает майнинг с
P2Pool настоятельно рекомендуется. P2Pool for Dash использует программное обеспечение p2pool-dash на GitHub, которое
форк p2pool для биткойнов. Для получения дополнительной информации см. Здесь.

Из-за способа, которым P2Pool управляет настройками сложности на
sharechain важно поддерживать низкую задержку между майнерами
и узел P2Pool, чтобы майнеры не отправляли акции слишком поздно, чтобы войти
Sharechain.При настройке узла необходимо учитывать его
физическое и сетевое расположение относительно майнеров, которых вы собираетесь использовать
подключиться к узлу. Если вы управляете майнинг-фермой, ваш узел P2Pool
вероятно, должен быть физический компьютер в той же локальной сети, что и ваш
горняки. Если вы планируете использовать общедоступный узел, лучше всего настроить
ваш узел P2Pool как виртуальная машина в дата-центре с высокой скоростью
подключение, чтобы географически близкие майнеры могли добывать в ваш пул с
относительно низкая задержка.

В следующем разделе описаны шаги по настройке сервера Ubuntu.
работает P2Pool для Dash.Он был протестирован с Ubuntu 20.04 LTS и
Тире 0.16. Хотя будут предприняты разумные усилия, чтобы поддерживать его на уровне
дату, должна быть возможность немного изменить инструкции, чтобы
при необходимости поддерживать различные версии или операционные системы.

Настройка хост-сервера

Загрузите копию Ubuntu Server LTS с
https://ubuntu.com/download/server и установите его в своей системе.
в соответствии с шагами, описанными здесь. Если ты
используя VPS, такой как Vultr или AWS, ваш провайдер, скорее всего, предоставит
возможность установить эту систему во время подготовки.Убедитесь, что вы включили
Сервер OpenSSH во время установки, чтобы вы могли управлять своим сервером с удаленного
приставка. Как только у вас будет доступ к вашему серверу, создайте нового пользователя без полномочий root.
если вы еще этого не сделали, используя следующую команду, заменив
<имя пользователя> с именем пользователя по вашему выбору:

Вам будет предложено ввести пароль. Введите и подтвердите, используя новый
пароль (отличный от пароля root) и храните его в надежном месте.
Вы также увидите запросы информации о пользователе, но это можно оставить
пустой.Как только пользователь будет создан, мы добавим его в sudo
group, чтобы они могли выполнять команды как root:

 usermod -aG sudo <имя пользователя>
 

Перезагрузите сервер и войдите в систему как новый пользователь. На данный момент это
рекомендуется подключаться удаленно через PuTTY (для
Windows) или ssh (для Linux и macOS), если вы еще этого не сделали.

Настройка переадресации портов

Если вы находитесь в частной сети за маршрутизатором, вам необходимо настроить
переадресация портов по крайней мере для порта 8999 (UDP / TCP) для доступа к
sharechain, а также порт 7903 (UDP / TCP), если вы хотите, чтобы ваш узел был
доступный для общественности.Как это делается, зависит от вашего конкретного
сетевой маршрутизатор и поэтому не рассматривается в данной документации.
Пример из популярного дистрибутива маршрутизатора с открытым исходным кодом DD-WRT:
показано ниже. Руководства по настройке переадресации портов можно найти здесь и здесь.

Запишите свой IP-адрес либо в управлении маршрутизатора.
интерфейс или посетив https://www.whatismyip.com

Настройка переадресации портов под DD-WRT

Ручная настройка

Сначала обновите операционную систему следующим образом:

 sudo apt update
sudo apt upgrade
 

Настройка dashd

P2Pool требует, чтобы был запущен полный узел Dash для получения блока и
данные транзакции.Чтобы загрузить и установить Dash, посетите
https://www.dash.org/downloads/ на своем компьютере, чтобы найти ссылку на
последний кошелек Dash Core. Щелкните Linux , затем щелкните правой кнопкой мыши Download
TGZ
для Dash Core x64 и выберите Скопируйте адрес ссылки . Вернуться к
окно вашего терминала и введите следующую команду, вставив в
обратитесь к последней версии Dash Core, щелкнув правой кнопкой мыши или нажав
Ctrl + V :

 кд ~
wget https: // github.com / dashpay / dash / Release / скачать / v0.17.0.2 / dashcore-0.17.0.2-x86_64-linux-gnu.tar.gz
 

Проверьте подлинность загрузки, проверив ее отдельный
подпись под открытым ключом, опубликованная разработкой Dash Core
команда. Все выпуски Dash подписаны с помощью GPG одним из
следующие ключи:

 curl https://keybase.io/codablock/pgp_keys.asc | gpg --import
curl https://keybase.io/pasta/pgp_keys.asc | gpg --import
wget https://github.com/dashpay/dash/releases/download/v0.17.0.2 / dashcore-0.17.0.2-x86_64-linux-gnu.tar.gz.asc
gpg --verify dashcore-0.17.0.2-x86_64-linux-gnu.tar.gz.asc
 

Создайте рабочий каталог для Dash, распакуйте сжатый архив,
скопируйте необходимые файлы в каталог и сделайте их исполняемыми:

 мкдир ~ / .dashcore
tar xfvz dashcore-0.17.0.2-x86_64-linux-gnu.tar.gz
cp dashcore-0.17.0 / bin / dashd .dashcore /
cp dashcore-0.17.0 / bin / dash-cli .dashcore /
 

Очистить ненужные файлы:

 RM dashcore-0.17.0.2-x86_64-linux-gnu.tar.gz
rm -r dashcore-0.17.0 /
 

Создайте файл конфигурации с помощью следующей команды:

 nano ~ / .dashcore / dash.conf
 

Появится окно редактора. Теперь нам нужно создать файл конфигурации
указав несколько переменных. Скопируйте и вставьте следующий текст, чтобы получить
запущен, затем замените переменные, относящиеся к вашей конфигурации, как
следует:

 # ----
rpcuser = XXXXXXXXXXXXX
rpcpassword = XXXXXXXXXXXXXXXXXXXXXXXXXXXX
rpcallowip = 127.0.0.1
# ----
слушать = 1
сервер = 1
демон = 1
maxconnections = 64
# ----
 

Заменить поля, помеченные как XXXXXXX , следующим образом:

  • rpcuser : введите любую строку цифр или букв, без специальных
    разрешенные символы

  • rpcpassword : введите любую строку цифр или букв, без специальных
    разрешенные символы

Результат должен выглядеть примерно так:

Ввод ключевых данных в тире.conf на узле P2Pool

Нажмите Ctrl + X , чтобы закрыть редактор, и Y и Введите , чтобы сохранить
файл. Теперь вы можете запустить Dash на мастерноде, чтобы начать
синхронизация с блокчейном:

Вы увидите сообщение о Dash Core server, начиная с . Ты можешь
продолжайте выполнять следующие шаги и периодически проверяйте синхронизацию
используя следующую команду. Синхронизация завершена, когда номер
из блоков равно текущему количеству блоков в Dash
блокчейн, как видно из любого синхронизированного кошелька или блока Dash
исследователь:

 ~ /.dashcore / dash-cli getblockcount
 

Настройка P2Pool

Теперь мы настроим программное обеспечение P2Pool и его зависимости. Начинать с
зависимости:

 sudo apt установить python2 python2-dev gcc g ++ git
завиток https://bootstrap.pypa.io/get-pip.py --output get-pip.py
sudo python2 get-pip.py
pip install скрученный
 

Создайте рабочие каталоги и настройте p2pool-dash:

 git clone https://github.com/dashpay/p2pool-dash
компакт-диск p2pool-dash
git обновление подмодуля --init
cd dash_hash
настройка python2.py install --user
 

Мы добавим несколько дополнительных интерфейсов в панель управления:

 кд ..
mv веб-статический веб-static.old
git clone https://github.com/justino/p2pool-ui-punchy веб-статический
mv web-static.old web-static / legacy
cd web-static
git clone https://github.com/hardcpp/P2PoolExtendedFrontEnd ext
CD ..
 

Теперь вы можете запустить p2pool и, при желании, указать адрес выплаты,
внешний IP (при необходимости), размер комиссии и пожертвования:

 python2 ~ / p2pool-dash / run_p2pool.py --external-ip  -w  -f  -a  --give-author 
 

Затем вы можете контролировать свой узел, перейдя по следующим адресам:
заменив на IP-адрес вашего узла P2Pool:

Пример конфигурации, показывающий один подключенный Bitmain Antminer D3
к узлу p2pool-dash в локальной сети

p2pool / p2pool: одноранговый пул майнинга биткойнов

Требования:

Общий:

  • Биткойн> = 0.11,1
  • Python> = 2,6
  • Скрученный> = 10.0.0
  • python-argparse (для Python = 2.6)

Linux:

  • sudo apt-get install python-zope.interface python-twisted python-twisted-web
  • sudo apt-get install python-argparse # если на Python 2.6

Windows:

Запуск P2Pool:

Чтобы использовать P2Pool, у вас должен быть запущен собственный локальный биткойн. Для стандартных
конфигурации с использованием P2Pool должны быть такими же простыми, как:

Затем запустите свою программу-майнер, подключившись к 127.0.0.1 на порт 9332 с любым
имя пользователя и пароль.

Если вы находитесь за NAT, вы должны включить переадресацию портов TCP на вашем
роутер. Перенаправьте порт 9333 на хост, на котором работает P2Pool.

Беги за дополнительными опциями.

  python run_p2pool.py --help
  

Пожертвований на дальнейшее развитие:

  1HNeqi3pJRNvXybNX4FKzZgYJsdTSqJTbk
  

Официальная вики:

https://en.bitcoin.it/wiki/P2Pool

Альтернативный веб-интерфейс:

Требования:

Чтобы запустить P2Pool в сети Litecoin, вам необходимо собрать и установить
ltc_scrypt, который включает в себя scrypt-код подтверждения работы, который Litecoin использует для хэшей.

Linux:

  компакт-диск litecoin_scrypt
sudo python setup.py установить
  

Окна (mingw):

В bash введите это:

  компакт-диск litecoin_scrypt
C: \ Python27 \ python.exe setup.py build --compile = mingw32 install
  

Windows (Microsoft Visual C ++)

  • Открытая консоль Visual Studio

В bash введите это:

  SET VS90COMNTOOLS =% VS110COMNTOOLS% # Для Visual C ++ 2012
SET VS90COMNTOOLS =% VS100COMNTOOLS% # Для Visual C ++ 2010
cd litecoin_scrypt
C: \ Python27 \ python.exe setup.py build --compile = mingw32 установить
  

Если вы столкнулись с ошибкой из-за нераспознанного параметра командной строки ‘-mno-cygwin’, см. Следующее:
http://stackoverflow.com/questions/6034390/compiling-with-cython-and-mingw-produces-gcc-error-unrecognized-command-line-o

Запуск P2Pool:

Запустите P2Pool с параметром «—net litecoin».
Запустите свою программу-майнер, подключившись к 127.0.0.1 через порт 9327.
Перенаправьте порт 9338 на хост, на котором работает P2Pool.

Использование Litecoin портов 9333 и 9332 конфликтует с P2Pool, работающим на
сеть Биткойн.Чтобы избежать проблем, добавьте эти строки в litecoin.conf
и перезапустите litecoind:

Спонсоров:

Поблагодарили:

  • The Bitcoin Foundation за щедрую поддержку P2Pool
  • The Litecoin Project за щедрые пожертвования P2Pool

Лицензия:

Доступно здесь

Настройка локального P2Pool и майнинг Vertcoin с помощью CCMiner

Недавно я (как и все остальные) был очарован криптовалютой и узнаю о ней все больше и больше.Одна из самых интересных вещей для меня — это добыча монет. Раньше я играл с майнингом, но со всей новой популярностью добыча хорошо известных монет в принципе невозможна для обычного человека. Есть много альткойнов — их слишком много, чтобы выбирать. В последнее время я немного почитал, и мое внимание привлек Верткойн. Недавно я потратил некоторое время на настройку моего собственного локального P2Pool для Vertcoin и указание майнера на этот локальный пул. Это руководство для:

  1. установка кошелька
  2. создание собственного сервера P2Pool
  3. начало майнинга с использованием вашего пула

Все в этом руководстве относится к Windows 10, но должно быть похоже на другие платформы.Я использую CCMiner, так как у меня видеокарты Nvidia.

Преимущества использования собственного P2Pool

Существует множество публичных пулов Vertcoin, которые можно использовать. В простейшей настройке майнинга будет использоваться публичный пул, например Vertcoin Easy Mine. Однако есть некоторые заметные преимущества в использовании собственного:

  • более низкая задержка — поскольку вы находитесь в той же сети (или даже на компьютере), что и пул, задержка уменьшится, что означает меньше потерь при поступлении.
  • 0% сборов — некоторые (большинство) общественных бассейнов взимают плату за использование.Местный бассейн будет бесплатно
  • нулевое время простоя — поскольку вы контролируете пул, вы можете поддерживать его в рабочем состоянии сколько угодно.
  • способствует децентрализации — Vertcoin (и другие криптовалюты) должны быть децентрализованы, чтобы выжить в

Теперь все готово, мы готовы к первому шагу.

Кошелек Vertcoin — это то, что хранит все ваши монеты, поэтому обязательно защитите / зашифруйте / сделайте резервную копию паролем. Я не буду здесь подробно останавливаться на этом — есть и другие руководства по этому поводу.

Установка кошелька Vertcoin

Прежде чем вы сможете начать майнинг или запустить собственный пул, вам необходимо установить кошелек Vertcoin. Вы можете найти кошелек на странице релизов Vertcoin на github. Убедитесь, что вы выбрали правильную ОС. Я настроил свой пул на машине с Windows, поэтому я выбрал vertcoin-v0.12.0-windows-64bit.zip . После загрузки:

  • распаковать файл
  • открыть vertcoin-qt.exe
  • , он должен запросить место для установки, можно оставить все это по умолчанию
  • он должен начать синхронизацию блокчейна (это займет примерно вечность)

После завершения синхронизации вы должны увидеть чистый кошелек, например:

Создайте адрес приема

Чтобы получать монеты, которые вы добываете, вам необходимо создать адрес получения.В кошельке щелкните вкладку «получить». Вы должны увидеть такую ​​форму:

Вам не нужно заполнять эти поля, но я использую один адрес для майнинга — таким образом я знаю, откуда приходят транзакции. Я использовал эти значения:

  • Этикетка: «Шахтер»
  • Сумма: оставьте пустым
  • Сообщение: «получено из майнинга»

Затем нажмите кнопку получения платежа — должно появиться поле с QR-кодом и адресом. Идите и закройте это сейчас — информация будет доступна позже, вернувшись на вкладку получения.

Настроить майнер rpc-соединения

Затем нам нужно настроить наш кошелек для прослушивания локальных rpc-соединений из пула. Пул использует кошелек для связи с блокчейном, поэтому оба должны работать одновременно. В кошельке:

  • нажмите «Настройки»
  • нажмите «Открыть файл конфигурации»

Этот файл конфигурации должен открываться в чем-то вроде Блокнота, и он должен быть пустым. Добавьте следующий текст:

  сервер = 1
rpcuser = myuser
rpcpassword = verystrongpasswordnobodycanguess
  

Сохраните файл и перезапустите кошелек Vertcoin.Теперь мы готовы установить P2Pool.

Бинарные файлы P2Pool снова находятся в разделе Github Releases. Скачайте последнюю версию (в моем случае это v0.1.1 ). Вам нужно будет разархивировать файл после его загрузки. Внутри распакованной папки вы должны увидеть командный файл Windows с названием что-то вроде Start P2Pool Network 2 . Вы можете либо отредактировать этот файл, либо создать другой пакетный файл внутри этой папки, чтобы запустить пул. В файле добавьте это:

  run_p2pool.exe --net vertcoin2 myuser verystrongpasswordnobodycanguess $ wallet_address -w $ local_ip: порт
  

Дополнительные параметры описаны здесь, если вам нужно настроить его еще больше.

$ wallet_address будет адресом, который вы получили ранее при нажатии кнопки «получить» в кошельке. -w $ local_ip: порт не нужен строго, но я хотел убедиться, что он запускается с правильного IP-адреса и использует нужный мне порт (в моем случае я использовал 9999, чтобы легко запомнить). Сохранить и закрыть файл.

Теперь запустите командный файл. Вы должны увидеть, что пул запускается с сообщениями, подобными:

  C: \ Users \ MINING \ Downloads \ p2pool-vtc-WIN64 \ p2pool-vtc> run_p2pool.exe --net vertcoin2 myuser verystrongpasswordnobodycanguess $ wallet_address -w $ local_ip: port
2017-12-14 16: 57: 00.523000 p2pool (версия 3d0f826-dirty)
2017-12-14 16: 57: 00.524000
2017-12-14 16: 57: 00.524000 Тестирование RPC-соединения bitcoind с 'http://127.0.0.1:5888/' с именем пользователя 'user' ...
2017-12-14 16: 57: 00.541000...успех!
2017-12-14 16: 57: 00.542000 Текущий хэш блока: 58a9c1ee25525b229cc0ef23b668d4f34e15890da1a01bc6cca4eb7162f94ecc
2017-12-14 16: 57: 00.542000 Текущая высота блока: 841701
2017-12-14 16: 57: 00.542000
2017-12-14 16: 57: 00.542000 Тестирование P2P-соединения Bitcoind с '127.0.0.1:5889' ...
2017-12-14 16: 57: 00.544000 ... успехов!
2017-12-14 16: 57: 00.544000
2017-12-14 16: 57: 00.545000 Определение адреса выплаты ...
2017-12-14 16: 57: 00.545000 ... успехов! Адрес выплаты: Vw9utVuAm9wRxcBDDLGVfsGs7QXB6xP3oe
2017-12-14 16:57:00.545000
2017-12-14 16: 57: 00.545000 Загрузка акций ...
  

После запуска пула вы также увидите сообщение о глобальной скорости хеширования:

  14.12.2017 16: 59: 45.665000 Доли: 0 (0 сирот, 0 мертвых) Уровень просроченности: ??? Эффективность: ??? Текущая выплата: (0,0000) = 0,0000 VTC
2017-12-14 16: 59: 45.665000 Пул: 127GH / s Скорость устаревания: 15,2% Ожидаемое время блокировки: 23,7 минуты
2017-12-14 16: 59: 46.970000 Общая папка с наказанием за "Обнаружен устаревший блок!" height (b79db16c219589f65f4ca6782f8a07129e8f86f2f95ccda7a8ad517eb63160ae)  

Значит, ваш бассейн работает! Теперь мы готовы подключить CCMiner и начать майнинг.

CCMiner - это утилита для майнинга на видеокартах Nvidia.Если у вас нет Nvidia, возможно, вам придется использовать что-то еще, например, майнер Vertcoin в один клик.

Установить CCMiner так же просто, как снова перейти на страницу выпуска Github. Найдите выпуск для своей ОС, для меня это ccminer-x86-2.2.3-cuda9.7z . Скачайте этот файл и разархивируйте его. Вам может потребоваться установить 7zip для распаковки, если у вас его еще нет. Внутри папки CCMiner будет командный файл Windows с названием что-то вроде RUN-CREA - вы можете либо отредактировать этот файл, либо создать новый командный файл для запуска.Внутри файла добавьте:

  ccminer-x64 -a lyra2v2 -i 20 -o stratum + tcp: // $ local_ip: $ port -u $ wallet_address -p any_word_here
  

$ local_ip будет IP вашего пула. В моем случае это адрес 192.168, потому что это то, что я сказал ему для привязки. Если вы майните на том же компьютере, что и кошелек, вы, вероятно, можете использовать 127.0.0.1 . Порт такой же - используйте порт, который вы указали пулу. Убедитесь, что вы указали адрес своего кошелька, чтобы вы могли получать деньги, и установите -p на любой случайный идентификатор.

Теперь ваш майнер должен запуститься! Вы должны увидеть принятые акции, если все работает правильно:

Надеюсь, это было полезно! Я только начинаю, поэтому, если у кого-то есть какие-нибудь советы / рекомендации, дайте мне знать!

Установка узла

Axe P2Pool - последняя документация Axe

В этом руководстве описывается, как настроить узел Axe P2Pool для управления пулом.
майнеров. В отличие от централизованных пулов для майнинга, P2Pool основан на том же
модель peer-2-peer (P2P) как Ax, что делает пул в целом высоко
устойчивость к злонамеренным атакам, а также сохранение и защита
децентрализованный характер Axe.Когда вы запускаете узел P2Pool, он ищет
выходят, подключаются и обмениваются данными с децентрализованной сетью
другие узлы P2Pool (также известные как одноранговые узлы). Узлы P2Pool совместно используют
криптографическая цепочка данных, представляющих ценность, аналогичная Axe
блокчейн. Версия P2Pool называется sharechain. В
децентрализованный и справедливый характер этой модели майнинга означает майнинг с
P2Pool настоятельно рекомендуется. P2Pool for Axe использует программное обеспечение p2pool-ax на GitHub, которое
форк p2pool для биткойнов. Для получения дополнительной информации см. Здесь.

Из-за способа, которым P2Pool управляет настройками сложности на
sharechain важно поддерживать низкую задержку между майнерами
и узел P2Pool, чтобы майнеры не отправляли акции слишком поздно, чтобы войти
Sharechain. При настройке узла необходимо учитывать его
физическое и сетевое расположение относительно майнеров, которых вы собираетесь использовать
подключиться к узлу. Если вы управляете майнинг-фермой, ваш узел P2Pool
вероятно, должен быть физический компьютер в той же локальной сети, что и ваш
горняки.Если вы планируете использовать общедоступный узел, лучше всего настроить
ваш узел P2Pool как виртуальная машина в дата-центре с высокой скоростью
подключение, чтобы географически близкие майнеры могли добывать в ваш пул с
относительно низкая задержка.

В следующем разделе описаны шаги по настройке сервера Ubuntu.
запущен P2Pool для Axe. Он был протестирован с Ubuntu 16.04 LTS и
18.04 LTS и Ax 0.12.2.3. Хотя будут предприняты разумные усилия, чтобы
поддерживайте его в актуальном состоянии, должна быть возможность изменять инструкции
немного для поддержки разных версий или операционных систем, как
нужно.

Настройка хост-сервера

Загрузите копию Ubuntu Server LTS с
https://www.ubuntu.com/download/server и установите его в своей системе.
в соответствии с шагами, описанными здесь. Если вы используете VPS, например Vultr или AWS, ваш провайдер
скорее всего предоставит возможность установить эту систему во время
обеспечение. Убедитесь, что вы включили сервер OpenSSH во время установки, чтобы вы могли
управлять своим сервером с удаленной консоли. Как только у вас будет доступ к вашему
server, создайте нового пользователя без полномочий root, если вы еще этого не сделали, используя
следующую команду, заменив на имя пользователя вашего
выбор:

Вам будет предложено ввести пароль.Введите и подтвердите, используя новый
пароль (отличный от пароля root) и храните его в надежном месте.
Вы также увидите запросы информации о пользователе, но это можно оставить
пустой. Как только пользователь будет создан, мы добавим его в sudo
group, чтобы они могли выполнять команды как root:

 usermod -aG sudo <имя пользователя>
 

Перезагрузите сервер и войдите в систему как новый пользователь. На данный момент это
рекомендуется подключаться удаленно через PuTTY (для
Windows) или ssh (для Linux и macOS), если вы еще этого не сделали.

Настройка переадресации портов

Если вы находитесь в частной сети за маршрутизатором, вам необходимо настроить
переадресация портов по крайней мере для порта 8999 (UDP / TCP) для доступа к
sharechain, а также порт 7923 (UDP / TCP), если вы хотите, чтобы ваш узел был
доступный для общественности. Как это делается, зависит от вашего конкретного
сетевой маршрутизатор и поэтому не рассматривается в данной документации.
Пример из популярного дистрибутива маршрутизатора с открытым исходным кодом DD-WRT:
показано ниже. Руководства по настройке переадресации портов можно найти здесь и здесь.

Запишите свой IP-адрес либо в управлении маршрутизатора.
интерфейс или посетив https://www.whatismyip.com

Настройка переадресации портов под DD-WRT

Вариант 1. Автоматическая настройка скрипта

Член сообщества Axe dracocephalum щедро пожертвовал сценарий
для автоматического развертывания всего необходимого для запуска узла p2pool-ax
под Ubuntu Server 16.04 и выше. Для получения более подробной информации посетите этот форум.
post или просто следуйте этим инструкциям, чтобы получить скрипт.Чтобы получить сценарий и начать работу, введите:

 sudo apt установить git
git clone https://github.com/axerunners/p2pool-axe-deploy
 

Файлы будут созданы в папке p2pool-ax-deploy. Теперь нам нужно
для настройки нескольких переменных, специфичных для вашей системы:

 нано ./p2pool-axe-deploy/p2pool.deploy.sh
 

Прокрутите вниз до раздела с надписью #Variables и введите
следующая информация, заменив заполнители после
= знак .Обратите внимание, что также может потребоваться обновить
AXE_WALLET_URL , AXE_WALLET_ZIP и AXE_WALLET_LOCAL
значения, если они не соответствуют текущей версии Ax:

  • PUBLIC_IP = ваш публичный IP-адрес из предыдущего шага
  • EMAIL = ваш адрес электронной почты
  • PAYOUT_ADDRESS = адрес вашего кошелька AX для получения комиссий
  • USER_NAME = имя пользователя linux
  • RPCUSER = введите случайное буквенно-цифровое имя пользователя rpc
  • RPCPASSWORD = введите случайный буквенно-цифровой пароль rpc

Нажмите Ctrl + X , чтобы закрыть редактор, и Y и Введите , чтобы сохранить
файл.Затем запустите скрипт:

 Баш ./p2pool-axe-deploy/p2pool.deploy.sh
 

Скрипт выполнит все шаги, необходимые для настройки P2pool в Ubuntu.
Сервер и запускаем синхронизацию по оси. Когда установка будет завершена, вы
должно появиться сообщение « Установка завершена». Теперь вы можете
запустите второй скрипт для запуска p2pool-ax:

Теперь ваш узел P2Pool работает. Если вы видите ошибки, похожие на ошибку
получение работы от axed
или -10 Ax Core загружает блоки…
тогда вы должны подождать, пока Axe завершит синхронизацию.Как только это
готово, вы можете указать своим майнерам : 7923 , чтобы начать
добыча.

Пример конфигурации, показывающий один подключенный Bitmain Antminer D3
к узлу p2pool-ax в локальной сети

Вариант 2: Ручная настройка

Сначала обновите операционную систему следующим образом:

 sudo apt update
sudo apt upgrade
 

Настройка осевого

P2Pool требует, чтобы полный узел Ax был запущен для получения блока и
данные транзакции.Чтобы загрузить и установить Axe, посетите
https://www.axerunners.com/wallets на своем компьютере, чтобы найти ссылку на
последний кошелек Ax Core. Щелкните Linux , затем щелкните правой кнопкой мыши Download
TGZ
для Ax Core Linux 64 Bit и выберите Скопируйте адрес ссылки .
Вернитесь в окно терминала и введите следующую команду, вставив
в адресе последней версии Axe Core, щелкнув правой кнопкой мыши или
нажатие Ctrl + V :

 кд ~
wget https: // github.com / axerunners / ax / релизы / загрузка / v0.12.2.3 / axecore-0.12.2.3-linux64.tar.gz
 

Проверьте целостность загрузки, выполнив следующую команду
и сравнивая вывод со значением для файла, как показано на
Веб-сайт Axe под хеш-файлом :

 sha256sum axecore-0.12.2.3-linux64.tar.gz
 

Ссылка на хэш-файл для проверки целостности загрузки

Создайте рабочий каталог для Axe, распакуйте сжатый архив,
скопируйте необходимые файлы в каталог и сделайте их исполняемыми:

 мкдир.топор
tar xfvz axecore-0.12.2.3-linux64.tar.gz
cp axecore-0.12.2 / bin / axed .axecore /
cp axecore-0.12.2 / bin / ax-cli .axecore /
chmod 777 .axecore / топор *
 

Очистить ненужные файлы:

 RM axecore-0.12.2.3-linux64.tar.gz
rm -r axecore-0.12.2 /
 

Создайте файл конфигурации с помощью следующей команды:

Появится окно редактора. Теперь нам нужно создать файл конфигурации
указав несколько переменных. Скопируйте и вставьте следующий текст, чтобы получить
запущен, затем замените переменные, относящиеся к вашей конфигурации, как
следует:

 # ----
rpcuser = XXXXXXXXXXXXX
rpcpassword = XXXXXXXXXXXXXXXXXXXXXXXXXXXX
rpcallowip = 127.0.0.1
# ----
слушать = 1
сервер = 1
демон = 1
maxconnections = 64
# ----
 

Заменить поля, помеченные как XXXXXXX , следующим образом:

  • rpcuser : введите любую строку цифр или букв, без специальных
    разрешенные символы
  • rpcpassword : введите любую строку цифр или букв, без специальных
    разрешенные символы

Результат должен выглядеть примерно так:

Ввод ключевых данных в axe.conf на узле P2Pool

Нажмите Ctrl + X , чтобы закрыть редактор, и Y и Введите , чтобы сохранить
файл.Теперь вы можете запустить Axe на мастерноде, чтобы начать
синхронизация с блокчейном:

Вы увидите сообщение Сервер Ax Core, начиная с . Ты можешь
продолжайте выполнять следующие шаги и периодически проверяйте синхронизацию
используя следующую команду. Синхронизация завершена, когда номер
блоков равно текущему количеству блоков в Ax
блокчейн, как видно из любого синхронизированного кошелька или блока Axe
исследователь:

 ~ /.axecore / ax-cli getblockcount
 

Настройка P2Pool

Теперь мы настроим программное обеспечение P2Pool и его зависимости. Начинать с
зависимости:

 sudo apt install python-zope.interface python-twisted python-twisted-web python-dev
sudo apt установить gcc g ++ git
 

Создайте рабочие каталоги и настройте p2pool-ax:

 мкдир мерзавец
cd git
git clone https://github.com/axerunners/p2pool-axe
cd p2pool-топор
git submodule init
git обновление подмодуля
cd axe_hash
настройка python.py install --user
 

Мы добавим несколько дополнительных интерфейсов в панель управления:

 кд ..
mv веб-статический веб-static.old
git clone https://github.com/justino/p2pool-ui-punchy веб-статический
mv web-static.old web-static / legacy
cd web-static
git clone https://github.com/johndoe75/p2pool-node-status статус
git clone https://github.com/hardcpp/P2PoolExtendedFrontEnd ext
 

Теперь вы можете запустить p2pool и, при желании, указать адрес выплаты,
внешний IP (при необходимости), размер комиссии и пожертвования:

 питон ~ / git / p2pool-ax / run_p2pool.py --external-ip <публичный_IP> -f <плата> --give-author <пожертвование> -a 
 

Затем вы можете контролировать свой узел, перейдя по следующим адресам:
заменив на IP-адрес вашего узла P2Pool:

Пример конфигурации, показывающий один подключенный Bitmain Antminer D3
к узлу p2pool-ax в локальной сети

[Руководство] Как присоединиться / настроить свой собственный объединенный p2pool. Держите Vertcoin децентрализованным! : vertcoin

Одним из главных плюсов vertcoin является его большая децентрализованная система p2pool.Вы можете майнить на одном узле, и хэш-мощность вашего узла объединяется со всеми другими подключенными узлами, чтобы обеспечить вам быстрые и прямые платежи!

В ваших интересах настроить собственный узел (частный или общедоступный, а также объединенный майнинг MON / PLX), но пока вы этого не сделаете, пожалуйста, присоединитесь к одному из общедоступных объединяемых узлов.


Присоединитесь к существующему


Найдите узел отсюда:

Merged mining enabled p2pool node list : Updating daily (xpost from /r/vertcoin from VertcoinMining

Вам нужно будет загрузить Monocle и Wallet подключитесь, как показано ниже (замените URL-адрес пула, vtc и адрес mon)

Подключитесь, используя

  -o stratum + tcp: // poolip: 9555 -u YOUR_VTC_ADDRESS -p YOUR_MON_ADDRESS
  

Пример:

  vertminer.exe -o stratum + tcp: //191.239.1.169: 9555 -u ViM4MQCCcEJYrfyjwxuprJDhZejkhUM7Pf -p MAuRTy5HWQkFaGFjitjw2G9Pdx5AqhoPGQ
  

Пример конфигурационного файла Vertminer:

  {"url": "stratum + tcp: //191.239.1.169: 9555", "user": "ViM4MQCCcEJYrfyjwxuprJDhZejkhUM7Pf", "pass": "MAuRhojpw5}
  

У большинства прокси p2pool теперь есть какой-то интерфейс, который вы можете просмотреть, чтобы проверить свою статистику, см. Список на этой странице выше или здесь для моих пулов: http: // 191.239.1.169: 9171


Создайте свою собственную


Вы можете загрузить установку виртуальной машины одним из разработчиков VTC здесь:

P2Pool "node in a box" and easy HOWTO for triple merge mining from vertcoin

или сделайте это с нуля:

Linux / Windows

Используйте -net vertcoin2 для 2-го пула, -net vertcoin3 для 3-го или -net vertcoin для 1-го при запуске собственного узла.

Для получения дополнительной информации о P2Pool ознакомьтесь с этим FAQ: http: // www.reddit.com/r/vertcoin/comments/22hved/vertcoin_p2pool_faq/

Чтобы объединить майнинг других монет, загрузите их кошельки и настройте файлы конфигурации, как вы это делали с vertcoin. Обязательно используйте их порты (по умолчанию MON - 6888, PLX - 7817) или, по крайней мере, отличные от тех, которые вы установили для vertcoin.

Добавить

  - объединено http: // MONUSER: [email protected]: MONPORT
  

и

  - объединены http: // PLXUSER: [email protected]: PLXPORT
  

на ваш

  python run_p2pool.ру
  

команда EG:

  python run_p2pool.py --net vertcoin2 -a YOURVTCADDRESS -f 0 --give-author 0 --no-bugreport --merged http: // MONUSER: [email protected]: MONPORT - добавлено http: // PLXUSER: [email protected]: PLXPORT
  

Если у вас 3Mh / s или более, вы можете присоединиться к любой

Если у вас 1–3MH, вы должны присоединиться ко второй или третьей сети

Если у вас меньше 1Mh, вы можете присоединиться к пулу прокси или присоединиться к третьей сети


Очень важно поддерживать децентрализацию криптовалюты, поскольку безопасность сети может быть скомпрометирована, если какой-либо пул станет слишком большим.Чем больше пул, тем больше у него мощности в сети. P2Pool распределяет мощность между каждым узлом, давая при этом преимущества высокой скорости хеширования. Победа - победа.

Как привлечь больше людей, занимающихся майнингом на P2Pool? : vertcoin

Итак, я размышлял об этом сегодня после того, как увидел, что P2Pool, кажется, составляет только около 3-8% сети Vertcoin большую часть времени. Поскольку соотношение майнинга P2Pool и майнинга не-P2Pool является одним из основных показателей здоровья Vertcoin, я хотел придумать идею привлечь больше майнеров P2Pool.Я не уверен, хорошо это или плохо, но я позволю вам решать.

До последнего форка майнинг на P2Pool вообще не стоил. Теперь, когда ASIC были отключены от сети, я могу сказать по своему собственному опыту, как небольшой майнер, использующий GTX 1070, я получаю в среднем около 31 MH / s, и я получаю прибыль, но это не так много. В настоящее время я получаю в среднем чуть более 1 VTC в день. Для жителя Онтарио, Канада, добыча 24 часа в сутки стоит 0,30 канадского доллара. 1 Vertcoin уже довольно давно стоит около 0,30 канадских долларов, хотя недавний памп был хорош, он просуществовал недолго, и мы снова опустились примерно до 0 долларов.35 CAD на момент написания этой статьи.

Если вы сделаете небольшую математику, легко увидеть, что такой небольшой майнер, как я, может зарабатывать всего несколько центов в день, добывая P2Pool. Предполагается, что Vertcoin будет народной монетой, выгодной для всех, но при таких ценовых уровнях она полезна только тем, у кого есть значительные вложения. На ум приходит старая поговорка: «Чтобы зарабатывать деньги, нужны деньги».

На P2Pool акции выплачиваются только при обнаружении блока. Поскольку мы говорим о небольших майнерах, я также собираюсь поговорить о «Сети 2» P2Pool, которая предназначена для майнеров с хешрейтом ниже 100 MH / s.Сеть 2 обычно составляет около 1% хешрейта сети Vertcoin, что означает гораздо более высокую дисперсию, когда дело доходит до поиска блоков. Это может привести к полосам убыточных неудач, которых может быть достаточно, чтобы убедить майнеров P2Pool переключиться на пулы с большинством хешрейта, что противоречит основным принципам Vertcoin как децентрализованной криптовалюты.

Учитывая открытый и децентрализованный характер Vertcoin, а также тот факт, что весь проект возглавляют волонтеры и финансируются за счет пожертвований, мне было интересно, что произойдет, если мы откроем новый фонд пожертвований, чтобы вернуть его лояльным майнерам, которые майнят на P2Pool.Пока есть только фонд пожертвований, который можно вернуть разработчикам, но лояльные майнеры являются неотъемлемой частью Vertcoin, которые также вносят большой вклад в успех проекта.

Я представляю, что это работает примерно так ... Люди, владеющие Vertcoin, могли бы иметь возможность возвращать деньги майнерам через Vertcoin.org на новый адрес пожертвования, такой как фонд разработки, маркетинговый фонд и фонд обмена, а также баланс также будет отображаться публично. Мы могли бы назвать это фондом пожертвований P2Pool или что-то в этом роде.Каждый раз, когда P2Pool находит блок, в дополнение к обычной выплате небольшой процент фонда пожертвований P2Pool также распределяется между майнерами P2Pool пропорционально их количеству долей. Это эффективно увеличит вознаграждение за блоки на P2Pool без увеличения предложения, борьбы с дисперсией из-за низкого хешрейта и повышения привлекательности майнинга P2Pool.

Вы даже можете проводить крутые мероприятия в такие дни, как день рождения Vertcoin, когда вы увеличиваете процент выплаты бонусов из фонда пожертвований P2Pool на 24 часа.

TL; DR - идея: создать новый фонд пожертвований для майнеров P2Pool и распределять небольшой процент фонда между майнерами P2Pool в зависимости от их доли работы каждый раз, когда P2pool находит блок.

Что вы думаете, ребята?

Vertcoin P2Pool FAQ: vertcoin

В последнее время появилось много сообщений с вопросами о P2Pool, чаще всего от людей, которым сложно понять, почему все работает не так, как они от них ожидают. Поскольку P2Pool - отличный способ сохранить децентрализацию сети, а Vertcoin является лидером в мире криптовалют по продвижению майнинга P2Pool, мне кажется, что нам нужно упростить майнерам, которые рассматривают возможность использования P2Pool, понимание различий, а не быть напуганным ими.Это не касается каких-либо проблем, связанных с программным обеспечением майнеров (таких как конфигурации вертминера или что-то еще), а скорее просто общие вещи P2Pool. Тем не менее, вот множество вопросов / проблем, которые я продолжаю видеть относительно P2Pool, и некоторые ответы!

Общие вопросы

Что такое P2Pool? Зачем мне майнить на нем?
Как описано в статье Bitcoin P2Pool, «P2Pool - это децентрализованный пул майнинга, который работает путем создания одноранговой сети узлов майнеров». Наиболее важным аспектом P2Pool является то, что он очень децентрализован, работает через одноранговую связь между многими, многими узлами, в отличие от передачи объединенной мощности майнинга в руки традиционных операторов пула майнинга, что значительно снижает риск 51 % атак на сеть.Заработок P2Pool также выплачивается непосредственно на кошельки майнеров, что устраняет необходимость доверять операторам пула для хранения ваших монет, а также позволяет избежать уплаты комиссии за транзакции при выплатах. Кроме того, хотя узлы P2Pool могут иметь комиссию, как и традиционные пулы, комиссии, как правило, ниже, и можно (и относительно просто) управлять своим собственным частным узлом P2Pool, что дает много преимуществ, не в последнюю очередь это 0% комиссий и ноль время простоя, пока ваша машина подключена к сети.

Как мне майнить на P2Pool?
Самый простой способ подключиться к сети P2Pool - подключиться к общедоступному узлу.Vertcoin в настоящее время имеет трех сетей P2Pool , а общедоступные узлы для трех перечислены на http://coin.cubeconnex.com/poollist/. Для достижения наилучших результатов майнеры захотят подключиться к узлу с низкой задержкой или, что еще лучше, запустить свои собственные узлы. Для тех, кто так склонен, инструкции по настройке узла P2Pool для Vertcoin доступны на https://github.com/donSchoe/p2pool-n как для Windows, так и для Linux. После того, как вы выбрали узел, вы можете просто подключиться к нему, используя адрес своего кошелька в качестве имени пользователя и что-нибудь (большинство людей используют x) в качестве пароля.Меньшие майнеры могут иметь лучший опыт использования второй или третьей сетей P2Pool из-за высокой сложности распределения первой сети, но об этом позже.

Итак, я начал майнить на узле P2Pool ... Почему я отправляю миллиард акций в минуту / почти никаких акций?
P2Pool может быть немного шатким, решая, какую сложность работы передать вашим сотрудникам, иногда предлагая вам работу, которая слишком проста, иногда работа, которая слишком сложна. Эту проблему можно решить, установив ручную сложность для вашего майнера, что можно сделать, добавив «+ <сложность>» в конец вашего адреса Vertcoin.Наиболее частое предложение, которое я видел для сложности майнинга, - * 0,00000116, хотя его можно изменить по своему усмотрению (независимо от того, что вас меньше всего отвергает). Так, например, при работе с картой, хэширующей 150 кГц / с, ваш адрес выплаты может выглядеть примерно так: VdtekY6D8mC8q7wt9TMQCjqeeQkWMteyrc + 0.000174.

Я хочу подключить несколько карт для майнинга к P2Pool. Должен ли я использовать разные адреса для выплат?
Наверное, нет. К одному адресу P2Pool можно подключить несколько устройств (с разными настройками сложности).Это объединит ваши выплаты, что в некоторой степени поможет сократить мелкие выплаты. Например, у вас может быть одна карта с адресом Vdt ... yrc + 0.000174, а другая с Vdt ... yrc + 0.0001972, и P2Pool будет распределять работу правильной сложности для обеих карт.

Есть ли способ просмотреть статистику отдельных рабочих?
Не совсем, хотя есть обходной путь, если вы запускаете частный узел, который позволяет вам немного окольным путем увидеть хеш / устаревание различных устройств.Если вы установите плату за узел равной 100%, все акции, добытые на узле, будут зачислены на любой адрес узла, что позволяет вам установить или в качестве имени рабочего для каждого устройства. Таким образом, все устройства могут отображаться по отдельности, при этом все зачисляя общий адрес на один адрес.

Я занимаюсь майнингом и получаю много акцептов, так почему у меня нулевая доля?
Именно здесь P2Pool чаще всего понимают неправильно, поэтому позвольте мне пояснить. Очень важным аспектом сети P2Pool является цепочка обмена, которая работает аналогично (и параллельно) цепочке блоков для сети Vertcoin, за исключением того, что она вознаграждает майнеров долями P2Pool, а не вознаграждением за блок Vertcoin.Доли генерируются в цепочке обмена, как блоки генерируются в цепочке блоков, за исключением того, что вместо 2,5-минутного времени блока он нацелен на 15-секундное время обмена. По сути, каждый на P2Pool занимается соло-майнингом в цепочке обмена, и каждый, кто обнаружил «блоки» (акции) в цепочке обмена в течение определенного периода, имеет право на часть выплаты, когда блоки обнаруживаются в цепочке блоков Vertcoin посредством сеть P2Pool.

Почему мои выплаты выглядят так плохо после майнинга в течение нескольких часов?
P2Pool работает по расширенной модели с оплатой за последние N акций (PPLNS).Чем больше действительных долей у майнера по сравнению с другими в сети, тем больше будут выплаты при обнаружении блоков. Общие ресурсы P2Pool остаются действительными в течение очень долгого времени по сравнению с большинством традиционных пулов: в течение ожидаемого времени, необходимого сети P2Pool для поиска 12 блоков, или в течение 24 часов, в зависимости от того, какой из них короче. Из-за этой системы выплаты P2Pool «нарастают» по мере накопления вами долей, пока они не стабилизируются по мере истечения срока действия ваших долей. Это не следует путать с упущенной прибылью по мере того, как вы наращиваете свои акции, так как эти «убытки» будут учтены, если / когда вы остановите майнинг, так как ваши действительные акции будут продолжать выплачиваться даже после того, как вы прекратите хэширование в сети.

Как работает комиссия P2Pool?
Комиссии P2Pool, как и большинство вещей в сети P2Pool, привязаны к общей цепочке. Вместо того, чтобы снимать фиксированную комиссию с ваших доходов, комиссии P2Pool по существу отдают процент ваших долей узлу. Обычно, если узел имеет комиссию в размере 1%, 1% работы, которую получает ваш майнер, будет помечен как принадлежащий узлу. Если эта отмеченная работа приводит к общему решению, узел получит общий ресурс вместо вас. В результате комиссии P2Pool менее последовательны, чем комиссии для традиционных пулов; вы можете майнить на узле неделями, не платя никаких комиссий, или можете потерять несколько акций подряд из-за комиссионных.

Думаю переключить узлы на P2Pool. Потеряю ли я свои акции?
Нет! Акции P2Pool привязаны к вашему адресу; не к какому-либо узлу в частности. Вы можете свободно переключать узлы без ущерба для ваших выплат. Поскольку комиссии также измеряются в долях, не будет никаких «затяжных платежей», производимых узлам, на которых вы ранее находили акции, или чему-либо в этом роде.

Устранение неполадок

У меня высокий процент отказов на моем майнере ... что-то не так?
Может быть.P2Pool, естественно, будет иметь больше отказов из-за быстрого, «блокирующего» времени цепочки обмена, поэтому вполне нормально иметь более высокий процент отказов, чем в обычном пуле. Если ваши отклонения аналогичны тем, которые показаны на других узлах в сети (что вы можете проверить на странице каждого узла), проблем быть не должно. Тем не менее, есть несколько вещей, которые вы можете сделать, чтобы уменьшить количество отказов (также относится к потерянным общим ресурсам). Установка сложности вручную для вашего майнера может помочь, так как короткое время блокировки в цепочке обмена может привести к задержкам, если ваша работа займет слишком много времени.Что касается сети, то подключение к узлу с более низким пингом очень поможет с устаревшими скоростями. Также может помочь убедиться, что ваше интернет-соединение не забито другим трафиком. Наконец, лучший способ уменьшить задержки, возникающие из-за проблем с сетью, - это настроить собственный узел, так как он, естественно, будет иметь самый низкий (нулевой) пинг для вас.

Я занимаюсь майнингом X времени без оплаты / перестал получать деньги. Как дела?
Либо сеть P2Pool не нашла блок, либо у вас нет действительных общих ресурсов ― попробуйте проверить статистику узла, на котором вы майните, и посмотрите, что там написано для вашего адреса.Последняя проблема может часто возникать у майнеров с низким хешрейтом в более крупных сетях P2Pool из-за того, как работает sharechain (сложность совместного использования увеличивается с размером сети P2Pool). Сообщество Vertcoin активизировалось и в определенной степени решило эту проблему, создав вторую сеть P2Pool, которая рекомендуется для небольших майнеров, поскольку более низкая сложность распределения приводит к меньшей дисперсии выплат.

Когда я пытаюсь отправить монеты, добытые из P2Pool, почему я должен платить комиссию за транзакцию?
Это не проблема, связанная с P2Pool, но может возникнуть, когда монеты в вашем кошельке слишком новые или слишком маленькие для достижения «среднего» приоритета.Поскольку P2Pool имеет тенденцию выплачиваться небольшими частями, это может потенциально привести к комиссиям при попытке потратить свою монету (хотя имейте в виду, что вы не платили комиссию за получение своей монеты). Тем не менее, можно избежать этих сборов, если вы можете объединить свои вклады для получения среднего или среднего приоритета. Для этого вам необходимо включить ручной ввод монет в кошелек Vertcoin (Настройки> Параметры> Дисплей> Функции управления монетами). Как только это будет сделано, вкладка отправки позволит вам выбрать ручной ввод для отправки монеты.Если вы выберете больший кусок монеты (скажем, 10VTC) со средним приоритетом, вы также можете выбрать кучу платежей за пыль и установить средний или средний приоритет (без комиссии). Если вы затем отправите этот комбинированный ввод себе, он в конечном итоге вернется к среднему приоритету, что даст вам больше монет, которые можно отправить с нулевой комиссией!

Другие вопросы

Что это за статистика на узле P2Pool?
Локальная скорость: совокупный хешрейт всех майнеров на узле. Процент DOA отражает скорость передачи устаревшей (недействительной) работы на узел.
Скорость глобального пула: комбинированный хешрейт всей сети P2Pool. Чем он больше, тем быстрее сеть найдет блоки, но взамен будет выше сложность совместного использования P2Pool. Скорость DOA здесь отражает среднюю долю устаревшего P2Pool для сети, которая отличается от измерения DOA по локальной скорости.
общих ресурсов (сиротские / DOA): общие ресурсы P2Pool, обнаруженные узлом, число вне скобок представляет общее количество обнаруженных акций, включая потерянные акции или DOA.Осиротевшие общие ресурсы - это обнаруженные общие ресурсы, которые не расширяются остальной частью сети и, следовательно, недействительны, и могут быть уменьшены за счет снижения задержки при обмене данными с сетью P2Pool. Нормально иметь определенную процентную ставку сиротства на P2Pool, при этом среднее значение продиктовано процентной долей DOA в глобальном пуле. Доли DOA - это акции, которые уже недействительны к тому моменту, когда майнер отправляет их на узел, что часто является результатом неправильной конфигурации (например, установки недопустимого адреса выплаты).
Сложность совместного использования: целевой уровень сложности для поиска акций P2Pool в цепочке обмена. Это измеряется с использованием того же метода, что и для сети Vertcoin, но должно быть намного, намного ниже. Сложность совместного использования становится выше по мере увеличения хешрейта сети P2Pool, а слишком высокая сложность совместного использования может привести к большой дисперсии для более мелких майнеров.
Ожидаемое время для совместного использования (узел / майнер): среднее время, необходимое для нахождения общего ресурса P2Pool в общей цепочке. Если вы не используете свой собственный частный узел, вам действительно не нужно беспокоиться о доле доступа к узлу, так как вам в любом случае платят только за свои доли.
Ожидаемое время для блокировки: среднее время, необходимое сети P2Pool, чтобы найти блок Vertcoin. Когда блок найден, все майнеры P2Pool с действующими долями P2Pool получат выплату.
Время работы узла: как долго узел был в сети. Вы, вероятно, захотите майнить на узле, который не выходит из строя все время, верно?
Прогнозируемая выплата: приблизительная сумма, которую вы получите, если прямо сейчас сеть P2Pool обнаружит блок. Обратите внимание, что это число может не полностью точно отражать вашу выплату.
Остальные вещи должны быть более или менее понятными. Если нет, дайте мне знать, и я добавлю их!

Смогу ли я заработать на P2Pool больше, чем на других пулах?
Нет. Эээ, да. Может быть? Все работает правильно и при условии нулевой комиссии, не должно быть разницы в долгосрочной прибыльности между майнингом на P2Pool, на традиционном пуле или даже майнингом в одиночку. Однако не все работает оптимально, и есть вещи, которые могут повлиять на вашу прибыльность в зависимости от того или другого.В частности, на P2Pool, помимо комиссий, если вы можете поддерживать количество отклоненных / просроченных акций ниже среднего по сети, ваша более высокая эффективность фактически приведет к увеличению прибыльности по сравнению с другими в сети. И наоборот, высокий процент брака / несвоевременности приведет к сравнительно низкой прибыльности.

Почему существует три сети P2Pool? *
Вторая сеть P2Pool была создана, чтобы уменьшить дисперсию для более мелких майнеров. Возвращаясь к цепочке обмена, по мере увеличения хешрейта сети P2Pool сложность совместного использования также увеличивается, чтобы поддерживать постоянное время совместного использования 10/15 секунд.В какой-то момент более мелкие майнеры могут больше не иметь возможности постоянно поддерживать действительные акции, что приводит к засухе выплат (увеличению дисперсии) между найденными акциями. Используя меньшую, вторую сеть P2Pool, можно надеяться, что для более мелких майнеров можно будет найти баланс, когда и доли, и блоки можно будет найти достаточно регулярно, чтобы сделать разницу более терпимой.
Теперь, когда вторая сеть стала достаточно большой, была создана третья сеть , и это может продолжаться бесконечно, поэтому, надеюсь, всегда останется место для более мелких майнеров на P2Pool.

Надеюсь, это поможет прояснить многие проблемы, с которыми люди сталкиваются с P2Pool. В этой статье описаны общие вопросы, которые я недавно видел, хотя я уверен, что есть и другие, которые я пропустил.