maxhoesel.ddclient

maxhoesel.ddclient

Un rol muy minimalista para instalar y configurar ddclient desde GitHub. También configura un servicio systemd para habilitar el modo demonio para ddclient.

Requisitos

  • Una versión reciente de Ansible. Este rol es compatible con las 2 versiones principales más recientes de Ansible. Las versiones más antiguas pueden funcionar, pero no son compatibles.
  • Un host que ejecute:
    • Ubuntu 18.04 LTS o versión más reciente
    • Debian 10 o versión más reciente
    • Otras distribuciones pueden funcionar, pero no son soportadas (¡Siéntase libre de agregar soporte con una PR!)

Variables del Rol

Instalación

ddclient_version
  • Versión de ddclient a instalar
  • Puede ser una rama, etiqueta, commit o cualquier otro valor soportado por git.
  • Predeterminado: develop
ddclient_executable_path
  • Donde poner el ejecutable de ddclient
  • El predeterminado es /usr/local/sbin/ddclient, para no interferir con los paquetes de la distribución.
ddclient_configfile
  • Archivo de configuración a usar para la instalación de ddclient
  • Predeterminado: /etc/ddclient.conf
ddclient_pidfile
  • Archivo PID a usar para el demonio ddclient
  • Predeterminado: /var/run/ddclient.pid
ddclient_systemd_unit
  • Nombre del archivo de unidad para el demonio ddclient
  • Predeterminado: ddclient

Configuración

ddclient_interval
  • Número de segundos entre las verificaciones de IP de DynDNS
  • Predeterminado: 300
ddclient_mail
  • Enviar todas las actualizaciones a este usuario/dirección de correo
  • Predeterminado: root
ddclient_mail_failure
  • Enviar todas las fallas a este usuario/dirección de correo
  • Predeterminado: root
ddclient_entries
  • Lista de entradas de configuración de ddclient
  • Cada entrada contiene una lista de opciones y una lista de dominios
    • Las opciones se asignan 1:1 a los parámetros de ddclient
  • Ejemplo:
    - options:
        protocol: cloudflare
        zone: domain.tld
        ttl: 60
        login: tu-email-login
        password: APIKey
      domains:
        - domain.tld
        - my.domain.tld
    

Búsqueda de IP

Opciones de configuración para determinar cómo ddclient obtiene las direcciones IP que necesita actualizar a través de DynDNS. Por defecto, todos estos parámetros están sin definir, lo que significa que ddclient usará sus valores predeterminados integrados.

NOTA: La mayoría de los parámetros a continuación se pueden establecer para IPv4 o IPv6.

ddclient_strategy_usev[4/6]
  • Establecer la estrategia para determinar la dirección IP IPv4/6 a utilizar para las actualizaciones de DynDNS
  • Las opciones incluyen webv[4/6], if[4/6], ip[4/6], fw, cmd
  • Predeterminado: indefinido
ddclient_strategy_ipv[4/6]
  • Establecer una IP estática cuando se usa la estrategia ip
  • Predeterminado: indefinido
ddclient_strategy_ifv[4/6]
  • Obtener la dirección IP de una interfaz dada al usar la estrategia if
  • Predeterminado: indefinido
ddclient_strategy_webv[4/6]
  • Obtener la dirección IPv4 desde un servicio web de descubrimiento de IP, ya sea un servicio conocido o una URL personalizada
  • Predeterminado: indefinido
ddclient_strategy_webv[4/6]_skip
  • Ver documentación de ddclient
  • Predeterminado: indefinido
ddclient_strategy_fwv[4/6]
  • Obtener la dirección IP desde un dispositivo con esta dirección IP o URL
  • Predeterminado: indefinido
ddclient_strategy_fwv[4/6]_skip
  • Omitir cualquier dirección IP que preceda a este patrón en el texto devuelto del dispositivo
  • Predeterminado: indefinido
ddclient_strategy_fw_login
  • Usar este inicio de sesión al obtener la IP del dispositivo
  • Predeterminado: indefinido
ddclient_strategy_fw_password
  • Usar esta contraseña al obtener la IP del dispositivo
  • Predeterminado: indefinido
ddclient_strategy_cmdv[4/6]
  • Obtener la dirección IPv4 a partir de la salida de este comando
  • Predeterminado: indefinido

Ejemplo de Playbook

- hosts: all
  tasks:
    - name: Instalar ddclient
      include_role:
        name: maxhoesel.ddclient
      vars:
        ddclient_entries:
        - options:
            protocol: cloudflare
            zone: domain.tld
            ttl: 1 # automático
            login: tu-email-login
            password: APIKey
          domains:
            - domain.tld
            - my.domain.tld
        # Determinar la dirección IPv4 usando dyndns
        ddclient_strategy_usev4: webv4
        ddclient_strategy_webv4: dyndns
        # Obtener la dirección IPv6 de eth0
        ddclient_strategy_usev6: ifv6
        ddclient_strategy_ifv6: eth0

Licencia

GPL 3 o posterior

Información del Autor

Creado y mantenido por Max Hösel (@maxhoesel)

Acerca del proyecto

Installs and configures ddclient

Instalar
ansible-galaxy install maxhoesel.ddclient
Licencia
Unknown
Descargas
71.9k
Propietario
Junior Automation and Infrastructure Engineer, Bachelor in CompSci. I write Ansible content and DevOps-related tools, mostly in Rust