Cloudflare DDNSをShellスクリプトで更新する

OpenwrtのCronで動かしたかったので作った。
フォーク元はBashで動くやつなんだけど、
BusyBoxでちゃんと動いてなかったので動くように直してる。ついでにBashなしで動くようにした。
IPv4用、IPv6用、IPv4&IPv6用(デュアルスタック用)がある。

スクリプトをダウンロード

hnyapp/sh-cfddns: sh-powered DDNS client for Cloudflare-managed domain
https://github.com/hnyapp/sh-cfddns

設定

各スクリプトの以下パラメータを環境に合わせて直す。

auth_emailCloudflareのログインに使用するメールアドレス
auth_keyOverviewタブ内の「Get your API token」に飛んで取得できるGlobal API Key
zone_identifierOverviewのタブ内に表示されているZone ID

使い方

第一引数に更新したいドメインを渡して呼び出す。
grepとcurlを使うので入っていなかったら入れてくださいな。

IPv4アドレスのみ更新する場合

sh cfupdater-v4 ipv4.example.org

IPv6アドレスのみ更新する場合

sh cfupdater-v6 ipv6.example.org

IPv4とIPv6アドレスの両方を更新する場合

sh cfupdater-dualstack dualstack.example.org