Run your Own Unmanaged Verification Node for Dragon Rewards

I have compiled some helpful hints for installing your Unmanaged L2 Node for the Dragonchain Platform. These are points that, as a non-technical person, would have been nice to understand before I started this endeavor. Some of this you may find elementary, but just like when I talk about MRI scan parameters, the technical members of the family use a language that is not easily understood by some in the community (probably just me). But it’s all good. We’re in this together and we each have our part so let’s dive in.

First and foremost, what are we doing? We are setting up an Unmanaged L2 Node. A node is like a computer and is simply one part of a network of computers that are connected. Each node validates, or basically, approves a transaction and records that transaction in the network. The unmanaged part simply means that Dragonchain is not running your node. You are responsible for the costs associated with the node. You can do this on your own computer in your home or you can utilize an off site server called VPS or virtual private server. Linode and AWS are VPS. One of my concerns, and my husband’s insistence, was the security of our personal equipment at home. Whether it’s the computers, gaming systems, phones, or tablets he wanted to make sure that we didn’t have an open line into the house. We are not technically savvy enough to provide the necessary security to our personal systems. This is where the VPS is a dream come true. When you follow the system that John and Grits have provided it’s important to understand that the Linode server you are signing up for is operating outside your house. So while you are setting everything up using your home computer the node will NOT be running off of your home computer.

Ok, so now that the worrying is done, we can begin. I highly recommend you watch the tutorials on the Dragonchain Academy before you begin. Please note that when the video tutorial was made, 4GB of RAM and 2 CPU cores were required per node in order to run without issue. Since then this requirement has reduced to 2GB of RAM and 1 CPU core.

This allows you to become familiar with the process so that when you’re following the steps it’s not so strange. In addition, below each video are supporting documents, hosted on Github, that will be updated on a regular basis. It’s within these documents that you will find the most up to date versions of the commands necessary to install your node.

After watching the tutorials, log in to your Dragonchain console. (The process from here assumes you have already claimed your wallet within the console. If you have not, you will need to do that first. You can follow the steps here.)

These steps below may be found in the supporting documents located beneath the videos in the tutorial. I have added comments to the areas that made me confused and so may confuse another.

If running nodes on your own hardware (not VPS), please see the **footnote at the bottom of this article before beginning.

In Dragonchain Console do the following:

  • Select Dragon Net
  • Select Register Unmanaged Chain. Make sure it says L2 Unmanaged Chain. Then type a name of your choosing.
  • Select Create Unmanaged Chain. You will then see your L2 Chain defined.
  • Select Matchmaking located at the top of the screen. (There is a glitch soon to resolve, and it will say L1 next to your chain name. Just ignore the L1.)

You will then see two keys. The Chain Id and the Matchmaking Token. You will need these after you set up the Linode server, so just shrink the screen so it is available when you need it.

Now you need to go to Linode.com. In the Dragonchain supporting documents located in the course it refers to AWS and Linode. AWS-Amazon Web Services acts as a VPS. The servers are warehoused off-site and not in your home. Your ability to access those servers is what is referred to as the cloud. You can use these servers for a fee paid to Amazon. Linode is also a VPS. This tutorial uses Linode and does the same thing as AWS in that it’s a server running and maintained at some offsite location. You will need to sign up on Linode. Just like anything you sign up for, you will need to provide a credit card on file. Once you are signed up, follow these steps:

  • Select Dashboard
  • Select Create
  • Select Linode
  • Under Choose a Distribution, Select Ubuntu 19.04- Ubuntu is a type of Linux server, a server is a program managing/allowing access to a central resource.
  • Select Region, any region is fine but one close to you is recommended.
  • Select Linode 2GB, currently you will need to use at least 2GB with 1 CPU core (NO LESS).
  • You can add a tag but it isn’t necessary unless you plan to have multiple VPS’s or more nodes down the road. It’s more for organization.
  • Enter in a Root Password. This is NOT a password to get into Linode.com This is a password you will use to get into the Linode server. Make it secure!
  • Don’t do anything with the SSH keys at this time. There is no immediate need for backup, you can do that later and you don’t need private IP.
  • Select Create. It will provision (which means it’s loading). It’s finished at 100%.
  • Select Launch Console. A block screen will appear.
  • TYPE root

