Skip to main content

Environment Variables

HDDS can be configured via environment variables. All variables are prefixed with HDDS_.

Discovery & Networking

VariablePurposeExample
HDDS_SPDP_UNICAST_PEERSManual unicast peer list192.168.1.100:7400,192.168.1.101:7400
HDDS_LOG_UDPEnable UDP debug logging1
HDDS_INTEROP_DIAGNOSTICSEnable interop diagnostics1
HDDS_FORCE_DATA_MCRoute DATA to multicast1
HDDS_DISABLE_TYPE_OBJECTDisable TypeObject announcement1

Network Interface Control

VariablePurposeFormat
HDDS_MULTICAST_IFForce multicast interfaceIPv4 address (e.g., 192.168.1.5)
HDDS_UNICAST_IFForce unicast interfaceIPv4 address
HDDS_INTERFACE_ALLOWAllow specific interfacesCIDR list: eth0,192.168.1.0/24

TTL (Time-To-Live) Configuration

VariablePurposeRange
HDDS_TTLSet both multicast & unicast TTL1-255
HDDS_MULTICAST_TTLMulticast TTL only1-255
HDDS_UNICAST_TTLUnicast TTL only1-255

Source Filtering

VariablePurposeFormat
HDDS_SOURCE_ALLOWAllowed source CIDRs192.168.1.0/24,10.0.0.0/8
HDDS_SOURCE_DENYDenied source CIDRs192.168.0.0/16

QoS & Traffic Control

VariablePurposeFormat
HDDS_DSCPDSCP code points18,46,26 (AF21, EF, AF31)

Observability

VariablePurposeValues
HDDS_EXPORTER_DISABLEDisable telemetry export1, true, or yes

Logging

Standard Rust logging via RUST_LOG:

# Enable debug logging for HDDS
RUST_LOG=hdds=debug ./my_app

# Trace-level for discovery
RUST_LOG=hdds::discovery=trace ./my_app

# Multiple filters
RUST_LOG=hdds=debug,hdds::transport=trace ./my_app

Examples

Static Peer Discovery

# Disable multicast, use unicast peers only
export HDDS_SPDP_UNICAST_PEERS="10.0.0.1:7400,10.0.0.2:7400"
./my_dds_app

Network Interface Selection

# Force specific network interface
export HDDS_MULTICAST_IF="192.168.1.100"
export HDDS_UNICAST_IF="192.168.1.100"
./my_dds_app

TTL for Multi-Hop Networks

# Increase TTL for WAN scenarios
export HDDS_TTL=32
./my_dds_app

Debug Interoperability

# Enable verbose interop logging
export HDDS_INTEROP_DIAGNOSTICS=1
export RUST_LOG=hdds=debug
./my_dds_app

Firewall-Friendly Setup

# Disable multicast, use unicast only
export HDDS_SPDP_UNICAST_PEERS="peer1.example.com:7400"
export HDDS_FORCE_DATA_MC=0
./my_dds_app