
この質問に関連する用語を Google で検索してもまったく運がなかったことを考えると、これは不可能かもしれませんが、
マシンにホスト名を設定し、そのホスト名を BIND ベースの DNS サーバーに「プッシュ」する(その逆ではなく)標準的な方法はありますか?
背景:
この特定の環境では DHCP が禁止されているため、システムを迅速に展開する別の方法を考え出す必要があります。ホスト名の入力を自動化するために、Puppet と Web UI を使って何かをハッキングするところまで来ていますが、クライアントからのプッシュの方が自動化が簡単でしょう (そうすれば、インストーラーの 1 つのダイアログに触れるだけで済むため)。
問題となっているクライアント システムはすべて Linux ベースです。
答え1
標準的な方法があるかどうかはわかりませんが、BIND サーバーが動的更新を許可するように構成されていると仮定すると、起動時 (または cron ジョブ) にシェル スクリプトを実行してレコードnsupdate
を更新できます。
#!/bin/bash
ECHO server <mydnsserver> > /tmp/dnsupdate
ECHO "zone <mydomain>" >> /tmp/dnsupdate
ECHO "update delete my.fqdn.com A" >> /tmp/dnsupdate
ECHO "update add my.fqdn.com 60 A myipaddress" >> /tmp/dnsupdate
ECHO "send" >> /tmp/dnsupdate
ECHO "zone <ipnetwork-inaddr.arpa.>" >> /tmp/dnsupdate
ECHO "update delete <myip.in-addr.arpa> PTR <my.fqdn.com>" >> /tmp/dnsupdate
ECHO "update add <myip.inaddr.arpa. 60 PTR <my.fqdn.com>" >> /tmp/dnsupdate
ECHO "send" >> /tmp/dnsupdate
nsupdate -v /tmp/dnsupdate
安全な更新が必要な場合は、キーペアを作成し、キーを指定できますnsupdate -k <keyfile> -v /tmp/dnsupdate
。また、スクリプトの一部としてホスト名と IP 情報を変数に取り込むことで、スクリプトをより汎用的で使いやすくすることもできます。