Jump to content

Search the Community

Showing results for tags 'xrouter'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News & Announcements
    • BlockForums Announcements
    • Denarius Announcements
    • Kronos Wallet Announcements
    • The Crypto News Feed
  • Cryptocurrency Discussions
    • Cryptocurrencies
    • Altcoin Announcements
    • General Discussion
    • Tutorials & Help
  • Denarius Discussions
    • General Discussion
    • Tutorials & Help
    • Marketing & PR
    • Development
    • Mining & Staking
    • Trading & Exchanges
    • Marketplace
  • Programming & Design
    • Development QA
    • Design QA
  • Gaming
    • Bot Downloads & Discussion
    • Gaming Discussion
  • Classifieds
    • Buy Sell and Trade
  • Other Discussions
    • Element 115
    • The Lounge
    • Hardware & IoT
    • Tutorials & Guides
    • Domains & Hosting

Product Groups

There are no results to display.

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



About Me

BTC Address

Found 3 results

  1. The idea is to run the blocknet daemon as your main wallet daemon (like a masternode), and have that setup to talk to your other wallet daemons. For example blocknet daemon will be setup with XBridge for the native Wallet to native Wallet atomic swaps. If someone wants to atomic swap between Block and Litecoin they will need a service node running the Block and Litecoin daemons. If someone wants to atomic swap between Litecoin and Denarius they will need a service node running Litecoin and Denarius daemons. Once finished you will be running a Block service node with XBridge and Enterprise XRouter all behind a Cloudflare tls/ssl proxy. WORK IN PROGRESS! The setup will require Blocknet Daemon Litecoin Daemon Denarius Daemon Free Cloudflare Account (Enterprise XRouter) Domain Name (Enterprise XRouter) I would suggest running Block and Litecoin at the very least for a service node. The goal is to show the main Block service node setup with XBridge and XRouter, grabbing the Litecoin Binary, and compiling Denarius daemon binary. To find sample xbridge.conf for your coin https://github.com/blocknetdx/blockchain-configuration-files/tree/master/xbridge-confs To find sample coin.conf for your coin https://github.com/blocknetdx/blockchain-configuration-files/tree/master/wallet-confs Prepare VPS/VM install ufw install fail2ban setup user blockhead remove root login and password logins setup ssh keys - Windows 10 - https://blockforums.org/topic/448-how-to-setup-block-service-node-xbridge-and-enterprise-xrouter/?do=findComment&comment=3434 Setup Block Go to github to find your binary, this will change as new wallets release over time. https://github.com/blocknetdx/blocknet Releases and then find your OS type, x86_64 Download the binary by right clicking the one you want and copy link and put into the wget command. wget https://github.com/blocknetdx/blocknet/releases/download/v4.3.1/blocknet-4.3.1-x86_64-linux-gnu.tar.gz untar binary tar xzvf blocknet-4.3.1-x86_64-linux-gnu.tar.gz copy to /usr/local/bin (maybe? not sure) adjust blocknet.conf nano ~/.blocknet/blocknet.conf To save your file ctrl+o, or I just ctrl+x to save and exit nano. Sample blocknet.conf server=1 listen=1 rpcuser=blocknetuser rpcpassword=decentlystrongpassword rpcallowip= port=41412 rpcport=41414 txindex=1 daemon=1 enableexchange=1 servicenode=1 rpcthreads=8 xrouter=1 run daemon and sync cd blocknet-4.3.1-x86_64-linux-gnu cd bin ./blocknetd to stop daemon ./blocknet-cli stop Setup crontab so blocknet will run on reboot crontab -e Add this line to the bottom for reboot, notice I am leaving the binary in its untarred directory. blockhead is the username we chose from above. @reboot /home/blockhead/blocknet-4.3.1/bin/blocknetd Setup Litecoin wget binary unzip binary move to /usr/local/bin adjust .conf run daemon and sync Setup Denarius install snap adjust .conf run daemon and sync edit Block XBridge conf, we will add BLOCK, LTC, and D. nano ~/.blocknet/xbridge.conf Sample xbridge.conf [Main] ExchangeWallets=BLOCK,LTC,D FullLog=true LogPath= ExchangeTax=300 ShowAllOrders=false [BLOCK] Title=Blocknet Ip= Username=blocknetuser Password=decentlystrongpassword Port=41414 AddressPrefix=26 ScriptPrefix=28 SecretPrefix=154 COIN=100000000 MinimumAmount=0 TxVersion=1 DustAmount=0 CreateTxMethod=BTC GetNewKeySupported=true ImportWithNoScanSupported=true MinTxFee=10000 BlockTime=60 FeePerByte=20 Confirmations=0 Address= TxWithTimeField=false LockCoinsSupported=false JSONVersion= ContentType= CashAddrPrefix= [LTC] Title=Litecoin Address= Ip= Port=9332 Username=litecoinuser Password=Password=decentlystrongpassword AddressPrefix=48 ScriptPrefix=50 SecretPrefix=176 COIN=100000000 MinimumAmount=0 DustAmount=0 CreateTxMethod=BTC GetNewKeySupported=true ImportWithNoScanSupported=true FeePerByte=10 MinTxFee=5000 TxVersion=2 BlockTime=150 Confirmations=0 TxWithTimeField=false LockCoinsSupported=false JSONVersion= ContentType= CashAddrPrefix= [D] Title=Denarius Ip= Port=32369 AddressPrefix=30 ScriptPrefix=90 SecretPrefix=158 COIN=100000000 MinimumAmount=0 TxVersion=1 DustAmount=0 CreateTxMethod=BTC GetNewKeySupported=true ImportWithNoScanSupported=true MinTxFee=2000 BlockTime=30 FeePerByte=5 Confirmations=0 Username=denariususer Password=decentlystrongpassword Address= TxWithTimeField=true LockCoinsSupported=false JSONVersion= ContentType= CashAddrPrefix= edit Block XRouter.conf nano ~/.blocknet/xrouter.conf Sample xrouter.conf [Main] #! host is a mandatory field, this tells the XRouter network how to find your node. #! DNS and ip addresses are acceptable values. #! host=mynode.example.com #! host= host=api.denarius.pro wallets=BLOCK,LTC,D plugins=0 fee=0 #! port is the tcpip port on the host that accepts xrouter connections. #! port will default to the default blockchain port (e.g. 41412), examples: #! port=41412 #! port=80 #! port=8080 port=80 #! tls signals to the xrouter network that your endpoint supports TLS/SSL connections. #! The default is 0 (false). #! tls=1 tls=1 #! maxfee is the maximum fee (in BLOCK) you're willing to pay on a single xrouter call #! 0 means you only want free calls maxfee=0 #! consensus is the minimum number of nodes you want your xrouter calls to query (1 or more) #! Paid calls will send a payment to each selected service node. consensus=1 #! timeout is the maximum time in seconds you're willing to wait for an XRouter response timeout=30 #! Optionally set per-call config options: #! [xrGetBlockCount] #! maxfee=0.01 #! [BLOCK::xrGetBlockCount] #! maxfee=0.01 #! [SYS::xrGetBlockCount] #! maxfee=0.01 #! It's possible to set config options for Custom XRouter services #! [xrs::GetBestBlockHashBTC] #! maxfee=0.1 #! Plugin help documentation can be set here as well as in the plugin conf. #! [xrs::ExampleRPC] #! help=The plugin documentation here. [xrGetBlockCount] fee=0.01 [xrGetBlockHash] fee=0.01 [xrGetTransaction] fee=0.1 clientrequestlimit=20 [BTC::xrGetTransactions] fee=0.5 timeout=50 fetchlimit=20 [BTC::xrGetBlocks] fee=0.3 timeout=30 fetchlimit=20 [xrGetBlocks] disabled=1 fetchlimit=50 Once done you want to reload everything. I setup a simple bash script in the blocknet-releasenumber/bin folder called pingping.sh. Example folder cd ~/blocknet-4.3.1/bin/ nano pingping.sh sample pingping.sh #!/bin/bash printf "reload xbridge\n" ./blocknet-cli dxLoadXBridgeConf printf "reload xrouter\n" ./blocknet-cli xrReloadConfigs printf "list tokens\n" ./blocknet-cli dxGetLocalTokens printf "XrStatus\n" ./blocknet-cli xrStatus printf "send service node ping\n" ./blocknet-cli servicenodesendping chmod the file to allow execution and run chmod +x pingping.sh ./pingping.sh If all of the above worked should see something like this at the end for every coin you are running. "status": "running", "services": [ "BLOCK", "BTC", "D", "DASH", "DGB", "DOGE", "DVT", "LTC", "MONA", "PHR", "RVN", "XSN", "XVG", "XZC", "xr", "xr::BLOCK", "xr::BTC", "xr::D", "xr::DASH", "xr::DGB", "xr::DOGE", "xr::DVT", "xr::LTC", "xr::MONA", "xr::PHR", "xr::RVN", "xr::XSN", "xr::XVG", "xr::XZC" ] setup Enterprise XRouter xrproxy docker
  2. The idea is to run your block service node daemons from its own VLAN subnet, then setup each daemon including the service node and enterprise xrouter from Proxmox lxc containers. The main network PC's can talk to things in the BLOCK network, but the things in the BLOCK network can't talk to anything outside of the VLAN. UDM Controller is constantly changing, this will vary as they continue releasing firmware updates to fix things. Go to Settings -> Networks -> Add a New Network Name: Block VLAN ID: 100 domain name: block I let the UDM controller handle the rest, as I don't know where they did the DHCP subnet settings for this. Click Apply Changes when done. We now have a BLOCK VLAN to work with, and each hostname will be like denarius-container.block. Next we setup the firewall rules so our LAN network can see the BLOCK VLAN, but BLOCK VLAN can't see our LAN network. Settings -> Security -> Firewall -> LAN -> Create New Rule We want to allow everything so the first rule we create is Allow all Established/Related Traffic Then we want to block BLOCK to LAN With the rules setup we can now setup the Proxmox lxc containers.
  3. Read the docs over a few times on how to setup Enterprise Xrouter. https://gist.github.com/Aderks/e3ebee5730b337ca7e0d3510155c9e05 and https://github.com/blocknetdx/exrproxy Basically the first example is putting the uwsgi.ini file in /xrproxy directory so I am going to throw the extra cloudflare certificates in same folder to make this as easy as possible. Once you get setup the docker run command I am using for this setup is docker run -d --name=xrproxy -p 80:80 -p 443:443 -v=/xrproxy:/opt/uwsgi/conf blocknetdx/xrouterproxy:latest First we want to put the Cloudflare Certificates into the /xrproxy folder, so login to Cloudflare. Go to SSL/TLS -> Origin Server -> Create Certificate and either use the default or like I did, specifiy the full subdomain. Here I am showing example.denarius.pro for the example. Click Next. Insert Origin Certificate into a cert.pem sudo nano /xrproxy/cert.pem Insert Private Key into key.pem sudo nano /xrproxy/key.pem Not sure if cloudflare.crt matters but do it anyways. Download and copy https://support.cloudflare.com/hc/en-us/article_attachments/360044928032/origin-pull-ca.pem into cloudflare.crt sudo nano /xrproxy/cloudflare.crt below for easy to copy and paste cloudflare.crt -----BEGIN CERTIFICATE----- MIIGCjCCA/KgAwIBAgIIV5G6lVbCLmEwDQYJKoZIhvcNAQENBQAwgZAxCzAJBgNV BAYTAlVTMRkwFwYDVQQKExBDbG91ZEZsYXJlLCBJbmMuMRQwEgYDVQQLEwtPcmln aW4gUHVsbDEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzETMBEGA1UECBMKQ2FsaWZv cm5pYTEjMCEGA1UEAxMab3JpZ2luLXB1bGwuY2xvdWRmbGFyZS5uZXQwHhcNMTkx MDEwMTg0NTAwWhcNMjkxMTAxMTcwMDAwWjCBkDELMAkGA1UEBhMCVVMxGTAXBgNV BAoTEENsb3VkRmxhcmUsIEluYy4xFDASBgNVBAsTC09yaWdpbiBQdWxsMRYwFAYD VQQHEw1TYW4gRnJhbmNpc2NvMRMwEQYDVQQIEwpDYWxpZm9ybmlhMSMwIQYDVQQD ExpvcmlnaW4tcHVsbC5jbG91ZGZsYXJlLm5ldDCCAiIwDQYJKoZIhvcNAQEBBQAD ggIPADCCAgoCggIBAN2y2zojYfl0bKfhp0AJBFeV+jQqbCw3sHmvEPwLmqDLqynI 42tZXR5y914ZB9ZrwbL/K5O46exd/LujJnV2b3dzcx5rtiQzso0xzljqbnbQT20e ihx/WrF4OkZKydZzsdaJsWAPuplDH5P7J82q3re88jQdgE5hqjqFZ3clCG7lxoBw hLaazm3NJJlUfzdk97ouRvnFGAuXd5cQVx8jYOOeU60sWqmMe4QHdOvpqB91bJoY QSKVFjUgHeTpN8tNpKJfb9LIn3pun3bC9NKNHtRKMNX3Kl/sAPq7q/AlndvA2Kw3 Dkum2mHQUGdzVHqcOgea9BGjLK2h7SuX93zTWL02u799dr6Xkrad/WShHchfjjRn aL35niJUDr02YJtPgxWObsrfOU63B8juLUphW/4BOjjJyAG5l9j1//aUGEi/sEe5 lqVv0P78QrxoxR+MMXiJwQab5FB8TG/ac6mRHgF9CmkX90uaRh+OC07XjTdfSKGR PpM9hB2ZhLol/nf8qmoLdoD5HvODZuKu2+muKeVHXgw2/A6wM7OwrinxZiyBk5Hh CvaADH7PZpU6z/zv5NU5HSvXiKtCzFuDu4/Zfi34RfHXeCUfHAb4KfNRXJwMsxUa +4ZpSAX2G6RnGU5meuXpU5/V+DQJp/e69XyyY6RXDoMywaEFlIlXBqjRRA2pAgMB AAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgECMB0GA1Ud DgQWBBRDWUsraYuA4REzalfNVzjann3F6zAfBgNVHSMEGDAWgBRDWUsraYuA4REz alfNVzjann3F6zANBgkqhkiG9w0BAQ0FAAOCAgEAkQ+T9nqcSlAuW/90DeYmQOW1 QhqOor5psBEGvxbNGV2hdLJY8h6QUq48BCevcMChg/L1CkznBNI40i3/6heDn3IS zVEwXKf34pPFCACWVMZxbQjkNRTiH8iRur9EsaNQ5oXCPJkhwg2+IFyoPAAYURoX VcI9SCDUa45clmYHJ/XYwV1icGVI8/9b2JUqklnOTa5tugwIUi5sTfipNcJXHhgz 6BKYDl0/UP0lLKbsUETXeTGDiDpxZYIgbcFrRDDkHC6BSvdWVEiH5b9mH2BON60z 0O0j8EEKTwi9jnafVtZQXP/D8yoVowdFDjXcKkOPF/1gIh9qrFR6GdoPVgB3SkLc 5ulBqZaCHm563jsvWb/kXJnlFxW+1bsO9BDD6DweBcGdNurgmH625wBXksSdD7y/ fakk8DagjbjKShYlPEFOAqEcliwjF45eabL0t27MJV61O/jHzHL3dknXeE4BDa2j bA+JbyJeUMtU7KMsxvx82RmhqBEJJDBCJ3scVptvhDMRrtqDBW5JShxoAOcpFQGm iYWicn46nPDjgTU0bX1ZPpTpryXbvciVL5RkVBuyX2ntcOLDPlZWgxZCBp96x07F AnOzKgZk4RzZPNAxCXERVxajn/FLcOhglVAKo5H0ac+AitlQ0ip55D2/mf8o72tM fVQ6VpyjEXdiIXWUq/o= -----END CERTIFICATE----- Now that we have the certs setup, make sure your Cloudflare is showing proxied, and start or restart the docker container. docker restart xrproxy Enter the Docker container to edit the nginx file to add the certs. docker exec -it xrproxy /bin/bash I use nano so I installed nano before editing the file. apt update apt install nano Edit nginx.conf nano /etc/nginx/nginx.conf An example of what this ends up looking like server { # Running port #listen 80; listen 443 ssl; server_name api.denarius.pro; ssl_certificate /opt/uwsgi/conf/cert.pem; ssl_certificate_key /opt/uwsgi/conf/key.pem; # Proxying connections to application servers location / { } Save and exit nano, restart nginx inside the docker container. service nginx restart Type exit to exit the docker container. If you remove this docker container, you will need to setup nginx again. This part should now work. On the blocknet service node, xrouter.conf I used port=80 and tls=1 I forked the original and added api.denarius.pro just so I could test this out myself. https://github.com/buzzkillb/exrproxy/blob/master/Dockerfile#L76 Examples below of calls to different coin daemons. https://api.denarius.pro/xr/BTC/xrGetBlockCount https://api.denarius.pro/xr/D/xrGetBlockCount https://api.denarius.pro/xr/LTC/xrGetBlockCount https://api.denarius.pro/xr/XSN/xrGetBlockCount After its all working your node should show up here under whatever coins you are running, and also say Enterprise under Type. https://service-explorer.core.cloudchainsinc.com/#/spv-wallets
  • Create New...