Jump to content

All Activity

This stream auto-updates     

  1. Last week
  2. Silver Peak is one of the main companies at the forefront of the SD-WAN (software defined wide area network) trend in networking right now. Now is the perfect time to get involved as a Silver Peak SD-WAN engineer. The professional should be able to deploy two EdgeConnect appliances. This will help the businesses to operate as a single SD-WAN. They must be well-versed with the virtual router redundancy protocol to move the local area network (LAN) traffic to a designated master SD-WAN.
  3. Added screenshot to first post in how the list showed unregistered as one daemon being tracked lost sync. Useful already.
  4. Earlier
  5. What the index.html looks like to add the row header to the above. index.html <html> <head> <title>FortunaStake List</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css"> <script type="text/javascript" src="block.js?version=0.1337"></script> <script type="text/javascript" src="fortunastake.js?version=0.1337"></script> <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="style.css?version=0.1337"> </head> <body> <div class="row"> <div class="col">FortunaStake List</div> </div> <div class="row"> <div class="col">Block #<div id="block"; style="display:inline-block"; class="animated rubberBand"></div></div> </div> <div class="row"> <div class="col">FS #</div> <div class="col">IP Address</div> <div class="col">Address</div> <div class="col">Status</div> <div class="col">Earnings</div> </div> <div id="fsnumber"></div> </body> </html>
  6. This is a lot easier than it looks, and a super easy way to watch the status of your Fortunastakes (masternodes) from anything, including a raspberry pi. If you have multiple fortunastakes, somehow you want to get each json of your fortunastake status onto a single nginx server. Depends a lot on how to go about this. I am using blocknotify on the daemon to create 1.json and 2.json files, also grab the current block from blocknotify send that to block.txt, sending these files to /var/www/html and then making sure permissions are what I want. Install nginx on your ubuntu you will be using. sudo apt install nginx Verify that works by going to your ip address. I am doing everything on a local network, this is gonna vary, but if its working you should see the default nginx welcome screen. denarius.conf (change the full path to your server, maybe /home/username/status.sh) blocknotify=/root/status.sh status.sh (creates block.txt and iterates through 2 fortunastakes on same server at directories /root/D01 and /root/D02, i<3 is +1 of the number you are running if on same server) #!/bin/bash denariusd -datadir=/root/D01 getblockcount > /var/www/html/block.txt #stop and start 01-02 for ((i=1; i<3; i++)) do echo "$i" denariusd -datadir=/root/D0$i fortunastake status > /var/www/html/$i.json chmod -R 644 /var/www/html/* done Restart the daemon and on the first new block status.sh will run and send the files into /var/www/html. Double check the directory has some files after running for a bit. Basically you want to get each of your Fortunastakes json files into your /var/www/html, maybe even using scp from multiple vps's. Just make sure to label them 1.json 2.json 3.json and so forth for how we will iterate through these json files. example of using scp command way to do it, you want ssh-key login if using scp scp 2.json [email protected]:/var/www/html/2.json Create 4 files we will use to create the website, stick them in /var/www/html folder style.css body { background: #020000; font-family: 'Raleway', sans-serif; font-size:16px; } .row { display: flex; flex-wrap: wrap; } .col { flex: 1 0 18%; /* The important bit. This percentage decides your columns. The percent can be px. It just represents your minimum starting width. */ margin: 0.5px; background: #333333; height: 30px; color: white; display: flex; align-items: center; justify-content: center; } /* visited link */ a:visited { color: white; } /* unvisited link */ a:link { color: white; } fortunastake.js fetchData = () => { const urls = [ "1.json", "2.json" ]; const allRequests = urls.map(url => fetch(url).then(response => response.json()) ); return Promise.all(allRequests); }; fetchData().then(arrayOfResponses => { for (index = 0; index < arrayOfResponses.length; index++) { window.FS = '<div class="row">' + '<div class="col">FS' + [index+1] + '</div>' + '<div class="col">' + (arrayOfResponses[index].local.service) + '</div>' + '<div class="col">' + '<a href="https://www.coinexplorer.net/D/address/' + (arrayOfResponses[index].local.payment_address) + '">' + (arrayOfResponses[index].local.payment_address) + '</a></div>' + '<div class="col">' + (arrayOfResponses[index].local.network_status) + '</div>' + '<div class="col">' + parseFloat((arrayOfResponses[index].local.earnings) / 100000000).toFixed(8) + '</div>' + '</div>'; console.log(window.FS) $("#fsnumber").append(window.FS).hide().fadeIn("fast"); } } ); block.html fetch('block.txt', {mode: 'no-cors'}) .then(function(response) { return response.json(); }) .then(function(data) { if (data) console.log(data); $('#block').html(""); $("#block").append(data).hide().fadeIn("slow"); }) .catch(function(err) { console.log(err); }); var listen = setInterval(function() { fetch('block.txt', {mode: 'no-cors'}) .then(function(response) { return response.json(); }) .then(function(data) { if (data) console.log(data); $('#block').html(""); $("#block").append(data).hide().fadeIn("slow"); }) .catch(function(err) { console.log(err); }); }, 30000);//30 second index.html <html> <head> <title>FortunaStake List</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css"> <script type="text/javascript" src="block.js?version=0.1337"></script> <script type="text/javascript" src="fortunastake.js?version=0.1337"></script> <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="style.css?version=0.1337"> </head> <body> <div class="row"> <div class="col">FortunaStake List</div> </div> <div class="row"> <div class="col">Block #<div id="block"; style="display:inline-block"; class="animated rubberBand"></div></div> </div> <div id="fsnumber"></div> </body> </html> Go back to your nginx IP and force refresh by using shift+ctrl+r and now you can start watching your Fortunastake Status from wherever. This uses a 5 column flex grid and has clickable link to coinexplorer per address and auto refreshes the block count every 30 seconds. This does not autorefresh the FS list though. FS # | IP Address | FS Address | Status | Round Earnings What it shows when one goes down from the list. This particular one lost sync on the daemon, and still shows active as I restarted the QT. Was about to get bumped off to inactive and REKT.
  7. Reduce bandwidth as much as possible running the QT wallet or daemon. 500megs is a good starting point for max upload daily (this is a suggestion and won't cap completely at this number), 8 connections is the minimum for peer2peer to work. And should use listen=1, but if trying to run this on low bandwidth capped ISP try below. denarius.conf maxconnections=8 maxuploadtarget=500 listen=0 or run with flags -maxconnections=8 -maxuploadtarget=500 -listen=0
  8. need to start these services sudo systemctl start pcscd.service sudo systemctl start pcscd.socket
  9. for payouts to work go to near line 57 and add your coin symbol in /var/web/yaamp/core/backend/payment.php // todo: enhance/detect payout_max from normal sendmany error if($coin->symbol == 'BOD' || $coin->symbol == 'TWIT' || $coin->symbol == 'D' ||
  10. how to change diff on a stratum /var/stratum/config/scrypt.conf [STRATUM] algo = scrypt difficulty = 150000 max_ttf = 40000
  11. to set separate fees per algo, near the bottom of the file serverconfig.php // Sample fixed pool fees $configFixedPoolFees = array( 'zr5' => 2.0, 'scrypt' => 0.5, 'sha256' => 5.0, );
  12. I am using a yubikey 5 for this and Manjaro KDE distro. Amazon has same day delivery https://amzn.to/338KYgF slightly different but basically the same as official arch install, except I took out assuming the -m and $MK PIV application's 24-byte management key part as it didn't work for me when generating the self signed certificate. https://wiki.archlinux.org/index.php/YubiKey#Using_a_YubiKey_with_SSH #install yubikey manager sudo pacman -S yubikey-manager yubikey-manager-qt #plug in yubikey and verify it can be seen ykman list #generate key ykman piv generate-key -a RSA2048 9a pubkey.pem #generate self signed certificate ykman piv generate-certificate -d 1826 -s "SSH Key" 9a pubkey.pem #install opensc package sudo pacman -S opensc #configure ssh to use opensc library nano ~/.ssh/config #enter single line below, save and exit PKCS11Provider /usr/lib/opensc-pkcs11.so #convert public-key to standard openssh format ssh-keygen -i -m PKCS8 -f pubkey.pem > pubkey.txt #cat pubkey.txt to see your public key. example can copy and paste the public key into scaleway credentials cat pubkey.txt #or another way to get the public key onto your server cat ~/pubkey.txt | ssh [email protected] 'cat >> .ssh/authorized_keys' now when you ssh into your server, plug in your yubikey and you will be asked for a pin at the login prompt example ssh [email protected] and you will now be prompted for the yubikey pin to access your server
  13. I am using the snap daemon now as its so much easier than compiling or using the script install snapd if its not already installed sudo apt update sudo apt install snapd sudo snap install denarius run the daemon once to get the autoconfigured denarius.conf denarius.daemon wait a minute or so and stop the daemon denarius.daemon stop go to the snap denarius chaindata folder cd ~/snap/denarius/common/.denarius remove the chaindata just created rm -rf database txleveldb smsgDB get latest chaindata from pos.watch wget https://pos.watch/chaindata.zip unzip chaindata.zip overwrite anything it says, nano denarius.conf and add your fortunastakeprivkey and leave everything else alone. nothing else needs to be touched after enakyz did some updates to how the fortunastake works. and start daemon denarius.daemon start from collateral wallet (QT) and done
  14. updating chaindata here https://pos.watch/chaindata.zip the website shows the blockcount and also has an md5 checksum to verify
  15. I have denarius snap already installed so I add denarius_1 as above and this is what snap list shows. snap list Name Version Rev Tracking Publisher Notes core 16-2.41 7713 stable canonical✓ core core18 20191001 1192 stable canonical✓ base denarius 77 stable carsenk - denarius_1 77 stable carsenk - to run the 2nd denarius daemon denarius_1 denarius_1.daemon denarius_1 is now in the ~/snap/denarius_1 folder ~/snap$ ls -l total 28 drwxr-xr-x 5 user user 4096 Oct 5 20:15 denarius drwxr-xr-x 4 user user 4096 Oct 6 10:18 denarius_1 hint: listen=0 and +1 to port and rpcport per additional daemon/QT EZ-MODE
  16. Multiple Instances can now be run. How to do Snap Denarius Parallel Installs # Enable parallel instances sudo snap set system experimental.parallel-instances=true # First instance - normal install (not required if already installed) sudo snap install denarius # Second or more instances sudo snap install denarius denarius_1 sudo snap install denarius denarius_2 sudo snap install denarius denarius_3
  17. First create an account at https://www.unnamed.exchange/ Remember to use a strong unique password and enable 2FA. After validating your email, go to the Addresses list and then click Create Deposit Address In this example we are depositing Bitcoin. Type BTC to find Bitcoin and push enter, then click next to get your Bitcoin Deposit Address. Deposit Bitcoin into the exchange by either copy and pasting the BTC address, or use the QT code on something like coinomi with a camera. After clicking continue you will be brought back to the address list again. Wait for your confirmations after sending Bitcoin in and start buying up Denarius! Bitcoin takes 10 minutes per confirmation, and currently the exchange requires 2 confirmations for a deposit of Bitcoin. Denarius takes 30 seconds per confirmation, and currently the exchange requires 20 confirmation for a deposit of Denarius.
  18. Official Denarius QT / daemon Snap is available at https://snapcraft.io/denarius To install sudo apt update sudo apt install snapd sudo snap install denarius To run QT denarius To run the daemon denarius.daemon chaindata stored in ~/snap/denarius/common/.denarius cd ~/snap/denarius/common/.denarius Sample daemon command denarius.daemon getinfo stop daemon denarius.daemon stop
  19. verifying this also builds amd64 version on snapcraft itself https://build.snapcraft.io/user/buzzkillb/d-snapcraft/688224
  20. How to build denarius cryptocurrency in snapcraft. I used Ubuntu 18.04 Bionic as the OS for this process, but the build is done in 16.04 Xenial. https://github.com/buzzkillb/d-snapcraft We are going to build in LXD, which I ended up using a combination of the below guides. https://forum.snapcraft.io/t/how-to-create-a-lxd-container-for-snap-development/4658 https://forum.snapcraft.io/t/build-on-lxd/4157 Install LXD from snap sudo snap install lxd initialize LXD (I used all the default settings) sudo lxd init Give permissions so we can run without root sudo usermod -a -G lxd ${USER} Bring the setting through newgrp lxd Building Manually in Xenial lxc launch ubuntu:16.04 mysnapcraft Bring your snapcraft.yaml in from your PC and bring into LDX lxc file push snap/snapcraft.yaml mysnapcraft/home/ubuntu/ Open up a shell and install snapcraft lxc exec mysnapcraft -- /bin/bash snap install snapcraft --classic Lets build our snapcraft.yaml cd /home/ubuntu snapcraft prime snapcraft You will get a file like this denarius_master_amd64.snap Bring the snap into your PC, open up another terminal and type below and stay on that terminal for the remaining. sudo lxc file pull mysnapcraft/home/ubuntu/denarius_master_amd64.snap denarius_master_amd64.snap Install the snap sudo snap install denarius_master_amd64.snap --dangerous Run denarius QT denarius Should be ready to mess around with this.
  21. Thanks gang, everything seems to be going a-oh-great.
  22. I'm sure its a long way from being "perfect", but take a look at the generic-seeder project I started earlier this year and see if it doesn't already do more-or-less what you are looking for: https://github.com/team-exor/generic-seeder I struggled way more than should have been necessary when I first started looking at how to adapt the bitcoin seeder to work with another coin. All the data that needs to change from coin to coin is buried in the source code in the most unobvious of places. So the first thing I did to remedy this was to add the ability to enter the kind of data that changes from coin to coin into a config file. That made it easy to quickly set up a new seeder for any coin in a matter of minutes (assuming you already know the current protocol version, port #, magic bytes, etc. for your coin). The next thing I struggled with was setting up the actual dns record to make proper use of the data that the crawler was collecting and dumping. I see you already have what looks like a great set of instructions to do the DNS setup here: https://denariustalk.org/index.php?/topic/314-dns-seeder-setup/. However, I did find that some savvy coder(s) figured out a much easier and fool-proof way to accomplish the same thing by utilizing a python script and retasking a cloudflare account into performing the DNS portion of the seeders work (as sort of mentioned above this post). In an ideal world, the code for this cloudflare setup should not be in a separate python script but should instead be part of the c++ seeder code to limit dependencies on other programming languages. I hope to either find the time to build this out more properly in the future or maybe some kind soul will do that for me given that it is open source after all. I did take the liberty of modifying the original cloudflare script(s) I found in the wild by fixing a few bugs and integrating the configuration for the python script into the same config file that is consumed by the generic-seeder app - so there's no need for separate config files all over the place. At this point, everything was working quite beautifully I thought, but still one thing bothered me about the original dns seeder code. I couldn't seem to understand why the block height that was being used to determine which nodes were considered "good" or "bad" was a static value. Now, I've been around a few blockchains over the years and one thing I've found that many chains suffer from are peers that are stuck on a block. To be honest, I never bothered to ask the original author of the bitcoin seeder why the block height check was based on a value that doesn't change. Perhaps there is a good reason for the way this was originally developed, and it could be that my next "fix" won't be appreciated or desired. But I decided that I wanted my seeder to effectively have the ability to weed out these pesky stuck peers and so the generic-seeder can also contact a trusted block explorer to achieve this goal. If a block explorer api url is specified in the config, the explorer api is contacted every 60 seconds (this should likely be a config variable for next update) and the updated block height value from the explorer is then used to validate against other nodes in the next series of tests. The block explorer integration is optional and the seeder still has the ability to hardcode the block height (using the config file) if you so choose. Feel free to clone or fork and build your own implementations on top of this. Again, it may certainly not be perfect, but I think it's a huge step in the right direction if I do say so myself. I hope you agree 😃
  23. Use those lines above in your denarius.conf file. fsconflock=1 forces the 5000 to not be touched to allow the fortunastake continue running. staking=1 tells the wallet to stake. Default is 1, but just as well put this. When you get a FS reward, it will go into your collateral wallet address. Say 5001 D after you get your first reward. That 1 D will now sit there for 8 hours and then be ready to stake. What I am seeing recently is it takes about 4-5 days to stake around 12 D, so try to leave the wallet open when you can as staking helps secure the blockchain. Ask whatever questions you still have.
  24. put these options in the denarius.conf file and restart the qt wallet staking=1 fsconflock=1 This will enable two things.Obviously the first enables the staking and the second locks the collateral so it wont stake.So you will be able to unlock and stake the earnings without breaking the collateral.Enjoy and welcome to our Community.
  25. @manosv @buzzkillb Sorry to bother you guys, I have a question. I've set up a FortunaStake with a separate (cold) wallet - the wallet says it has 5000D locked but also that 5000D is available for staking. Am I allowed to unlock that wallet for staking, or do I have to leave it locked and untouched in order to qualify as a masternode? Thanks again for your help!
  26. Thanks very much! I wasn't sure if it was a separate thing or not, so I wasn't sure which tutorials I should be following. I'll head down that path and I'm sure I'll be back with more stupid questions as I flail around.
  1. Load more activity
  • Create New...