What is a Masternode?
Viction masternodes:- Validate and create new blocks
- Participate in the PoSV consensus mechanism
- Earn block rewards and transaction fees
- Require staking to be eligible
- Must maintain high uptime and performance
Requirements
Hardware
- 8GB+ RAM
- 4+ CPU cores
- 500GB+ SSD storage
- 100Mbps+ network
Staking
- 50,000 VIC tokens
- Registered on VicMaster
- Active voting support
- Unlocked account
Masternode Setup
1
Prepare your account
Create or import an account that holds your masternode stake:
Save your keystore files and password securely. Loss of these files means loss of access to your funds.
2
Register on VicMaster
Before running your masternode, you must:
- Hold at least 50,000 VIC tokens in your account
- Register your masternode on VicMaster
- Provide your node’s coinbase address
- Wait for community voting to reach the top 150
Your node will only produce blocks if it’s in the top 150 masternodes by voting power.
3
Configure and start the node
Run your node with staking enabled:Key flags for masternodes:
--mine: Enables staking/mining mode--unlock 0: Unlocks your account for signing blocks--gasprice 250000000: Sets minimum gas price for transactions--targetgaslimit 30000000: Sets target gas limit for blocks
4
Verify masternode status
Check that your masternode is recognized:Monitor your node on:
- VicScan - View your masternode status
- Network Stats - Real-time network monitoring
Masternode-Specific Configuration
Staking Options
boolean
required
Enables staking mode. Your node will participate in block creation if it’s a valid masternode.
number
Number of CPU threads to use for staking operations (default: 1)
string
Public address for block mining rewards. If not specified, uses the first unlocked account.
number
Target gas limit for blocks (default: 30000000)
number
Minimum gas price to accept for mining transactions (in wei)
API Configuration
For masternodes, enable the PoSV API to allow querying consensus-specific data:eth: Standard Ethereum JSON-RPCnet: Network informationweb3: Web3 utilitiesposv: Viction consensus datadebug: Debug APIs (use with caution)personal: Account management (use with caution)
Network Configuration
- NAT Configuration
- Peer Management
- Port Configuration
If your node is behind NAT, configure external IP:Other NAT options:
Masternode Operations
Automatic Validation
The Viction node automatically detects if your account is a registered masternode:- At startup: Checks if the unlocked account is a valid masternode
- At checkpoints: Re-validates masternode status
- Auto-enable: Starts staking if masternode is valid
- Auto-disable: Stops staking if masternode status is lost
Monitoring Masternode Status
Your node logs will show:- Registration on VicMaster
- Voting power (must be in top 150)
- Unlocked account matches registered address
Reward Collection
Storing Reward Reports
To track masternode rewards:{datadir}/tomo/rewards/
Reward Distribution
Masternodes earn:- Block rewards: For creating blocks
- Transaction fees: From transactions in created blocks
- Voter rewards: Distributed to voters who staked with your masternode
High Availability Setup
1
Infrastructure
- Use dedicated servers with high uptime SLAs
- Implement monitoring and alerting
- Set up automatic restarts on failure
- Use SSD storage for better I/O performance
2
Network
- Ensure stable, high-bandwidth internet
- Configure firewall rules properly
- Set up DDoS protection
- Use static IP address
3
Monitoring
Monitor these metrics:
- Node sync status
- Peer count
- Block creation rate
- System resources (CPU, RAM, disk)
- Network connectivity
4
Backup
- Regularly backup keystore files
- Store backups securely offline
- Document recovery procedures
- Test recovery process
Performance Tuning
Thread Configuration
Memory Optimization
Transaction Pool
Troubleshooting
Masternode not mining
Masternode not mining
Check:
- Account is unlocked:
--unlock 0 - Mining is enabled:
--mine - Node is registered on VicMaster
- Node is in top 150 by voting power
- Node is fully synced
- Logs show “Masternode found. Enabling staking mode…”
Lost masternode status
Lost masternode status
If your node stops mining:
- Check voting power on VicMaster
- Verify account balance meets minimum stake
- Ensure node hasn’t been penalized for downtime
- Check if account is still unlocked
High resource usage
High resource usage
Optimize:
- Reduce
--cachevalue - Lower
--minerthreads - Use
--gcmode fullinstead of archive - Reduce
--maxpeers - Disable
--store-rewardif not needed
Network connectivity issues
Network connectivity issues
- Verify port 30303 is open
- Check firewall rules
- Try adding bootnodes manually
- Verify NAT configuration
- Check if IP is blacklisted
Security Best Practices
Key Management
- Never share private keys
- Use hardware security modules for production
- Regularly rotate passwords
- Keep keystore backups offline
Network Security
- Use firewall to restrict RPC access
- Don’t expose
personalAPI publicly - Enable HTTPS for RPC endpoints
- Implement rate limiting
System Security
- Keep OS and software updated
- Use non-root user for node process
- Enable disk encryption
- Monitor system logs
Operational Security
- Monitor node 24/7
- Set up automated alerts
- Have incident response plan
- Regular security audits
Next Steps
Configuration Reference
Complete list of all configuration flags
Docker Deployment
Deploy your masternode with Docker