# dynDNS configuration example # Copy this file to 'vars' and adjust as needed. # Warning: do not edit vars.example directly! # ------------------------------------------------------------------ # GENERAL # ------------------------------------------------------------------ # Base directory of dynDNS configuration (defaults to script directory) #set_var DYNDNS "${0%/*}" # Batch mode: # Leave empty for interactive/normal console output. # Set to any non-empty string to suppress notices on stdout. #set_var DYNDNS_BATCH "" # ------------------------------------------------------------------ # RUNTIME DIRECTORIES # ------------------------------------------------------------------ # Temporary working directory used for per-run temp files and directories #set_var DYNDNS_TEMP_DIR "$DYNDNS/tmp" # ------------------------------------------------------------------ # LOGGING # ------------------------------------------------------------------ # Directory for dynDNS log files #set_var DYNDNS_LOG_DIR "$DYNDNS/log" # Main log file #set_var DYNDNS_LOG_FILE "$DYNDNS_LOG_DIR/dyndns_${DYNDNS_BIND_ZONE:-default}.log" # File used to track the last zone update timestamp/state #set_var DYNDNS_LOG_UPDATE_FILE "$DYNDNS_LOG_DIR/lastZoneUpdate_${DYNDNS_BIND_ZONE:-default}.log" # Log level controls verbosity of logging output: # 0 = off : Disable all logging output # 1 = debug : Detailed diagnostics for troubleshooting and development # 2 = info : Informational messages about normal operations # 3 = warning : Warnings about unusual but non-fatal conditions # 4 = error : Errors affecting functionality # 5 = critical : Severe failures requiring immediate attention #set_var DYNDNS_LOG_LEVEL 3 # ------------------------------------------------------------------ # DATABASE ACCESS # ------------------------------------------------------------------ # Database client program. # Example values: # /usr/bin/mariadb # mariadb # /usr/bin/mysql #set_var DYNDNS_DB_PROGRAM "/usr/bin/mariadb" # Database host #set_var DYNDNS_SQL_HOST "localhost" # Optional client option group suffix. # If set, dyndns uses: # --defaults-group-suffix=$DYNDNS_SQL_GROUP # and usually reads credentials from my.cnf / client config. #set_var DYNDNS_SQL_GROUP "dyndns" # Database name #set_var DYNDNS_SQL_DATABASE "dyndns_database" # Database login credentials. # These are mainly used when DYNDNS_SQL_GROUP is unset/empty. #set_var DYNDNS_SQL_USER "dyndns_user" #set_var DYNDNS_SQL_PASS "" # Additional database client options, if needed. # Example: # "--protocol=tcp" # "--socket=/run/mysqld/mysqld.sock" #set_var DYNDNS_SQL_OPTIONS "" # ------------------------------------------------------------------ # DNS / BIND # ------------------------------------------------------------------ # Authoritative DNS server used for update operations #set_var DYNDNS_BIND_SERVER "127.0.0.1" # Service name used when reloading/reconfiguring the name server #set_var DYNDNS_BIND_SERVICE "named.service" # DNS zone handled by dynDNS #set_var DYNDNS_BIND_ZONE "example24.com" # TSIG key file or key identifier used for nsupdate access #set_var DYNDNS_BIND_ZONE_KEY "keyfile" # Directory containing the primary zone files #set_var DYNDNS_BIND_ZONE_DIR "/var/named/zones" # Main unsigned zone file #set_var DYNDNS_BIND_ZONE_FILE "$DYNDNS_BIND_ZONE_DIR/$DYNDNS_BIND_ZONE.zone" # Signed zone file, if DNSSEC signing is used externally #set_var DYNDNS_BIND_ZONE_FILE_SIGNED "$DYNDNS_BIND_ZONE_DIR/$DYNDNS_BIND_ZONE.zone.signed" # Default TTL for generated/managed records #set_var DYNDNS_BIND_ZONE_TTL 300 # ------------------------------------------------------------------ # MEMBER DEFAULTS # ------------------------------------------------------------------ # These values are typically supplied at runtime by command line options # or frontend/backend integration, but they may also be preset here. # Fully qualified hostname of the dynDNS member #set_var DYNDNS_MEMBER_HOSTNAME "host.example24.com" # Contact e-mail address of the dynDNS member #set_var DYNDNS_MEMBER_EMAIL "admin@example24.com" # Password or shared secret used during member creation/authentication #set_var DYNDNS_MEMBER_PASS "" # ------------------------------------------------------------------ # OPTIONAL COMMAND HOOKS # ------------------------------------------------------------------ # Reserved section for optional local extensions. # Only enable such commands if your dyndns.sh implementation actually evaluates them. # Commands to run before a zone update # Example: # set_var DYNDNS_CMD_PRE "/usr/local/libexec/dyndns-pre-update.sh" # Commands to run after a successful zone update # Example: # set_var DYNDNS_CMD_POST "/usr/local/libexec/dyndns-post-update.sh"