IP Whitelisting
In IP whitelisting mode, blockchain data is pushed directly to exchanges in periodic intervals. Exchange IP addresses must be whitelisted by Zilliqa Research to receive these data broadcasts.
Preparing the Machine
Before you start, please ensure the steps below are done.
- Choose and note down a port you wish to reserve for your seed node to receive incoming blockchain data.
- Share the static IP address and port of the node with the Zilliqa support team for whitelisting. This step is critical, as failing to provide the correct IP and port will result in failure to receive blockchain data. The static IP address and port of choice have to be shared with the Zilliqa team in the KYC form.
important
The port of choice must be opened to inbound connections. Otherwise, the seed node will be unreachable.
Docker Setup
We highly recommend using Docker to set up a seed node, as we provide a tested, production-ready image for your use. If you have not yet set up docker, please follow the instructions on the official documentation.
Once you have set up Docker, you may proceed to download the configuration tarball for the Mainnet:
Native Setup
note
This approach has been tested on Ubuntu 18.04 and involves compiling C++. We strongly recommend you consider using the Docker image provided above.
If you cannot or do not wish to use Docker, you may also build the Zilliqa binary from source and run it as such.
The build should exit with no errors. Once it is complete, download the configuration tarball:
Configuring the Node
The node requires some configuration before it can successfully join the
network. Most configuration is contained in constants.xml
, which should be
in the directory we extracted seed-configuration.tar.gz
to. Minimally, the
following changes are required:
- Change the value of
ENABLE_WEBSOCKET
totrue
if your seed node will support websockets (refer to the Zilliqa Websocket Server documentation).
Joining the Network
note
Before proceeding with this step, make sure you have completed the necessary KYC (for an individual).
Once the preliminary steps have been completed, joining the network is relatively straightforward.
You will be asked a series of questions. When asked to enter your IP address and listening port, please enter the values you provided us when you submitted the KYC form. This is crucial, as your node will not work with anything else.
Sample instructions to be followed for launch are provided below.
- launch_docker.sh
- launch.sh
Next Steps
If you have successfully completed the above steps, you should have
a functioning seed node that exposes an RPC API on localhost:4201
. You may
further check the logs at zilliqa-00001-log.txt
.
The following articles in this series will demonstrate a simple set of functions that can be used as a starting point for exchange developers to implement their own custom business logic around the Zilliqa blockchain. You may find the full source code of the example app in the same repository.