7.3. DNS 転送の使用
次の方法で、DNS 転送を使用して /etc/resolv.conf ファイル内のデフォルトの転送設定をオーバーライドできます。
-
すべてのゾーンにネームサーバー (
spec.servers) を指定します。転送されるゾーンが OpenShift Container Platform によって管理される Ingress ドメインである場合、そのドメインに対してアップストリームのネームサーバーが許可されている必要があります。 -
アップストリーム DNS サーバーのリスト (
spec.upstreamResolvers) を指定します。 - デフォルトの転送ポリシーを変更します。
注記
デフォルトドメインの DNS 転送設定には、/etc/resolv.conf ファイルおよびアップストリーム DNS サーバーで指定されたデフォルトのサーバーの両方を設定できます。
手順
defaultという名前の DNS Operator オブジェクトを変更します。$ oc edit dns.operator/default上記のコマンドを実行すると、Operator が、
spec.serversに基づく追加のサーバー設定ブロックを使用してdns-defaultという名前の config map を作成および更新します。クエリーに一致するゾーンがサーバーにない場合には、名前解決はアップストリーム DNS サーバーにフォールバックします。DNS 転送の設定
apiVersion: operator.openshift.io/v1 kind: DNS metadata: name: default spec: cache: negativeTTL: 0s positiveTTL: 0s logLevel: Normal nodePlacement: {} operatorLogLevel: Normal servers: - name: example-server1 zones: - example.com2 forwardPlugin: policy: Random3 upstreams:4 - 1.1.1.1 - 2.2.2.2:5353 upstreamResolvers:5 policy: Random6 protocolStrategy: ""7 transportConfig: {}8 upstreams: - type: SystemResolvConf9 - type: Network address: 1.2.3.410 port: 5311 status: clusterDomain: cluster.local clusterIP: x.y.z.10 conditions: ...- 1
rfc6335サービス名の構文に準拠する必要があります。- 2
rfc1123サービス名構文のサブドメインの定義に準拠する必要があります。クラスタードメインのcluster.localは、zonesフィールドの無効なサブドメインです。- 3
forwardPluginにリストされているアップストリームリゾルバーを選択するポリシーを定義します。デフォルト値はRandomです。RoundRobinおよびSequentialの値を使用することもできます。- 4
forwardPluginごとに最大 15 のupstreamsが許可されます。- 5
upstreamResolversを使用すると、デフォルトの転送ポリシーをオーバーライドし、デフォルトドメインの指定された DNS リゾルバー (アップストリームリゾルバー) に DNS 解決を転送できます。アップストリームリゾルバーを提供しなかった場合、DNS 名のクエリーが/etc/resolv.confで宣言されたサーバーに送信されます。- 6
upstreamsにリストされているアップストリームサーバーをクエリーのために選択する順序を決定します。Random、RoundRobin、またはSequentialのいずれかの値を指定できます。デフォルト値はSequentialです。- 7
- 省略すると、デフォルト (通常は元のクライアント要求のプロトコル) が選択されます。
TCPに設定すると、クライアント要求が UDP を使用する場合でも、すべてのアップストリーム DNS 要求に対して TCP が必ず使用されます。 - 8
- DNS 要求をアップストリームリゾルバーに転送するときに使用するトランスポートタイプ、サーバー名、およびオプションのカスタム CA または CA バンドルを設定するために使用されます。
- 9
- 2 種類の
upstreams(SystemResolvConfまたはNetwork) を指定できます。SystemResolvConfで、アップストリームが/etc/resolv.confを使用するように設定して、NetworkでNetworkresolverを定義します。1 つまたは両方を指定できます。 - 10
- 指定したタイプが
Networkの場合には、IP アドレスを指定する必要があります。addressフィールドは、有効な IPv4 または IPv6 アドレスである必要があります。 - 11
- 指定したタイプが
Networkの場合、必要に応じてポートを指定できます。portフィールドには1-65535の値を指定する必要があります。アップストリームのポートを指定しない場合、デフォルトのポートは 853 です。