Next it asks for password.

  • TYPE the password you created to get into the Linode server. (Not your Linode.com password.)

The screen should now read root@localhost:~#

This means you are logged into Your Linode Ubuntu Server as root!

You can run your node from here, but to make it run smoother you should follow John’s instructions to use Git BASH.

  • TYPE exit to leave the server.

Next, you will need to open up a terminal. The terminal has a black screen and provides a text-based interface for typing commands. (If you ask me, as a non-tech person, it’s super scary looking. I had a little flashback to those old computers from back in the day with the green screens and the flashing cursor. Not gonna lie, the terminal drove me nuts while I was using it, but afterwards I had a real sense of accomplishment.) The terminal this tutorial focuses on is Git BASH. If you have Windows simply search for Git BASH and download. Once Git BASH finishes downloading, open the terminal. You can resize it to your liking.

If you have a MAC, your terminal can be found under the Launchpad (icon that has a rocket ship picture) and it may have a white background. If you don’t have Launchpad then you can access terminal as outlined in this following document.

Alternately, you could download Git BASH for MAC. But honestly, I have an old Mac and I have the Launchpad icon so you probably have it too. It’s time to actually use this terminal. Good luck! Leave the terminal up and pull up Linode.com.

  • COPY the SSH Access under the Networking Tab.
  • PASTE the SSH into your terminal.
  • Press Enter. Since this is the first time, it will ask if you want to keep going.
  • TYPE yes
  • TYPE your password for the Linode server. (Not the Linode.com password.)

You are now logged in. It should read root@localhost:~#

Not so bad, right?

Now we have to run the script. The script is the program or commands given to the server to connect to your Dragonchain node.

It is VERY beneficial to your sanity to COPY and PASTE the commands. You will see John say this over and over again. Typing leaves room for errors. ALWAYS take the commands from the Academy course or GitHub. If newer versions are being utilized the commands in the course and GitHub will be updated.

At this point you have two options to get the script.

  1. Use the Academy course. From the 4th video, Installation Option #1: Automatic Installation, under the video Select View Docs. Or;
  2. Use the Github documentation

Again, because it is super important, always use the latest version of the Github docs. Github will be updated with greater frequency than the Academy course. Whenever possible, COPY and PASTE the commands rather than typing. When I first did this I created more work and a bigger headache for myself by not doing this. So be like John, don’t be like BitBuy!

In the guide you will see 7 sections.

  1. Refers to information found in the Dragonchain console and on the Linode.com website. Hopefully you still have those two sites ready to pull up. If not go ahead and pull them up.
  2. Refers to accessing the terminal and connecting to the Linode server which should have already been done.
  3. The script. COPY and PASTE the command (including the wget part) next to the prompt: root@localhost:~# Press Enter.
  4. Makes the script “runnable”. COPY and PASTE the command. Press Enter.
  5. Actually runs the script you downloaded. COPY and PASTE the command. Press Enter.
  6. Refers to the prompts that will now be on the terminal.
  • It will ask for the Chain ID. This is from your Dragonchain console, so pull up the console. COPY and PASTE Chain ID here. Press Enter.
  • Then it asks for your Matchmaking Token from the Dragonchain console. COPY and PASTE the Matchmaking Token here. Press Enter.
  • Next it asks for your IP address. Bring up Linode. The IP address is located on the right side under the Summary tab. It is also located under the Networking tab in the second section labeled IPv4. The IP address looks like 12.34.56.78 .
  • COPY and PASTE your address so that it looks like this:

http://12.34.56.78 (your address)

  • Finally, it asks for the endpoint. Unless you know your specific number just

