maxhoesel.ddclient

maxhoesel.ddclient

非常にシンプルな役割で、GitHubからddclientをインストールおよび設定します。 また、ddclientのデーモンモードを有効にするためのsystemdサービスをセットアップします。

要件

  • 最新のAnsibleバージョン。 このロールは最近の2つの主要なAnsibleリリースをサポートしています。 古いバージョンは動作する可能性がありますが、サポートされていません。
  • 以下のいずれかを実行しているホスト:
    • Ubuntu 18.04 LTS以降
    • Debian 10以降
    • その他のディストリビューションも動作するかもしれませんが、サポートされていません(サポートを追加する場合はPRを自由に作成してください!)

ロール変数

インストール

ddclient_version
  • インストールするddclientのバージョン
  • ブランチ、タグ、コミット、またはgitがサポートする他の値を指定できます。
  • デフォルト: develop
ddclient_executable_path
  • ddclientの実行可能ファイルを置く場所
  • デフォルトは/usr/local/sbin/ddclientです。これは、ディストリビューションパッケージと干渉しないためです。
ddclient_configfile
  • ddclientインストール用の設定ファイル
  • デフォルト: /etc/ddclient.conf
ddclient_pidfile
  • ddclientデーモン用のPIDファイル
  • デフォルト: /var/run/ddclient.pid
ddclient_systemd_unit
  • ddclientデーモン用のユニットファイル名
  • デフォルト: ddclient

設定

ddclient_interval
  • DynDNS IPチェックの間隔(秒)
  • デフォルト: 300
ddclient_mail
  • すべての更新をこのユーザー/メールアドレスに送信
  • デフォルト: root
ddclient_mail_failure
  • すべての失敗をこのユーザー/メールアドレスに送信
  • デフォルト: root
ddclient_entries
  • ddclient設定エントリのリスト
  • 各エントリにはオプションのリストとドメインのリストが含まれています
    • オプションはddclientパラメータに1:1で対応しています
  • 例:
    - options:
        protocol: cloudflare
        zone: domain.tld
        ttl: 60
        login: your-login-email
        password: APIKey
      domains:
        - domain.tld
        - my.domain.tld
    

IPルックアップ

ddclientがDynDNS経由で更新するために必要なIPアドレスを取得する方法を決定する設定オプション。 デフォルトでは、これらのパラメータはすべて未設定で、ddclientは組み込みのデフォルトを使用します。

: 以下のほとんどのパラメータはIPv4またはIPv6のいずれかで設定できます。

ddclient_strategy_usev[4/6]
  • DynDNS更新に使用するIPv4/6 IPアドレスを決定する戦略を設定
  • オプションにはwebv[4/6]、if[4/6]、ip[4/6]、fw、cmdが含まれます
  • デフォルト: 未定義
ddclient_strategy_ipv[4/6]
  • ip戦略を使用する場合に静的IPを設定
  • デフォルト: 未定義
ddclient_strategy_ifv[4/6]
  • if戦略を使用する場合に、指定されたインターフェースからIPアドレスを取得
  • デフォルト: 未定義
ddclient_strategy_webv[4/6]
  • 知られているサービスまたはカスタムURLからWebベースのIP発見サービスを使用してIPv4アドレスを取得
  • デフォルト: 未定義
ddclient_strategy_webv[4/6]_skip
  • ddclientのドキュメントを参照
  • デフォルト: 未定義
ddclient_strategy_fwv[4/6]
  • このIPアドレスまたはURLを持つデバイスからIPアドレスを取得
  • デフォルト: 未定義
ddclient_strategy_fwv[4/6]_skip
  • デバイスから返されるテキスト内でこのパターンより前のIPアドレスをスキップ
  • デフォルト: 未定義
ddclient_strategy_fw_login
  • デバイスからIPを取得する際にこのログインを使用
  • デフォルト: 未定義
ddclient_strategy_fw_password
  • デバイスからIPを取得する際にこのパスワードを使用
  • デフォルト: 未定義
ddclient_strategy_cmdv[4/6]
  • このコマンドの出力からIPv4アドレスを取得
  • デフォルト: 未定義

例プレイブック

- hosts: all
  tasks:
    - name: Install ddclient
      include_role:
        name: maxhoesel.ddclient
      vars:
        ddclient_entries:
        - options:
            protocol: cloudflare
            zone: domain.tld
            ttl: 1 # 自動
            login: your-login-email
            password: APIKey
          domains:
            - domain.tld
            - my.domain.tld
        # dyndnsを使用してIPv4アドレスを決定する
        ddclient_strategy_usev4: webv4
        ddclient_strategy_webv4: dyndns
        # eth0からIPv6アドレスを取得する
        ddclient_strategy_usev6: ifv6
        ddclient_strategy_ifv6: eth0

ライセンス

GPL 3またはそれ以降

著者情報

Max Hösel (@maxhoesel) によって作成および維持されています。

プロジェクトについて

Installs and configures ddclient

インストール
ansible-galaxy install maxhoesel.ddclient
ライセンス
Unknown
ダウンロード
71.9k
所有者
Junior Automation and Infrastructure Engineer, Bachelor in CompSci. I write Ansible content and DevOps-related tools, mostly in Rust