Program to monitor the LXD API endpoint for container and VM changes and performs DDNS updates to keep DNS records up to date.
pip install lxd-dyndns
$ lxd-dyndns -f /etc/lxd-dyndns.conf -d info
An example config file is shown below:
cache_dir = "/var/lib/lxd-dyndns"
[projects.k8s]
dns_server = "192.168.2.1"
dns_port = 8053
dns_transport = "TCP"
dns_key_name = "knot_lxd"
dns_key_secret = "Zj7NdR9/6DJonRuTt/++QgMyvSlD4Ndv+i5SvGtGY3Q="
dns_zone = "lxd.domain.tld."
lxd_server = "https://lxd-leader.domain.tld:8443"
lxd_verify = false
lxd_client_cert = "/etc/ssl/lxd-dyndns/client.crt"
lxd_client_key = "/etc/ssl/lxd-dyndns/client.key"
ipv6_prefixes = [ "dead:beef::0/96" ]
ipv4_prefixes = [ "255.255.255.255/32" ] # to disable IPv4 records
refresh_interval = 600 # 10 minutes