TYPE 30000.

This will take some time to initialize. It checks every 30 seconds and you will see a list start to form like this:

[1] Ready: 0 Running; 1

[2] Ready: 1 Running:2

[3] Ready:3 Running:5

And so on until it reads Ready: 5 Running:5

This could take several minutes so don’t touch. Maybe get a cup of Knowledge Perk coffee and let it do its thing.

When finished, it will say, in green: STATUS CHECKS GOOD. DRAGONCHAIN IS RUNNING.

It then lists your Chain Public ID, your HMAC (aka access) ID and Key. Save them in a simple text document for safekeeping just in case you need them down the road.

Next message is also in green and reads: YOUR DRAGONCHAIN NODE IS ONLINE AND REGISTERED WITH THE MATCHMAKING API! HAPPY NODING!

It will then ask if you want to run updates.

  • TYPE yes

When the updates are finished you TYPE exit, press enter, then close the terminal.

Don’t forget to go back to your Dragonchain console and dedicate your TIME to this L2 Unmanaged Node. No need to keep the computer on, because remember, you are simply using your home computer to set everything up in the cloud.

  1. Refers to HAPPY NODING! You will see your DRGN rewards within the console under funds. You should start to see movement within a day or two. I do want to stress that node selection is random. It will drive you crazy to compare yourself day to day with fellow noders. If there is movement, you’re good. That being said, if you really feel like something isn’t right just ask. A simple fix may be all that is needed to get the node running correctly. Also remember that you are constantly accruing TIME. So, go into the console and dedicate the newly accrued TIME to your node at regular intervals. The TIME you are seeing accumulate is from the DRGNs that are in your wallet and not from the additional DRGN earned via the node. Currently funds can not be withdrawn, however, the ability to do so is in the works so hang tight. And finally, the process has been tested for use with the above mentioned specifications (Linode VPS- Ubuntu). It is HIGHLY recommended you don’t deviate from the suggested specifications. In particular, super low-cost VPS providers seem to have a great deal of trouble with the software being installed. If the price seems too good to be true, it probably is. If cost is a major concern, remember you can set up an Ubuntu server on an old PC or even inside of your Windows or Mac computer at no additional cost. Though John and Grits can’t necessarily help with every step of that process, ask around in the Dragonchain Telegram. Several people have done it on their own computers and are happy to help.

Most importantly, remember, you are early. They are still ironing out the details. The process for installing these unmanaged nodes was put together by GritsnGravy and JohnWantsMore. They are a part of the community and just like you they have families and day jobs so be patient, have respect, and be kind. Chad did provide some emotional support, but requested no mention.

**footnote for users running nodes on their own hardware (not VPS/cloud services): In most cases by default your router/modem likely does not have port 30000 open (or whichever you choose to use). If this is the case, you will be able to run the script, however at the end when checking the connection, the script will issue a message similar to “Error: Unable to communicate with the matchmaking API. Timed out.” In order to open a port on the router/modem side, a user must log in to the admin panel for their network. On a computer connected to the network, please open a command prompt or terminal session and execute the command “ipconfig” (on **nix systems it is “ifconfig”). You are looking for the IP address of the “default gateway”. Supposing the gateway IP is 192.168.0.1, open any browser and enter this as a url (some people may have 10.0.0.1, or many other possibilities). Hit enter, and you will be directed to your network’s admin panel. Unless you’ve changed it, the default login may be found by searching your router model online for “default login”. Mine had a username of “admin” and a password of “password”. Log in, and find (possibly under “Advanced” tab) the page for “Port Forwarding”, all panels vary a little. You will need to enter the port number (probably 30000) as well as the internal IP address of the device you are running a node on. To find the internal IP, again issue the ip/ifconfig command and look for “IPv4 Address”. For connection type you may select either TCP or TCP/UDP. Save these settings, and that’s it, your computer will now be able to communicate with Net through this port. **

Guest blog by BitBuyTheCoin.