Networking サービスでは、インスタンス用の名前解決を設定する方法が複数あります。ほとんどのデプロイメントではケース 1 か 2 が使用されることでしょう。ケース 3 を使用する場合は、内部の DNS 情報がインスタンスにもれないようセキュリティー面の考慮が必要です。
この場合、 DHCP エージェントは、 1 つ以上の独自の DNS レゾルバーを、 各仮想ネットワークのインスタンスに DHCP 経由で提供します。サブネットの作成時または更新時に、 DNS レゾルバーを設定できます。 DNS レゾルバーを複数設定する場合は、コンマを使って値を区切ります。
サブネット作成時に DNS レゾルバーを設定します。
$ neutron subnet-create --dns-nameserver DNS_RESOLVER
DNS_RESOLVER は仮想ネットワークから到達可能な DNS レゾルバーの IP アドレスで置き換えてください。例:
$ neutron subnet-create --dns-nameserver 8.8.8.8,8.8.4.4
注釈
このコマンドには、ここで議論している以外のオプションも指定する必要があります。
既存のサブネットの DNS レゾルバーを設定します。
$ neutron subnet-update --dns-nameserver DNS_RESOLVER SUBNET_ID_OR_NAME
DNS_RESOLVER は仮想ネットワークから到達可能な DNS レゾルバーの IP アドレスで、 SUBNET_ID_OR_NAME はサブネットの UUID か名前で置き換えてください。例えば、 selfservice サブネットを使用する場合:
$ neutron subnet-update --dns-nameserver 8.8.8.8,8.8.4.4 selfservice
この場合、 DHCP エージェントは、同じ DNS レゾルバーを、すべての仮想ネットワークのインスタンスに DHCP 経由で提供します。
dhcp_agent.ini ファイルで、 DNS レゾルバーを設定します。複数の DNS レゾルバーを設定する場合は、コンマを使って値を区切ります。
[DEFAULT]
dnsmasq_dns_servers = DNS_RESOLVER
DNS_RESOLVER は、すべての仮想ネットワークから到達可能な DNS レゾルバーの IP アドレスで置き換えてください。例:
[DEFAULT]
dnsmasq_dns_servers = 8.8.8.8, 8.8.4.4
注釈
すべての有効な DHCP エージェントでこのオプションを設定し、値を反映するためにエージェントを再起動する必要があります。
この場合、 DHCP エージェントは、 DHCP エージェントが動作しているホストの resolv.conf ファイルに書かれた DNS レゾルバーを、 DHCP 経由ですべての仮想ネットワークのインスタンスに提供します。
dhcp_agent.ini ファイルで、ホストの DNS レゾルバーを広告するようにします。
[DEFAULT]
dnsmasq_local_resolv = True
注釈
すべての有効な DHCP エージェントでこのオプションを設定し、値を反映するためにエージェントを再起動する必要があります。
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.