How to install & configure on MacOS

DNet.App: SD-WAN or Cloud VPN

This quick start shows the steps to run a slightly-modified Tinc-VPN 1.0.36 to create a SD-WAN on DNet testnet. A driver App has been developed to map the DNet blockdata with the Tinc-VPN configuration settings and also manage the life cycle of Tinc App, like init, start, update setting and stop.

By the end of this tutorial, a private overlay network in the form of Layer 3 Virtual LAN is created. A Cloud VPN is created over Internet. Nodes around the world with assigned virtual IP address can connect with peer nodes like in a LAN environment.

1. Install ÐNetcoin tools & DNet OVF & APP

Environment: tested on Ubuntun 16.04, 18.04, 20.04

  • dbetcoind: dnetcoin daemon
  • dnetcoin-cli: the CLI
  • dnetcoin-qt: the App with GUI
  • vlan app: the vlan app is SD-WAN based on Tinc-VPN
  • vlan ovf: the cloud components of vlan app, based on Tinc-VPN

2. Create a OVF

Making sure dnetcoind is started: dnetcoind -testnet -daemon

  1. new ovf: Create a new ovf with display name (on ovf owner node): dnetcoin-cli -testnet create_ovf 'my_first_ovf', a ovf_id is generated.
  2. ovf initialization: dnetcoin-cli -testnet vlan_init 'ovf_conf_folder', the PubKey of the vlan ovf will be generated;
  3. Add resources to ovf (on ovf owner node): dnetcoin-cli -testnet dnet_put 'ovf_id' 'Public IP' 'PubKey', can add multiple resources to the ovf_id.

The same OVF can be used by multiple DNet.App.

3. Create a ÐNet

  1. new dnet: Create a new dnet with display name(on dnet owner node), a dnet_id is generated.
dnetcoin-cli -testnet create_dnet 'my_first_dnet'
  1. ovf --> dnet: Add ovf to dnet (on dnet owner node), this step creates the ovf meta data, like the its public IP address, available to all dnet member nodes.
dnetcoin-cli -testnet dnet_put 'dnet_id' 'ovf_id'
  1. dnet --> ovf: Add dnet to ovf(on ovf owner node), this step authorizes the dnet to use the ovf resources, usually afte receiving payment.
`dnetcoin-cli -testnet dnet_put 'ovf_id' 'dnet_id'`

If third-party ovf provider is used, step 2 & 3 can be skipped and adding third-party's ovf_id directly in step 4.

4. Join a ÐNet

1. vlan init

On Client's node: dnetcoin-cli vlan_init /home/parallels/dnet_conf/ to generate the PubKey of the node, share the PubKey with the creator;

2. add vlan

On Creator's node: dnetcoin-cli dnet_put 'dnet_id' 'assigned virtual IP' 'PubKey' dnet creator adds the node's vIP and PubKey to dnet.

3. join vlan

On Client's node: client node joins the dnet

5. Client Start & Connect

  1. dnetcoin-cli vlan_start /home/parallels/dnet_conf/
  2. dnetcoin-cli vlan_vlan connect 'dnet_id' /home/parallels/dnet_conf/vlan.pid

Now, the private overlay network is setup!

What's Next?

The next section uses Tinc-VPN as example to explain the details of the DNetwork concepts, configuration and how to run an existing application to DNet platform.

Edit this page on GitHub