大量のDNSのゾーンファイルを手動で更新していると,絶対不幸になる…ってわけで,自動化するためのスクリプトを作りました.
たとえばIPアドレスの更新が早く伝播するように,事前にTTLを6Hぐらいに減らしておくには.以下のような感じで,まず片っ端からTTLを減らして
IP=x.x.x.x; for x in /var/named/*.zone; do POSTFIX=date '+%Y%m%d' mv $x /tmp/$x.$POSTFIX ttl_6H.awk /tmp/$x.$POSTFIX > $x done
つぎに,シリアル値を更新.
IP=x.x.x.x; for x in /var/named/*.zone; do POSTFIX=date '+%Y%m%d' mv $x /tmp/$x.$POSTFIX update_serial.awk /tmp/$x.$POSTFIX > $x done
あとは named に reload させるだけ.
我ながら便利なものを作ってしまった.