クラウド・インスタンスにおけるDNSサーバーの指定は、DHCPサーバーから情報を取得して利用するようになっています。やつを考えてみました。ドンピシャで正着に至ったというわけではないですが、ひとつの有効な手段として扱うことはできそうです。新し目のディストリビューションではデフォで動いていることが多いです。役割としては、その名の通りネットワーク周りを色々やってくれるのですが、今回はDHCPとDNSに絞ってまとめていきます。それを使って、主にパブリッククラウドにおける問題を軽減することを目的とします。問題とは、クラウドがDHCPで指定するDNSサーバーが利用不能になり、WANのサービスやプライベートのエンドポイントの名前解決ができず、実質的にサービスの障害となることです。これはそうそう起きる問題ではないのですが、実際に経験したことがありますし、軽減策を入れる手間はかかっても悪いことはないので、検討の価値はあります。入れる条件として、DNSレコードの情報がWANとLANで同じ──つまり、プライベートDNSでしか引けないレコードがない、必要があります。仮にそのような条件だとしても、採用することで一部のダメージを軽減することが可能です。馴染みのないシステムなので気分はアレかもですが、ディストリビューションの変化を追うのも仕事ですので、グッとこらえて参りましょう。デーモンが起動されます。このような感じに編集されます。2つ以上になることも普通にあります。試行する、という流れになります。1つしかない場合はワンパンで即死する可能性がありますし、複数あっても名前解決のたびに処理が数秒停止するというのは、結構な致命傷になりえます。DNSキャッシュを適切に設定していればダメージを軽減できるものの、不安が残る強度といえるでしょう。NetworkManagerのデフォルトの挙動インストールは簡単です。メッセージ内の自己主張が変わります。10.0.0.2このままならば、名前解決の挙動としては、さきほどと何も変わりません。dnsmasqを利用するdnsmasqはDNS・DHCPの多機能サーバーという感じですが、今回はDNSキャッシュサーバーとして利用します。仲良しのようで、簡単に切り替えられるのが良い点です。127.0.0.1ローカルの53番ポートにdnsmasqが現れたことを確認できます。ファイルに書いてあり、/var/run/NetworkManager/dnsmasq.confserver=10.0.0.21server=10.0.0.2こちらにDHCPから取得したサーバーが羅列されます。この、1つ以上のserverに対して、指定した方法でserverを選択し、名前解決をForwardします。任意のDNSサーバーを追加するクラウド管理のDNSサーバー以外も追加することで、耐障害性の向上を試みます。AWSの場合VPCでDHCPオプションセットというのを作成し、VPCと関連付けることで、DHCPから渡される情報をカスタマイズできます。8.8.8.8VPC毎に関連付けを変更することで、DNSサーバーのリストが変更されます。全てのクラウド環境に同様の機能があるとは限りませんが、まずは探してみて、なければ次の手段を検討するとよいです。コマンドで編集することができます。接続情報を確認します。いう名前を確認できました。次にこのインターフェースに対してDNS情報を追加します。