NODE

JOINING TO TESTNET1 NETWORK

Verification of emission transactions by ULTRANET node requires a user to configure a connection to Ethereum JSON-RPC API provider. This can be either an instance of some Ethereum client or third-party services; e.g., Infura. Testnet0 network uses Ropsten Ethereum network which both work as a test ones. The corresponding setting is located in Settings.xon file under the 'Nas' section:

Nas
{
	...
	Provider = "https://ropsten.infura.io/v3/..."
	...
}

The OS firewall should be configured to allow incoming connections for TCP ports 30800 and 30900. If a machine running DUN is connected to the Internet through a router, then the user needs to configure port forwarding (NAT) for TCP 30800 and 30900 ports in his router's settings. Check your router manual for specific instructions.

If the user intends to participate in block generation, then this requires him to follow these steps:

1. Create account using the GUI or 'account new' or 'account import' command.

2. Deposit some funds which will be used as a bail into this account. A higher amount gives a greater chance of being elected as a member and minimum is 1000 UNT.

Use the 'unt emit' command to transfer Ethereuem ETH to Ultranet UNT tokens with access to Ethereum account provided by JSON wallet file and password:

unt emit from{wallet=C:\ethereum_wallet.json password=ethereum_wallet_password} amount=1.2 to{account=ultranet_account password=ultranet_account_password}
or directly using private key:
unt emit from{key=ethereum_account_private_key} amount=1.2 to{account=ultranet_account password=ultranet_account_password}

or transfer funds from another account using 'unt transfer' command.

3. Declare account as a candidate to block generators:

membership declare candidate=ultranet_account password=ultranet_account_password bail=1000 ip=12.34.56.78

Minimum 1000 UNT is required to declare a candidacy so it needs to spend a bit more 1 ETH (in the begining of emission) to emit such amount of UNT tokens (transaction cost is deducted from final amount).

4. Configure a generator account in the Settings.xon. Block generation requires to private key as plain text, so use it in safe environments only.

...
Generator = 'generator_account_private_key'
...

5. Now, a node can be run by launching the 'dun' executable using the following command:

Run on Windows:

dun.exe node

Run on Linux:

/usr/bin/dotnet /usr/lib/dun/dun.dll node

Run on macOS:

/usr/local/share/dotnet/dotnet /usr/local/dun/dun.dll node

This application requires admin privileges under Windows OS to correctly perform all its functions so above command should be called using "Run as Administrator" option. Windows users can also run a node with a graphical UI by launching the following executable:

UC.Net.Node.FUI.exe