diff --git a/README.md b/README.md index b6c54c0..8893f8e 100644 --- a/README.md +++ b/README.md @@ -81,7 +81,7 @@ ssl_key_file = "/etc/ddns-service/key.pem" # required if ssl = true path = "/var/lib/ddns-service/ddns.db" # required for sqlite [dns_service] -# dns_server = "localhost" # default: "localhost" (DNS server for RFC 2136 updates) +# dns_server = "127.0.0.1" # default: "127.0.0.1" (must be IP address) # dns_port = 53 # default: 53 # dns_timeout = 5 # default: 5 (seconds) # ddns_default_key_file = "/etc/ddns-service/ddns.key" # optional, BIND TSIG key file diff --git a/files/config.example.toml b/files/config.example.toml index 2d718a6..04cdd2e 100644 --- a/files/config.example.toml +++ b/files/config.example.toml @@ -25,7 +25,7 @@ path = "/var/lib/ddns-service/ddns.db" # required for sqlite # database = "ddns" # required for mariadb [dns_service] -# dns_server = "localhost" # default +# dns_server = "127.0.0.1" # default, must be IP address # dns_port = 53 # default # dns_timeout = 5 # default, seconds # ddns_default_key_file = "/etc/ddns-service/ddns.key" # optional, BIND TSIG key diff --git a/src/ddns_service/config.py b/src/ddns_service/config.py index 0b91539..2c96207 100644 --- a/src/ddns_service/config.py +++ b/src/ddns_service/config.py @@ -145,7 +145,7 @@ def load_config(config_path): cfg["database"].setdefault("backend", "sqlite") cfg.setdefault("dns_service", {}) - cfg["dns_service"].setdefault("dns_server", "localhost") + cfg["dns_service"].setdefault("dns_server", "127.0.0.1") cfg["dns_service"].setdefault("dns_port", 53) cfg["dns_service"].setdefault("dns_timeout", 5) cfg["dns_service"].setdefault("cleanup_interval", 60) diff --git a/src/ddns_service/models.py b/src/ddns_service/models.py index 16d333a..50878c9 100644 --- a/src/ddns_service/models.py +++ b/src/ddns_service/models.py @@ -81,7 +81,7 @@ def init_database(config: dict): logging.info(f"Database backend: SQLite path={db_path}") elif backend == "mariadb": - new_db = MySQLDatabase( + db = MySQLDatabase( config["database"]["database"], host=config["database"].get("host", "localhost"), port=config["database"].get("port", 3306), @@ -89,10 +89,8 @@ def init_database(config: dict): password=config["database"]["password"], ) # Re-bind models to new database - User._meta.database = new_db - Hostname._meta.database = new_db - # Replace global db reference - db = new_db + User._meta.database = db + Hostname._meta.database = db logging.info(f"Database backend: MariaDB db={config['database']['database']}") else: