Обслуживание#
Мастреноды требуют регулярного обслуживания, это необходимо для того, чтобы не выпасть из очереди на выплату наград. Обслуживание включает в себя своевременное обновление Dash и поддержку уровня безопасности и производительности сервера на должном уровне. Также мастерноды должны голосовать по бюджетным предложениям и выполнять другие задачи в интересах сети и для поддержки стоимости DASH, заложенных в них.
Обновление программного обеспечения мастерноды#
Программное обеспечение Dash Core требует регулярного обновления, чтобы оставаться в соответствии с текущим сетевым консенсусом. Чтобы вручную обновить свою мастерноду, выполните описанную ниже процедуру. Если вы все еще используете устаревшую программу установки dashman, обратитесь к документации по обновлению устаревшей версии <https://docs.dash.org/en/0.15.0/masternodes/maintenance.html#masternode-software-update>`__.
Ручное обновление#
Для обновления Dash вручную, войдите в учётную запись вашего сервера, использовав ssh или PuTTY. Если в вашем файле crontab содержится запись для автоматического перезапуска dashd, запустите crontab -e
и пропишите соответствующую строку добавлением символа #
. Это должно выглядеть вот так:
# * * * * * pidof dashd || ~/.dashcore/dashd
После этого остановите работу Dash:
~/.dashcore/dash-cli stop
Посетите страницу релизов GitHub и скопируйте ссылку в последнюю версию x86_64-linux-gnu. Вернитесь в окно терминала и введите следующую команду, вставив адрес в последней версии Dash Core, кликнув правой кнопкой мыши или нажав Ctrl + V:
cd /tmp
wget https://github.com/dashpay/dash/releases/download/v20.0.4/dashcore-20.0.4-x86_64-linux-gnu.tar.gz
Убедитесь в подлинности загруженного файла, сверив его подпись с открытым ключом, опубликованным командой разработчиков Dash Core. Все выпуски Dash подписываются с помощью GPG одним из следующих ключей:
Александр Блок (codablock) с ключом
63A9 6B40 6102 E091
, ``верифицируемый здесь на Keybase <https://keybase.io/codablock>`__Pasta с ключом
5252 7BED ABE8 7984
, ``верифицируемым здесь на Keybase <https://keybase.io/pasta>`__
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/v20.0.4/dashcore-20.0.4-x86_64-linux-gnu.tar.gz.asc
gpg --verify dashcore-20.0.4-x86_64-linux-gnu.tar.gz.asc
Распакуйте архив и скопируйте новые файлы в следующую папку:
tar xfv dashcore-20.0.4-x86_64-linux-gnu.tar.gz
cp -f dashcore-20.0.4/bin/dashd ~/.dashcore/
cp -f dashcore-20.0.4/bin/dash-cli ~/.dashcore/
Перезапустите Dash:
~/.dashcore/dashd
You will see a message reading «Dash Core server starting». The Dash software on the masternode is now updated.
Информация по обновлению мастерноды#
Периодически может возникнуть необходимость обновить информацию о мастерноде, если какие-либо данные о владельце или операторе мастерноды изменились. Например, это может быть IP адрес, изменение адреса выплат владельца/оператора или изменение назначенных для голосующего/оператора ключей. Также есть возможность отозвать зарегистрированный статус мастерноды (например, в случае проблем с безопасностью) для того, чтобы принудить и владельца, и оператора обновить данные.
Смена ключа оператора BLS или создание нового ProTx на основе той же операции обеспечения приведет к сбросу позиции в очереди на выплату. Смена IP-адреса или внесение изменений в адреса голосования или различных выплат не приведет к сбросу позиции в очереди на выплату.
ProUpServTx#
Служебная Транзакция Обновления Информации о Поставщике Услуг или Provider Update Service Transaction (ProUpServTx) используется для обновления информации, касающейся оператора. Оператор может обновить IP адрес и входящие порты мастерноды. Если в изначальном ProRegTX была выставлена operatorReward
отличная от нуля, то оператор может настроить поле operatorPayoutAddress
в ProUpServTx. Если operatorPayoutAddress
не установлен или operatorReward
равен нулю, то владелец получает полную награду. ProUpServTx можно создать из DMT, нажав кнопку Update service, или из Dash Core, используя следующий синтаксис:
protx update_service proTxHash ipAndPort operatorKey (operatorPayoutAddress feeSourceAddress)
Где:
proTxHash
: id транзакции изначального ProRegTxipAndPort
: IP и порт из «ip:port»operatorKey
: BLS приватный ключ оператора, привязанный к зарегистрированному публичному ключу оператораoperatorPayoutAddress
(необязательно): Адрес, используемый для выплат вознаграждений операторам. Допускается только в том случае, если ProRegTx имел ненулевое значениеoperatorReward
. Введите""
, чтобы использовать последний адрес выплаты вознаграждения оператора, или в качестве заполнителя при указанииfeeSourceAddress
.feeSourceAddress
(по желанию): адрес, использующийся для оплаты комиссии за ProTx. Будет использоватьсяoperatorPayoutAddress
, если не указано другое.
Пример:
protx update_service d6ec9a03e1251ac8c34178f47b6d763dc4ea6d96fd6eddb3c7aae2359e0f474a 140.82.59.51:10002 4308daa8de099d3d5f81694f6b618381e04311b9e0345b4f8b025392c33b0696 yf6Cj6VcCfDxU5yweAT3NKKvm278rVbkhu
fad61c5f21cf3c0832f782c1444d3d2e2a8dbff39c5925c38033730e64ecc598
Теперь мастернода удалена из бан-списка PoSe, а IP:port и адрес награды оператора обновлены.
ProUpRegTx#
Регистрационная транзакция обновления информации о провайдере или Provider Update Registrar Transaction (ProUpRegTx) используется для обновления информации, касающейся владельца. Владелец может обновить публичный BLS ключ оператора (например, чтобы назначить нового оператора), адрес голосования и адреса выплат операторов. ProUpRegTx можно создать из DMT, нажав кнопки Update operator key, Update voting key или Update payout addr., или из Dash Core, используя следующий синтаксис:
protx update_registrar proTxHash operatorKeyAddr votingKeyAddr payoutAddress (feeSourceAddress)
Предупреждение
После активации хард форка v19 необходимо использовать ``protx update_registrar_legacy““, если для обновления регистратора мастерноды используется BLS-ключ по устаревшей схеме.
Где:
proTxHash
: id транзакции изначального ProRegTxoperatorKeyAddr
: Обновленный BLS публичный ключ или значение""
для использования ключа последнего оператора в цепи.votingKeyAddr
: обновлённый адрес для ключа голосования или значение""
для использования ключа последнего голосующего в блокчейне.payoutAddress
: обновлённый адрес для выплат владельцу или значение""
для использования ключа последнего оператора в цепи.feeSourceAddress
(по желанию): адрес для оплаты комиссии за ProTx. Если не указано иное, то будет использоваться``PayoutAddress``.
Пример обновления адреса выплат:
protx update_registrar cedce432ebabc9366f5eb1e3abc219558de9fbd2530a13589b698e4bf917b8ae "" "" yi5kVoPQQ8xaVoriytJFzpvKomAQxg6zea
ProUpRevTx#
Транзакция отзыва обновления информации о провайдере или Provider Update Revocation Transaction (ProUpRevTx) используется оператором для прекращения услуг или сигнализации владельцу о том, что необходим новый BLS ключ. Данная транзакция немедленно поместит мастерноду в бан PoSe. Владелец должен будет отправить ProUpRegTx для назначения нового ключа оператора. После того как ProUpRegTX будет включена в блок, новый оператор должен будет отправить ProUpServTx для обновления метаданных и исключения из бана PoSe (восстановить мастерноду). ProUpRevTx можно создать из DMT, нажав кнопку Revoke operator, или из Dash Core, используя следующий синтаксис:
protx revoke proTxHash operatorKey reason (feeSourceAddress)
Где:
proTxHash
: id транзакции изначального ProRegTxoperatorKey
: BLS приватный ключ оператора, привязанный к зарегистрированному публичному ключу оператораreason
: целочисленное значение, обозначающее причину отзываfeeSourceAddress
(по желанию): адрес, использующийся для оплаты комиссии за ProTx. Будет использоватьсяoperatorPayoutAddress
, если не указано другое.
Пример:
protx revoke 9f5ec7540baeefc4b7581d88d236792851f26b4b754684a31ee35d09bdfb7fb6 565950700d7bdc6a9dbc9963920bc756551b02de6e4711eff9ba6d4af59c0101 0
Proof of Service Bans#
Если ваш мастернода не может обеспечить обслуживание сети в соответствии с действующими правилами консенсуса, он получит Proof of Service Ban. Если ваша мастернода находится в статусе POSE_BANNED
, необходимо проверить правильность следующих настроек:
Убедитесь, что вы используете последнюю версию Dash.
Убедитесь, что мастерноде достаточно памяти, свопа, вычислительной мощности и места на жестком диске
Убедитесь, что вы полностью синхронизированы с корректной высотой блока, и что вы находитесь в правильной цепочке, а не в вилочном соединении
Убедитесь, что закрытый ключ BLS указан с помощью опции
masternodeblsprivkey
в файлеdash.conf
мастернодыУбедитесь, что закрытый ключ BLS мастерноды уникален в сети и не используется совместно с другими узлами.
Убедитесь, что закрытый ключ BLS мастерноды соответствует открытому ключу BLS, зарегистрированному на блокчейне в
ProRegTx
илиProUpRegTx
.Убедитесь, что
externalip
(иport
, если используется testnet) указаны правильно и не заблокированы брандмауэром или службой переадресации портов
Убедившись в правильности этих настроек, можно обновить статус обслуживания в сети и вернуться к действительному набору мастернод, создав ProUpServTx. После восстановления обслуживания внимательно следите за состоянием своего мастерноды с помощью masternode status
и/или файла debug.log
. Эта информация поможет определить конкретную неправильную конфигурацию, из-за которой мастер-узел был запрещен. Если мастернода продолжает отказываться от обслуживания, он будет снова запрещен.
Голосование, проверки и слежение за мастернодами на DashCentral#
Сайт Dash Central имеет поддержку сообщества и управляется пользователем Rango. Этот сайт стал местом, на котором «де-факто» обсуждаются бюджетные предложения, для чего там предлагается графический интерфейс, но, кроме этого, там можно следить за мастернодами.
Добавление вашей мастерноды на Dash Central#
Dashcentral позволяет вам голосовать по бюджетным предложениям прямо из браузера. После завершения регистрации, пройдите на страницу мастерноды и нажмите кнопку Add masternode now. Введите адрес, на котором находится залоговое подтверждение на этом экране:
Нажмите Add masternode. Теперь ваша мастернода добавлена на DashCentral.
Включение системы голосования из Dash Central#
Нажмите Edit под Voting privkeys и введите приватный ключ вашей мастерноды для подключения голосования через веб-интерфейс DashCentral. Введите кодовую фразу для голосования (она отличается от вашего пароля для входа на сайт и её также важно помнить!) и введите приватный ключ (тот же самый ключ, что вы использовали в файле dash.conf вашей мастерноды) на этом экране:
Важно обратить внимание на то, что приватный ключ для запуска мастерноды не имеет отношения к приватным ключам адреса с залоговым подтверждением в 1000 DASH. Эти ключи могут использоваться для отдачи команд от имени мастерноды, например, на голосование и не могут использоваться для доступа к залоговому подтверждению. Эти ключи зашифрованы на вашем устройстве и не хранятся в текстовом формате на серверах DashCentral. Как только вы ввели ключ, нажмите Store encrypted voting privkeys on server. Теперь вы можете голосовать по бюджетным предложениям из веб-интерфейса DashCentral.
Подтверждение владения#
Вы можете создать сообщение из своего адреса для подтверждения владения мастернодой для DashCentral. Нажмите Unverified под Ownership и появится следующий экран:
Инструкция по подписи адреса с залоговым подтверждением через программу, связанную с кошельком. Если вы используете физический кошелёк, отличный от Trezor, то необходимо использовать приложение DMT для подписи адреса. Если вы используете физический кошелёк Trezor, то зайдите в него, скопируйте адрес суммы с залоговым подтверждением и нажмите Sign & Verify. Далее появится экран, где вы можете ввести сообщение, предоставленное Dash Central и адрес, который вы хотите подписать:
Нажмите Sign, подтвердите ваш Trezor и введите PIN для подписи сообщения. Подпись сообщения появится в окне Signature. Скопируйте эту подпись, вставьте её в окно на DashCentral и нажмите Verify ownership. Процедура подтверждения завершена.
Установка скрипта наблюдения за мастернодой DashCentral#
DashCentral предлагает сервис для наблюдения за вашей мастернодой, автоматический перезапуск dashd в случае отключения и отправку письма по e-mail в случае ошибки. Пройдите на страницу Account settings и создайте новый ключ API, добавив к своему профилю PIN, при необходимости. Проследуйте на этот экран:
Скопируйте ссылку на текущую версию скрипта dashcentral, нажав правой кнопкой мыши и выбрав Copy link address. Откройте PuTTY, присоединитесь к своей мастерноде и напечатайте:
wget https://www.dashcentral.org/downloads/dashcentral-updater-v6.tgz
Заместите ссылку ссылкой с текущей версией dashcentral-updater, если необходимо. Разархивируйте архив, используя следующую команду:
tar xvzf dashcentral-updater-v6.tgz
Подробную информацию о конфигурации вашей мастерноды можно увидеть напечатав:
cat .dashcore/dash.conf
Скопируйте значения для rpcuser` и ``rpcpassword
. Далее, отредактируйте конфигурацию dashcentral, написав:
nano dashcentral-updater/dashcentral.conf
Замените значения api_key
, адреса залогового подтверждения вашей мастерноды, rpc_user
, rpc_password
, daemon_binary
и daemon_datadir
в соответствии с вашей системой. Чаще всего, конфигурация выглядит следующим образом, где lwhite
это имя пользователя Linux:
################
# dashcentral-updater configuration
################
our %settings = (
# Enter your DashCentral api key here
'api_key' => 'api_key_from_dashcentral'
);
our %masternodes = (
'masternode_collateral_address' => {
'rpc_host' => 'localhost',
'rpc_port' => 9998,
'rpc_user' => 'rpc_user_from_dash.conf',
'rpc_password' => 'rpc_password_from_dash.conf',
'daemon_autorestart' => 'enabled',
'daemon_binary' => '/home/<username>/.dashcore/dashd',
'daemon_datadir' => '/home/<username>/.dashcore'
}
);
Нажмите Ctrl + X для выхода, подтвердите, что хотите сохранить, нажав Y , далее нажмите Enter. Протестируйте свою конфигурацию, запустив скрипт dashcentral, затем проверьте сайт. Если всё прошло успешно, вы увидете, что было отправлено обновление:
dashcentral-updater/dcupdater
Как только вы убедились, что ваша конфгурация работает, то можно отредактировать crontab вашей системы для задачи расписания работы скрипта dcupdater каждые 2 минуты. Это позволит системе выдать вам раннее предупреждение в случае неполадок и перезапустит dash daemon в случае его зависания или прекращения работы. Это эффективный способ обрести уверенность в том, что вы не выпадите из очереди на выплаты. Напечатайте следующую команду:
crontab -e
Select an editor if necessary and add the following line at the end of your crontab, replacing lwhite with your username on your system:
*/2 * * * * /home/lwhite/dashcentral-updater/dcupdater
Нажмите Ctrl + X для выхода, подтвердите, что хотите сохранить, нажав Y , далее нажмите Enter. Теперь скрипт dcupdater будет запускаться каждые 2 минуты, перезапускать dashd, когда это будет необходимо и отправлять вам e-mail в случае ошибки.
Интсрументы за наблюдением за мастернодой#
Некоторые сайты, управляемые членами сообщества Dash, могут использоваться для слежения за ключевой информацией и статистикой, относящейся к сети мастернод.
Обозреватели блоков#
Поскольку Dash является публичным блокчейном, то для просмотра балансов публичных адресов Dash возможно использование обозревателей блоков. Также возможно исследовать транзакции в любом блоке. Каждая уникальная транзакция доступна к поиску через txid. Для сети Dash существует несколько обозревателей блоков.
Blockchair предлагает обозреватель блоков с подробными визуальными данными для анализа блокчейна Dash.
CryptoID предлагает Dash blockchain explorer и функцию для просмотра местоположения мастернод Dash.
BitInfoCharts предлает страницу со статистикой по ценам и обозреватель блоков.
CoinCheckup предоставляет ряд статистических данных и информации по большинству блокчейнов, включая Dash.
Dash.org включает в себя обозреватели блокчейна по адресу explorer.dash.org и insight.dash.org.
Trezor управляет блокчейн-проводником на базе Dash-форка insight, продвинутого инструмента API блокчейна
Dash Masternode Tool#
Bertrand256/dash-masternode-tool
Программа написана и поддерживается членом сообщества Dash Bertrant256. Dash Masternode Tool (DMT) позволяет осуществлять запуск мастерноды со всех ведущих физических кошельков, таких как Trezor, Ledger и KeepKey. Дополнительно, программа поддерживает функцию голосования по бюджетным предложениям и вывода выплат для мастернод, не затрагивая залоговое подтверждение.
DASH Ninja#
DASH Ninja управляется участником форума и разработчиком Dash Core под именем elbereth. Предлагается ключевая статистика по применению различных версий Dash во всей сети мастернод. Есть несколько функций для наблюдения за управлением Dash, расписанием вылат и географическим распределением мастернод. Доступен простой обозреватель блоков.
DashCentral#
DashCentral управляется членом форума под именем rango, на этом портале предлагаются продвинутые сервисы для наблюдения за мастернодами и голосованию по бюджетным предложениям через многофункциональный веб-интерфейс.
Masternode.me#
Masternode.me управляется членом коммьюнити Dash под именем moocowmoo. Предлагается информация по цене, скорости генерации блоков, информация по блокчейну и некоторая информация по мастернодам.
Информация о мастерноде#
http://178.254.23.111/~pub/Dash/Dash_Info.html
Этот сайт управляется членом форума и разработчиком Dash Core под именем crowning. Он предлагает визуализацию различной важной статистики сети мастернод Dash, включая графики общего числа мастернод, информацию по цене и распределение сети.