A step-by-step walkthrough for running your first BDAG node from scratch.
@noderunner99
Node operator and protocol researcher. Running BDAG infrastructure since testnet v1.
Before we start, make sure you have the following:
Head to the official BlockDAG GitHub repository and download the latest release binary for your architecture. For most servers, that's the linux-amd64 build.
wget https://github.com/blockdag/node/releases/latest/download/blockdag-linux-amd64.tar.gz
tar -xzf blockdag-linux-amd64.tar.gz
chmod +x blockdag
Run the initialization command to generate your node's configuration file and key pair:
./blockdag init --network mainnet --datadir ~/.blockdag
This creates a config.toml file in your data directory. Open it and review the default settings — most are fine for a standard node, but you may want to adjust the peer connection limits if you're on a metered connection.
BlockDAG uses port 7777 for peer-to-peer communication. Open it in your firewall:
ufw allow 7777/tcp
ufw reload
You can run the node directly, but it's better to set it up as a systemd service so it restarts automatically:
sudo nano /etc/systemd/system/blockdag.service
Paste the following configuration, adjusting the user and paths as needed, then enable and start the service.
After starting the node, check its sync status with:
./blockdag status
You should see your node connecting to peers and beginning to sync the DAG. Full sync from genesis typically takes 2–4 hours depending on your connection speed.
If your node isn't connecting to peers, check that port 7777 is open and that your firewall isn't blocking outbound connections. If sync is stalling, try adding a few bootstrap nodes manually in your config file — the community maintains an up-to-date list in the Discord.
Weekly BlockDAG analysis, news, and tutorials — straight to your inbox.