Обслуживание#
Мастреноды требуют регулярного обслуживания, это необходимо для того, чтобы не выпасть из очереди на выплату наград. Обслуживание включает в себя своевременное обновление 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/v21.1.1/dashcore-21.1.1-x86_64-linux-gnu.tar.gz
Убедитесь в подлинности загруженного файла, сверив его подпись с открытым ключом, опубликованным командой разработчиков Dash Core. Все выпуски Dash начиная с v0.16.0 подписываются с помощью GPG следующим ключом:
Pasta, с ключом
5252 7BED ABE8 7984, верифицируемым на Keybase (`скачать<https://keybase.io/pasta/pgp_keys.asc>`__)
curl https://keybase.io/pasta/pgp_keys.asc | gpg --import
wget https://github.com/dashpay/dash/releases/download/v21.1.1/dashcore-21.1.1-x86_64-linux-gnu.tar.gz.asc
gpg --verify dashcore-21.1.1-x86_64-linux-gnu.tar.gz.asc
Распакуйте архив и скопируйте новые файлы в следующую папку:
tar xfv dashcore-21.1.1-x86_64-linux-gnu.tar.gz
cp -f dashcore-21.1.1/bin/dashd ~/.dashcore/
cp -f dashcore-21.1.1/bin/dash-cli ~/.dashcore/
Перезапустите Dash:
~/.dashcore/dashd
Вы увидите сообщение «Запуск сервера Dash Core». Программное обеспечение Dash на мастерноде теперь обновлено.
Информация по обновлению мастерноды#
Периодически может возникнуть необходимость обновить информацию о мастерноде, если какие-либо данные о владельце или операторе мастерноды изменились. Например, это может быть IP адрес, изменение адреса выплат владельца/оператора или изменение назначенных для голосующего/оператора ключей. Также есть возможность отозвать зарегистрированный статус мастерноды (например, в случае проблем с безопасностью) для того, чтобы принудить и владельца, и оператора обновить данные.
Смена ключа оператора BLS или создание нового ProTx на основе той же операции обеспечения приведет к сбросу позиции в очереди на выплату. Смена IP-адреса или внесение изменений в адреса голосования или различных выплат не приведет к сбросу позиции в очереди на выплату.
ProUpServTx#
Транзакция Provider Update Service Transaction (ProUpServTx) используется для обновления информации, относящейся к оператору. Оператор может обновить поля IP-адреса и порта в записи мастерноды. Для эвонод он также может обновить связанные с платформой порты P2P и HTTP. Если ненулевое значение operatorReward было установлено в начальном ProRegTx, оператор может также установить поле operatorPayoutAddress в ProUpServTx. Если operatorPayoutAddress не задано и operatorReward ненулевое, владелец получает полное вознаграждение мастерноды.
Обычные мастерноды#
ProUpServTx мастерноды можно создать из DMT, нажав кнопку Обновить сервис, или из 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 и адрес награды оператора обновлены.
Эвоноды#
ProUpServTx эвоноды можно создать из DMT, нажав кнопку Обновить сервис, или из Dash Core, используя следующий синтаксис:
protx update_service_evo proTxHash ipAndPort operatorKey platformNodeId platformP2PPort platformHTTPPort (operatorPayoutAddress feeSourceAddress)
Где:
proTxHash: id транзакции изначального ProRegTxipAndPort: IP и порт из «ip:port»operatorKey: BLS приватный ключ оператора, привязанный к зарегистрированному публичному ключу оператораplatformNodeId: ID ноды платформы, полученный из публичного ключа P2P платформы.platformP2PPort: TCP-порт для пиринговой связи Platform между узлами (26656 для mainnet).platformHTTPPort: TCP-порт интерфейса Platform HTTP API (443 для основной сети).operatorPayoutAddress(необязательно): Адрес, используемый для выплат вознаграждений операторам. Допускается только в том случае, если ProRegTx имел ненулевое значениеoperatorReward. Введите"", чтобы использовать последний адрес выплаты вознаграждения оператора, или в качестве заполнителя при указанииfeeSourceAddress.feeSourceAddress(по желанию): адрес, использующийся для оплаты комиссии за ProTx. Будет использоватьсяoperatorPayoutAddress, если не указано другое.
Пример:
protx update_service_evo d6ec9a03e1251ac8c34178f47b6d763dc4ea6d96fd6eddb3c7aae2359e0f474a 140.82.59.51:10002 4308daa8de099d3d5f81694f6b618381e04311b9e0345b4f8b025392c33b0696 972a33056d57359de8acfa4fb8b29dc1c14f76b8 26656 443 yf6Cj6VcCfDxU5yweAT3NKKvm278rVbkhu
fad61c5f21cf3c0832f782c1444d3d2e2a8dbff39c5925c38033730e64ecc598
Теперь эвонода удалена из списка нод забаненных PoSe. Обновлены IP:порт, HTTP-порт платформы и P2P-порт, а также адреса вознаграждения оператора.
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
Устранение неисправностей Dashmate#
Если у вас возникли проблемы с мастернодой на базе dashmate, используйте команду dashmate doctor для сбора отладочной информации для устранения неполадок. Подробности см. на странице о Dashmate.
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. Введите адрес, на котором находится залоговое подтверждение на этом экране:
Добавление мастерноды на Dash Central#
Нажмите Add masternode. Теперь ваша мастернода добавлена на DashCentral.
Включение системы голосования из Dash Central#
Нажмите Edit под Voting privkeys и введите приватный ключ вашей мастерноды для подключения голосования через веб-интерфейс DashCentral. Введите кодовую фразу для голосования (она отличается от вашего пароля для входа на сайт и её также важно помнить!) и введите приватный ключ (тот же самый ключ, что вы использовали в файле dash.conf вашей мастерноды) на этом экране:
Добавление приватных ключей для голосования на Dash Central#
Важно обратить внимание на то, что приватный ключ для запуска мастерноды не имеет отношения к приватным ключам адреса с залоговым подтверждением в 1000 DASH. Эти ключи могут использоваться для отдачи команд от имени мастерноды, например, на голосование и не могут использоваться для доступа к залоговому подтверждению. Эти ключи зашифрованы на вашем устройстве и не хранятся в текстовом формате на серверах DashCentral. Как только вы ввели ключ, нажмите Store encrypted voting privkeys on server. Теперь вы можете голосовать по бюджетным предложениям из веб-интерфейса DashCentral.
Подтверждение владения#
Вы можете создать сообщение из своего адреса для подтверждения владения мастернодой для DashCentral. Нажмите Unverified под Ownership и появится следующий экран:
Подтверждение владения мастернодой для DashCentral#
Инструкция по подписи адреса с залоговым подтверждением через программу, связанную с кошельком. Если вы используете физический кошелёк, отличный от Trezor, то необходимо использовать приложение DMT для подписи адреса. Если вы используете физический кошелёк Trezor, то зайдите в него, скопируйте адрес суммы с залоговым подтверждением и нажмите Sign & Verify. Далее появится экран, где вы можете ввести сообщение, предоставленное Dash Central и адрес, который вы хотите подписать:
Подпись сообщения из кошелька Trezor#
Нажмите Sign, подтвердите ваш Trezor и введите PIN для подписи сообщения. Подпись сообщения появится в окне Signature. Скопируйте эту подпись, вставьте её в окно на DashCentral и нажмите Verify ownership. Процедура подтверждения завершена.
Владение мастернодой было успешно подтверждено#
Установка скрипта наблюдения за мастернодой DashCentral#
DashCentral предлагает сервис для наблюдения за вашей мастернодой, автоматический перезапуск dashd в случае отключения и отправку письма по e-mail в случае ошибки. Пройдите на страницу Account settings и создайте новый ключ API, добавив к своему профилю PIN, при необходимости. Проследуйте на этот экран:
Настройка скрипта наблюдения DashCentral#
Скопируйте ссылку на текущую версию скрипта 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#
################
# 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
Тестирование DashCentral updater вручную#
DashCentral updater успешно отправил данные на сайт DashCentral#
Как только вы убедились, что ваша конфгурация работает, то можно отредактировать crontab вашей системы для задачи расписания работы скрипта dcupdater каждые 2 минуты. Это позволит системе выдать вам раннее предупреждение в случае неполадок и перезапустит dash daemon в случае его зависания или прекращения работы. Это эффективный способ обрести уверенность в том, что вы не выпадите из очереди на выплаты. Напечатайте следующую команду:
crontab -e
Выберите редактор, если необходимо, и добавьте следующую строку в конец вашего crontab, заменив lwhite на ваше имя пользователя в вашей системе:
*/2 * * * * /home/lwhite/dashcentral-updater/dcupdater
Редактирование crontad для автоматического запуска DashCentral updater#
Нажмите 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 operates a blockchain explorer powered by a Dash fork of insight, an advanced blockchain API tool
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, на этом портале предлагаются продвинутые сервисы для наблюдения за мастернодами и голосованию по бюджетным предложениям через многофункциональный веб-интерфейс.
Информация о мастерноде#
http://178.254.23.111/~pub/Dash/Dash_Info.html
Этот сайт управляется членом форума и разработчиком Dash Core под именем crowning. Он предлагает визуализацию различной важной статистики сети мастернод Dash, включая графики общего числа мастернод, информацию по цене и распределение сети.