chatagiriです。過去記事。
自宅サーバ上でこのサイト他色々ものを動かしています。
しかし、一般的な光回線 + 非固定IP + 一般的なルータ + NUC な環境で動作させている都合上、停電したり熱にやられたり何だりでルータorモデムが再起動するとプロバイダから降ってくるGlobalなIPが変わってしまうことがあります。
上記原因でIPが変わるたびにお名前.comのコンパネ上で1(サブ)ドメインずつ丹精込めてレコードを変更する作業はもうツライので、GlobalIPを確認してお名前.com上のレコードを更新してくれるshell scriptを書きました。
cronで回すようにすれば初期のレコード設定以外は自動化できるので大変良いです。
#!/bin/bash
SUBDOMAIN="$(cat << EOF
test1.example.com # ここに更新掛けたいサブドメイン(例: test.example.com)
test2.example.com # 複数行も可
# 空行を入れると親ドメインそのもの(例: example.com)
EOF
)"
ONAMAE_USERID="" #ここにお名前ID(7ケタ)
ONAMAE_PASSWORD="" #ここにログインパスワード
ONAMAE_DOMAIN="" #ここに契約ドメイン(例: example.com)
while read SUBDOMAINS
do
cat << EOF | openssl s_client -connect ddnsclient.onamae.com:65010 -quiet ; done < $SUBDOMAIN
LOGIN
USERID:"$ONAMAE_USERID"
PASSWORD:"$ONAMAE_PASSWORD"
.
MODIP
HOSTNAME:$SUBDOMAINS
DOMNAME:"$ONAMAE_DOMAIN"
IPV4:$(curl -G inet-ip.info)
.
LOGOUT
.
EOF
あとは実行権限つけて叩いてみてください。動かなかったゴメンナサイ。
ちなみにchatagiriはお名前ドットコムからGoogle Cloud DNSに移行しました。APIフレンドリーな感じで更新できたりするので非常に便利です。
開くたびにドメイン更新しろ!!!画面も表示されないですしね。