TAO'S START-MANY GUIDE FOR DUMMIES - UNDER CONSTRUCTION
(BASED ON THE FINE WORK OF orangecycle)
Hello, and welcome to TAO'S START-MANY GUIDE FOR DUMMIES! I'm TAO OF SATOSHI, and I will be walking you through this intimidating (but very rewarding) set-up! This guide is based on the work of orangecycle, without whose guide, I would not have done it myself!
If you are interested in setting up more than one Masternode, a start-many implementation will be very valuable to you come update time! With start-many, you can have all of your local addresses in one wallet, and issue one command to start all of your VPS instances at the same time!
Does this sound like something that would interest you?
LET'S GET STARTED!
First, this guide will split into two options for setting up your local wallet. Are you trying to consolidate multiple existing local wallets, or are you starting from scratch with new addresses, and just looking for a way to keep everything together?
Option 1 - Importing an existing wallet (recommended if you are consolidating wallets).
This is the way to go if you are consolidating multiple wallets into one that supports start-many.
On your desktop, open a Notepad file.
From your single-instance MasterNode wallet:
Open your QT Wallet.
Go to the Debug Console by clicking on Tools => Debug Console. The command line will be at the bottom.
Dump the private key from your MasterNode's public key. This is accomplished by entering the following commands:
walletpassphrase YOURPASSWORD 600
dumpprivkey MNPUBLICKEY
(Please note, MNPUBLICKEY is the address that holds the 1000 DRKs for that Masternode (Address 0))
You will see a string of numbers in the next line.
That is your address's private key!
Copy this private key to your notepad file. You'll need it in the next step.
Repeat these steps for any additional Masternode wallets you may have on your computer.
From your multi-instance MasterNode wallet:
Open your QT Wallet.
Go to the Debug Console by clicking on Tools => Debug Console. The command line will be at the bottom.
You will need to import the private key from your wallet which you copied into the notepad file in the step above.
Enter the following commands:
walletpassphrase YOURPASSWORD 600
importprivkey PRIVATEKEYFROMNOTEPADFILE
The wallet will re-scan. It may take several minutes, so be patient. When the scan is complete, you will begin to see all of the addresses' transactions be imported to your new wallet and you will see your available balance increase by the amount that was in the imported wallet.
Skip Option 2. and go to Create masternode.conf file.
Option 2 - Sending 1,000 DRK to new wallet addresses.
This is the way to go if you are starting from scratch with brand new addresses.
Please note: If you used Option 1 above, then you can skip down to Create masternode.conf file.
Create new wallet addresses:
- Open the QT Wallet.
- Click the Receive tab.
- Fill in the form to request a payment.
- Label: mn01
- Amount: 1000 DRK
- Click Request payment
- Click the Copy Address button
Create a new wallet address for each MasterNode.
Close your QT Wallet.
Send 1,000 DRK to New Addresses
Just like setting up a standard MN. Send exactly 1,000 DRK to each new address created above.
Create New Keys
Open your QT Wallet and go to console (from the menu select Tools => Debug Console)
Issue the following:
masternode genkey
Close your QT Wallet.
Create masternode.conf file
Remember... this is local. Make sure your QT is not running.
Create the masternode.conf file in the same directory as your wallet.dat.
Copy the private key and correspondig collateral output transaction that holds the 1K DRK.
The private key may be an existing key from Option 1, or a newly generated key from Option 2.
Get the collateral output
Open your QT Wallet and go to console (from the menu select Tools => Debug Console)
Issue the following:
masternode outputs
Make note of the hash (which is your collaterla_output) and index.
Enter your MasterNode details into your masternode.conf file
From the darkcoin github repo
The new masternode.conf format consists of a space seperated text file. Each line consisting of an alias, IP address followed by port, masternode private key, collateral output transaction id and collateral output index.
alias ipaddress
ort masternode_private_key collateral_output collateral_output_index
Example:
mn01 127.0.0.1:9999 93HaYBVUCYjEMeeH1Y4sBGLALQZE1Yc1K64xiqgX37tGBDQL8Xg 2bcd3c84c84f87eaa86e4e56834c92927a07f9e18718810b92e0d0324456a67c 0
mn02 127.0.0.2:9999 93WaAb3htPJEV8E9aQcN23Jt97bPex7YvWfgMDTUdWJvzmrMqey aa9f1034d973377a5e733272c3d0eced1de22555ad45d6b24abadff8087948d4 0
What about the darkcoin.conf file?
If you are using a masternode.conf file you no longer need the darkcoin.conf file. The exception is if you need custom settings (thanks oblox).
Update darkcoin.conf on server
If you generated a new private key, you will need to update the remote darkcoin.conf files.
Shut down the daemon and then edit the file.
sudo nano .darkcoin/darkcoin.conf
Edit the masternodeprivkey
If you generated a new private key, you will need to update the masternodeprivkey value in your remote darkcoin.conf file.
Start your MasterNodes
Remote
If your remote server is not running, start your remote daemon as you normally would.
I usually confirm that remote is on the correct block by issuing:
darkcoind getinfo
And compare with the official explorer at
http://explorer.darkcoin.io/chain/Darkcoin
Local
Finally... time to start from local.
Open up your QT Wallet
From the menu select Tools => Debug Console
If you want to review your masternode.conf setting before starting the MasterNodes, issue the following in the Debug Console:
masternode list-conf
Give it the eye-ball test. If satisfied, you can start your nodes one of two ways.
- masternode start-alias [alias_from_masternode.conf]. Example masternode start-alias mn01
- masternode start-many