How to deploy Qitmeer Network at Home

Qitmeer Network
4 min readDec 20, 2021

In the previous section, we added machines on the internal network to the Qitmeer network via a whitelist solution which is the recommended solution for the project but requires the assistance of a public network server as a prerequisite. If you do not have a public server, you can also consider the intranet port mapping option.

To perform intranet mapping, you must first ensure that your home network is enabled for ADSL Internet access which allows your home network to have a dynamic public IP.

If your home network does not have ADSL Internet access by default, you can request your Internet Service Provider (ISP) to open it, in most cases, the ISP(Internet Service Provider) will open it without further questions.

Checking the router

The example below is from the author’s ASUS router, the author requested the ISP to open the ADSL service and it was immediately approved. The IP that you will see in the picture below is a public IP address.

Successfully open the public IP

If you found out that the public address (WAN IP) of the router is the same as the LAN address, it is most likely that your ISP has not yet opened or there is something wrong with your ADSL settings, please troubleshoot it by yourself. Remember that this step is very critical, otherwise, you cannot continue this tutorial.

Failed to open public IP

Check IP address and port

First check the IP address of the intranet server, such as 192.168.50.235 in this example

tony@ubuntu ~ $ ifconfig|grep inet
inet 192.168.50.235 netmask 255.255.255.0 broadcast 192.168.50.255

Then check the port configuration (port) of the server, if the port is not set then look at the network started, if it is a test network (testnet=1) then the default is 18150, if it is the main network (mainnet=1) then the default is 8150. here we started a test network and no port is set, so the port is the default 18150.

$ vi ~/0.10-dev/qitmeer.conf


testnet=1
rpclisten=0.0.0.0:18151
#port=18150

Port Mapping

Next, enter the router’s backend and set up the port mapping, using the Asus router in this article as an example.

Source address: Leave it blank, it means accept any Qitmeer node’s connection

Source port: the external port opened by the router, it is recommended to be the same as the intranet Qitmeer port, here is 18150

Destination address: the IP address of the intranet Qitmeer, fill in the 192.168.50.235 from the previous step

Target port: the port of the intranet Qitmeer, fill in 18150 from the previous step

Port Mapping

Launch Qitmeer

With the port mapped, we launch Qitmeer

$ ./build/bin/qitmeer -A ~/0.10-dev

If a block sync log is found, it means the mapping is successful

2021-12-14|11:28:11.988 [INFO ] Syncing to state (211471,211139,211142,219586,5) from peer 16Uiu2HAmHyCuFE86AZt6zrY4bXNUufW8HYLsk4j5oFvsiAfZfEJn cur graph state:(211470,211138,211141,214715,5) module=SYNC
2021-12-14|11:28:22.264 [INFO ] Processed 3 blocks in the last 13s (3 transactions, order 211472, 2021-12-14 11:27:44 +0000 UTC) module=blkmanager
2021-12-14|11:28:22.264 [INFO ] Your synchronization has been completed. module=SYNC
2021-12-14|11:28:22.265 [INFO ] You're up to date now. module=SYNC

You can also use telnet to test the Qitmeer port and the presence of /multistream/1.0.0 also means the mapping is successful. The server address is either a DDNS dynamic domain (if opened) or an IP.

$ telnet EXAMPLE.QITMEER.DDNS 18150
Trying XXX.89.209.68...
Connected to outlier.asuscomm.com.
Escape character is '^]'.
/multistream/1.0.0

Summary

At this point, the series of practical Qitmeer home networking is completed. With both whitelist and port mapping solutions, I believe most of you, who needed to run Qitmeer on your intranet can find a solution that suits you. The public IP is a necessary condition. From this, we can see that the starting point for this network upgrade on the main Qitmeer network is to improve the overall connectivity of the network while fully taking into account the reasonable needs of intranet deployment and providing a flexible solution.

About Qitmeer

Qitmeer is the next-generation public chain based on BlockDAG which is dedicated to serving the ecosystem of Islamic Finance, ethical finance, and socially responsible investment, thereby enhancing financial inclusion and creating social impact.

In contrast to the competition model, BlockDAG’s collaboration model in the mining achieves a desirable balance of typical blockchain metrics among the security, openness, fairness, and scalability.

Qitmeer adopts a classic POW consensus and UTXO data model and designs a unique asset issuing mechanism which requires the reserve of native currency, which is in line with core ethical financial values.

Contact Us

Website / Qitmeer talk / GitHub / Twitter / Facebook / Telegram / Instagram / LinkedIn

--

--

Qitmeer Network

Qitmeer Network is the next generation payment network infrastructure based on BlockDAG technology.