Bitcoin Node Configuration¶
Navigation¶
- Overview
- Configuration Options
- Advanced Features
- Performance Tuning
- Monitoring & Logging
- Security Best Practices
- Deployment Examples
- Troubleshooting
- Related Documentation
Overview¶
The Anya Bitcoin node configuration system provides enterprise-grade Bitcoin network integration with advanced features for security, performance, and reliability. For architecture details, see our Architecture Overview.
Configuration Options¶
Network Selection¶
[bitcoin.network]
network = "mainnet" # Options: mainnet, testnet, regtest
listen = true
connect_timeout_ms = 30000
max_connections = 125
For network setup details, see Network Setup Guide.
Node Types¶
- Full Node (Details)
[bitcoin.node]
type = "full"
prune = false
txindex = true
assumevalid = "0000000000000000000b9d2ec5a352ecba0592946514a92f14319dc2b367fc72"
- Pruned Node (Details)
[bitcoin.node]
type = "pruned"
prune = true
prune_size_mb = 5000
txindex = false
- Archive Node (Details)
[bitcoin.node]
type = "archive"
prune = false
txindex = true
blockfilterindex = true
coinstatsindex = true
Security Settings¶
[bitcoin.security]
rpcauth = "user:7d85aa47c6aba01cb2c32cecb8"
whitelist = ["192.168.1.0/24", "10.0.0.0/8"]
maxuploadtarget = 1024 # MB
ban_threshold = 100
For security details, see Security Configuration Guide.
Advanced Features¶
Memory Pool Configuration¶
[bitcoin.mempool]
mempool_max_mb = 300
mempool_expiry_hours = 336
mempool_replace_by_fee = true
max_orphan_tx = 100
For mempool details, see Mempool Configuration Guide.
Block Template Configuration¶
[bitcoin.mining]
block_max_weight = 4000000
block_min_tx_fee = 1000 # satoshis/vB
For mining details, see Mining Configuration Guide.
P2P Network Settings¶
[bitcoin.p2p]
bind = "0.0.0.0:8333"
discover = true
dns_seed = true
max_peers = 125
min_peers = 10
For P2P details, see P2P Network Guide.
Performance Tuning¶
Database Configuration¶
[bitcoin.db]
db_cache_mb = 450
max_open_files = 1000
thread_pool_size = 16
For database optimization, see Database Tuning Guide.
Network Optimization¶
[bitcoin.network.optimization]
max_orphan_size = 10
max_reorg_depth = 100
block_download_window = 1024
For network optimization, see Network Performance Guide.
Monitoring & Logging¶
Metrics Configuration¶
[bitcoin.metrics]
prometheus_port = 9332
export_mempool_stats = true
export_network_stats = true
For metrics details, see Metrics Configuration Guide.
Logging Configuration¶
[bitcoin.logging]
debug_categories = ["net", "mempool", "rpc", "estimatefee"]
log_timestamps = true
log_thread_names = true
For logging details, see Logging Configuration Guide.
Security Best Practices¶
- Network Security (Guide)
- Use firewall rules
- Implement rate limiting
- Enable SSL/TLS
-
Use strong authentication
-
Access Control (Guide)
- Implement IP whitelisting
- Use strong RPC authentication
- Regular credential rotation
-
Audit logging
-
Data Protection (Guide)
- Encrypt wallet files
- Secure backup procedures
- Regular integrity checks
- Access logging
Deployment Examples¶
Development Environment¶
[bitcoin]
network = "regtest"
listen = true
connect_timeout_ms = 5000
max_connections = 10
[bitcoin.node]
type = "full"
prune = false
txindex = true
For development setup, see Development Environment Guide.
Production Environment¶
[bitcoin]
network = "mainnet"
listen = true
connect_timeout_ms = 30000
max_connections = 125
[bitcoin.node]
type = "archive"
prune = false
txindex = true
blockfilterindex = true
For production setup, see Production Deployment Guide.
Troubleshooting¶
Common Issues¶
- Connection Problems (Guide)
# Check network connectivity
bitcoin-cli getnetworkinfo
# Verify peer connections
bitcoin-cli getpeerinfo
- Performance Issues (Guide)
# Check memory pool
bitcoin-cli getmempoolinfo
# Monitor resource usage
bitcoin-cli getnettotals
- Synchronization Problems (Guide)
# Check sync status
bitcoin-cli getblockchaininfo
# Verify block height
bitcoin-cli getblockcount
Monitoring Scripts¶
Health Check¶
#!/bin/bash
# health_check.sh
bitcoin-cli getblockchaininfo | jq .blocks
bitcoin-cli getnetworkinfo | jq .connections
bitcoin-cli getmempoolinfo | jq .size
For monitoring scripts, see Monitoring Scripts Guide.
Performance Monitor¶
#!/bin/bash
# monitor.sh
while true; do
bitcoin-cli getnettotals
bitcoin-cli getmempoolinfo
sleep 300
done
For performance monitoring, see Performance Monitoring Guide.
Related Documentation¶
Support¶
For node-related support: - Technical Support - Security Issues - Feature Requests - Bug Reports
Last updated: 2025-06-02