32.4. Master DNS ゾーンの管理

32.4.1. Master DNS ゾーンの追加と削除

Web UI での Master DNS ゾーンの追加

  1. Network Services タブから DNS サブタブを開き、DNS Zones セクションを選択します。
    Master DNS ゾーンの管理

    図32.1 Master DNS ゾーンの管理

  2. 新規の master ゾーンを追加するには、全ゾーン一覧上部にある Add をクリックします。
    Master DNS ゾーンの追加

    図32.2 Master DNS ゾーンの追加

  3. ゾーン名を入力して Add をクリックします。
    新規 Master ゾーンの入力

    図32.3 新規 Master ゾーンの入力

コマンドラインからの Master DNS ゾーンの追加

ipa dnszone-add コマンドで、新規ゾーンが DNS ドメインに追加されます。新規ゾーンを追加するには、新規サブドメインの名前を指定する必要があります。下記のようにこのコマンドでサブドメイン名を直接渡すことができます。
$ ipa dnszone-add newserver.example.com
ipa dnszone-add で名前を渡さない場合は、スクリプトが自動的にこれを要求します。
ipa dnszone-add コマンドは各種のコマンドラインオプションも受け付けます。オプションの完全一覧を確認するには、ipa dnszone-add --help コマンドを実行してください。

Master DNS ゾーンの削除

Web UI でマスター DNS ゾーンを削除するには、該当するゾーン名を選択して Delete をクリックします。
Master DNS ゾーンの削除

図32.4 Master DNS ゾーンの削除

コマンドラインからマスター DNS ゾーンを削除するには、以下のように ipa dnszone-del コマンドを実行します。
$ ipa dnszone-del server.example.com

32.4.2. マスター DNS ゾーンの追加設定

IdM は、リフレッシュの期間や転送設定、キャッシュ設定など、特定のデフォルト設定による新規ゾーンを作成します。

DNS ゾーン設定の属性

表32.1「ゾーン属性」 には、使用可能なゾーン設定が記載されています。ここではゾーンの実際の情報を設定するほか、DNS サーバーが start of authority (SOA) レコードエントリーを処理する方法と、DNS ネームサーバーからの記録を更新する方法を定義します。

表32.1 ゾーン属性

属性コマンドラインオプション説明
Authoritative name server--name-server
マスター DNS ネームサーバーのドメイン名 (SOA MNAME とも呼ぶ) を設定します。
デフォルトでは、各 IdM サーバーが自身を SOA MNAME フィールドに公開します。この結果、--name-server を使用して LDAP に保存された値は無視されます。
Administrator e-mail address--admin-emailゾーン管理者が使用する電子メールアドレスを設定します。デフォルトでは、ホストの root アカウントになります。
SOA serial--serialSets a serial number in the SOA レコードのシリアル番号を設定します。IdM はバージョン番号を自動的に設定し、これはユーザーが編集しないことになっています。
SOA refresh--refreshセカンダリー DNS サーバーがプライマリ DNS サーバーから更新を要求するまでの待機時間を秒単位で設定します。
SOA retry--retry失敗したリフレッシュ動作を再試行するまでの待機時間を秒単位で設定します。
SOA expire--expireセカンダリー DNS サーバーがリフレッシュ更新を試行して、その動作を停止するまでの時間を秒単位で設定します。
SOA minimum--minimumRFC 2308 に従って、ネガティブキャッシュの有効時間 (TTL) の値を秒単位で設定します。
SOA time to live--ttlゾーン apex のレコードの TTL を秒単位で設定します。たとえば、ゾーン example.com では、example.com 名の全レコード (A、NS、または SOA) が設定されますが、test.example.com のような他のドメイン名は影響を受けません。
Default time to live--default-ttl個別の TTL 値が設定されたことのないゾーンの全値について、ネガティブキャッシュの有効時間 (TTL) のデフォルト値を秒単位で設定します。変更を反映するには、全 IdM DNS サーバーで named-pkcs11 サービスを再起動する必要があります。
BIND update policy--update-policy
DNS ゾーンでクライアントに許可されるパーミッションを設定します。
更新ポリシーの構文については、Dynamic Update Policies in the 『BIND 9 Administrator Reference Manual を参照してください。
Dynamic update--dynamic-update=TRUE|FALSEクライアントの DNS レコードへの動的更新を有効にします。
これを false に設定すると、IdM クライアントマシンは IP アドレスの追加や更新ができなくなります。詳細情報は、「動的 DNS 更新の有効化」 を参照してください。
Allow transfer--allow-transfer=string
指定されたゾーンの転送が可能な IP アドレスまたはネットワーク名をセミコロン区切りのリストで提供します。
ゾーン転送はデフォルトでは無効になっています。--allow-transfer のデフォルト値は none です。
Allow query--allow-queryDNS クエリーの発行が可能な IP アドレスまたはネットワーク名をセミコロン区切りのリストで提供します。
Allow PTR sync--allow-sync-ptr=1|0ゾーンの A または AAAA レコード (正引きレコード) が自動的に PTR (逆引き) レコードと同期されるかどうかを設定します。
Zone forwarders--forwarder=IP_addressDNS ゾーン向けに特別に設定されたフォワーダーを指定します。これは、IdM ドメインで使用されるグローバルのフォワーダーとは別のものです。
複数のフォワーダーを指定するには、このオプションを複数回使用します。
Forward policy--forward-policy=none|only|first転送ポリシーを指定します。サポートされるポリシーについての情報は、「転送ポリシー」 を参照してください。

Web UI でのゾーン設定編集

Web UI で DNS マスターゾーンを管理するには、Network Services タブから DNS サブタブを開き、DNS Zones セクションを選択します。
Master DNS ゾーンの管理

図32.5 Master DNS ゾーンの管理

DNS Zones セクションで既存のマスターゾーンを編集するには、以下の手順に従います。
  1. ゾーンの全一覧からゾーン名をクリックして DNS ゾーンページを開きます。
    マスターゾーンの編集

    図32.6 マスターゾーンの編集

  2. Settings をクリックして、ゾーン設定を変更します。
    マスターゾーン編集ページの Settings タブ

    図32.7 マスターゾーン編集ページの Settings タブ

    利用可能な設定については、表32.1「ゾーン属性」 を参照してください。
  3. Save をクリックして新規設定を保存します。

注記

ゾーンの有効時間 (TTL) のデフォルト値を変更して反映させるには、全 IdM DNS サーバーで named-pkcs11 サービスを再起動する必要があります。その他の設定は、即座に有効になります。

コマンドラインでのゾーン設定編集

コマンドラインから既存のマスター DNS ゾーンを変更するには、ipa dnszone-mod コマンドを使用します。利用可能な設定については、表32.1「ゾーン属性」 を参照してください。
DNS ゾーンエントリー内に属性がない場合は、 ipa dnszone-mod コマンドは属性を追加します。属性がある場合は、指定された値で現行の値を上書きします。
ipa dnszone-mod コマンドおよびそのオプションについての詳細は、ipa dnszone-mod --help コマンドを実行してください。

注記

ゾーンの有効時間 (TTL) のデフォルト値を変更して反映させるには、全 IdM DNS サーバーで named-pkcs11 サービスを再起動する必要があります。その他の設定は、即座に有効になります。

32.4.3. ゾーン転送の有効化

ネームサーバーは、ゾーンに対して権限のあるデータを維持します。ゾーンに変更が加えれられると、この変更は DNS ドメインのネームサーバーに送信、配布される必要があります。ゾーン転送 では、リソースレコードすべてがあるサーバーから別のサーバーにコピーされます。
IdM では、RFC 5936 (AXFR) および RFC 1995 (IXFR) 標準に準拠したゾーン転送をサポートしています。

重要

IdM で統合された DNS には複数のマスターがあります。IdM ゾーン内の SOA シリアル番号は、IdM サーバー間では同期されません。このため、DNS スレーブサーバーが 1 つの IdM マスターサーバーのみを使用するように設定します。これにより、SOA シリアル番号が同期されないことでゾーン転送が失敗するということが回避されます。

UI でのゾーン転送の有効化

「Web UI でのゾーン設定編集」 にあるように DNS ゾーンページを開き、Settings タブに切り替えます。
Allow transfer セクションで、ゾーンレコードの転送先隣るネームサーバーを指定します。
ゾーン転送の有効化

図32.8 ゾーン転送の有効化

DNS ゾーンページ上部にある Save をクリックして新規設定を保存します。

コマンドラインでのゾーン転送の有効化

コマンドラインでゾーン転送を有効にするには、--allow-transfer オプションを ipa dnszone-mod コマンドに追加します。以下のように、--allow-transfer を使ってゾーンレコードを転送するネームサーバーの一覧を指定します。
[user@server ~]$ ipa dnszone-mod --allow-transfer=192.0.2.1;198.51.100.1;203.0.113.1 example.com
bind サービス内でゾーン転送を有効にすると、dig ユーティリティーのようなクライアントで IdM DNS ゾーンを名前で転送できるようになります。
[root@server ~]# dig @ipa-server zone_name AXFR

32.4.4. DNS ゾーンへのレコードの追加

IdM では多くのレコードタイプをサポートしていますが、よく使われるのは以下の 4 つのタイプです。
A
これはホスト名および通常の IPv4 アドレスの基本的なマップです。A レコードのレコード名は、www などのホスト名です。IP Address の値は、192.0.2.1 などの標準的な IPv4 アドレスになります。
A レコードに関する詳細情報は、RFC 1035 を参照してください。
AAAA
これはホスト名および IPv6 アドレスの基本的なマップです。AAAA レコードのレコード名は、www などのホスト名です。IP Address の値は、2001:DB8::1111 などの 16 進数の標準的な IPv6 アドレスになります。
AAAA レコードに関する詳細情報は、RFC 3596 を参照してください。
SRV
サービス (SRV) リソースレコードは、サービス名を、その特定サービスを提供するサーバーの DNS 名にマッピングします。たとえば、このタイプのレコードは LDAP ディレクトリーのようなサービスを管理するサーバーに、このサービスをマッピングします。
SRV レコードのレコード名は _service._protocol という形式になり、たとえば _ldap._tcp となります。SRV レコードの設定オプションには、優先順位、加重、ポート番号、およびターゲットサービスのホスト名などがあります。
SRV レコードに関する詳細情報は、RFC 2782 を参照してください。
PTR
ポインター (PTR) レコードは、IP アドレスをドメイン名にマッピングする逆引き DNS レコードを追加します。

注記

IPv4 アドレスの逆引き DNS ルックアップはすべて、in-addr.arpa. ドメインで定義される逆引きエントリーを使用します。ヒューマンリーダブルな形式の逆アドレスは、通常の IP とまったく逆のもので、in-addr.arpa. ドメインが最後に付いています。たとえば、ネットワークアドレス 192.0.2.0/24 の逆引きゾーンは、2.0.192.in-addr.arpa になります。
PTR レコードのレコード名は、RFC 1035RFC 2317、および RFC 3596 に指定されている標準形式である必要があります。ホスト名の値は、レコードを作成するホストの正規のホスト名である必要があります。詳細は 例32.8「PTR レコード」 を参照してください。

注記

.ip6.arpa. ドメイン内のゾーンについても、IPv6 アドレスの逆引きゾーンを設定できます。IPv6 逆引きゾーンについての詳細情報は、RFC 3596 を参照してください。
DNS リソースレコードを追加する際には、多くのレコードで異なるデータが必要になることに留意してください。たとえば、CNAME レコードではホスト名が必要ですが、A レコードでは IP アドレスが必要になります。Web UI では、新規レコード追加のフォームにおけるフィールドでは、選択しているレコードタイプに必要なデータが自動的に反映されます。

DNS のワイルドカードのサポート

IdM は、DNS ゾーン内の特別レコード * をワイルドカードとしてサポートします。

例32.2 DNS ワイルドカードの例

  1. DNS ゾーン example.com で以下を設定します。
    • ワイルドカード A レコード *.example.com
    • mail.example.com の MX レコード。ただし、このホストでは A レコードなしとします。
    • demo.example.com ではレコードなしとします。
  2. 既存および存在しない DNS レコードとタイプをクエリーシマス。以下の結果が返されます。
    # host -t MX mail.example.com.
    mail.example.com mail is handled by 10 server.example.com.
    
    # host -t MX demo.example.com.
    demo.example.com. has no MX record.
    
    # host -t A mail.example.com.
    mail.example.com has no A record
    
    # host -t A demo.example.com.
    random.example.com has address 192.168.1.1
詳細は、RFC1034 を参照してください。

Web UI での DNS リソースレコードの追加

  1. 「Web UI でのゾーン設定編集」 にあるように DNS ゾーンページを開きます。
  2. DNS Resource Records セクションで、Add をクリックして新規レコードを追加します。
    新規 DNS リソースレコードの追加

    図32.9 新規 DNS リソースレコードの追加

  3. 作成するレコードタイプを選択し、必要なフィールドに入力します。
    新規 DNS リソースレコードの定義

    図32.10 新規 DNS リソースレコードの定義

  4. Add をクリックして新規レコードを保存します。

コマンドラインでの DNS リソースレコードの追加

コマンドラインから DNS リソースレコードを追加するには、ipa dnsrecord-add コマンドを以下の構文で使用します。
$ ipa dnsrecord-add zone_name record_name --record_type_option=data
zone_name は、レコードを追加する DNS ゾーンの名前です。record_name は、新規 DNS リソースレコードの識別子です。
表32.2「一般的な ipa dnsrecord-add オプション」 では、A (IPv4)、AAAA (IPv6)、SRV、および PTR という一般的なリソースレコードのタイプのオプションを示しています。エントリーのリストは、同一コマンドでオプションを複数回使用して設定するか、Bash では --option={val1,val2,val3} のように中括弧内にオプションをコンマ区切りの一覧で記載します。
ipa dnsrecord-add の使用方法および IdM がサポートする DNS レコードタイプについての詳細情報は、ipa dnsrecord-add --help コマンドを実行してください。

表32.2 一般的な ipa dnsrecord-add オプション

全般的なレコードのオプション
オプション説明
--ttl=numberレコードの有効期間を設定します。
--structuredraw DNS レコードを解析し、それらを構造化された形式で返します。
"A" レコードのオプション
オプション説明
--a-rec=ARECORDA レコードのリストを渡します。
--a-ip-address=stringレコードの IP アドレスを渡します。
"AAAA" レコードのオプション
オプション説明
--aaaa-rec=AAAARECORDAAAA (IPv6) レコードのリストを渡します。
--aaaa-ip-address=stringレコードの IPv6 アドレスを渡します。
"PTR" レコードのオプション
オプション説明
--ptr-rec=PTRRECORDPTR レコードのリストを渡します。
--ptr-hostname=stringレコードのホスト名を渡します。
"SRV" レコードのオプション
オプション説明
--srv-rec=SRVRECORDSRV レコードのリストを渡します。
--srv-priority=numberレコードの優先順位を設定します。あるサービスタイプに複数の SRV レコードがある場合もあります。優先順位 (0 - 65535) はレコードの階級を設定し、数字が小さいほど優先順位が高くなります。サービスは、優先順位の最も高いレコードを最初に使用する必要があります。
--srv-weight=numberレコードの加重を設定します。これは、SRV レコードの優先順位が同じ場合に順序を判断する際に役立ちます。設定された加重は最大 100 とし、これは特定のレコードが使用される可能性をパーセンテージで示しています。
--srv-port=numberターゲットホスト上のサービスのポートを渡します。
--srv-target=stringターゲットホストのドメイン名を提供します。該当サービスがドメイン内で利用可能でない場合は、単一のピリオド (.) にすることもできます。

32.4.5. コマンドラインからの DNS リソースレコードの追加および修正

例32.3 IPv4 レコードの追加

以下の例ではレコード www.example.com が IP アドレス 192.0.2.123 で作成されます。
$ ipa dnsrecord-add example.com www --a-rec 192.0.2.123

例32.4 IPv4 ワイルドカードレコードの追加

以下の例ではワイルドカード A レコードが IP アドレス 192.0.2.123 で作成されます。
$ ipa dnsrecord-add example.com "*" --a-rec 192.0.2.123

例32.5 IPv4 レコードの修正

レコード作成時に A レコードの値を指定するオプションは --a-record です。ただし、A レコード修正時には --a-record オプションはそのレコードの現在の値を指定します。新しい値は --a-ip-address オプションで設定します。
$ ipa dnsrecord-mod example.com www --a-rec 192.0.2.123 --a-ip-address 192.0.2.1

例32.6 IPv6 レコードの追加

以下の例ではレコード www.example.com が IP アドレス 2001:db8::1231:5675 で作成されます。
$ ipa dnsrecord-add example.com www --aaaa-rec 2001:db8::1231:5675

例32.7 SRV レコードの追加

以下の例では、_ldap._tcp が SRV レコードのサービスタイプと接続プロトコルを定義します。--srv-rec オプションで優先順位、加重、ポート、およびターゲットの値を定義します。
例を示します。
[root@server ~]# ipa dnsrecord-add server.example.com _ldap._tcp --srv-rec="0 51 389 server1.example.com."
[root@server ~]# ipa dnsrecord-add server.example.com _ldap._tcp --srv-rec="1 49 389 server2.example.com."
加重の値 (この例では 5149) では最大 100 が追加され、これは特定のレコードが使用される可能性をパーセンテージで示しています。

例32.8 PTR レコード

逆引き DNS レコードを追加する際は、他の DNS レコードの追加時に使用されるものと比べると、ipa dnsrecord-add コマンドで使用されるゾーン名も逆になります。
$ ipa dnsrecord-add reverseNetworkIpAddress hostIpAddress --ptr-rec FQDN
通常、hostIpAddress は指定されたネットワークの IP アドレスの最後のオクテットになります。
たとえば、以下では、IPv4 アドレス 192.0.2.4 にある server4.example.com の PTR レコードが追加されます。
$ ipa dnsrecord-add 2.0.192.in-addr.arpa 4 --ptr-rec server4.example.com.
さらに以下の例では、逆 DNS エントリーが IP アドレス 2001:DB8::1111 のホスト server2.example.com0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa. IPv6 逆引きゾーンに追加されます。
$ ipa dnsrecord-add 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa. 1.1.1.0.0.0.0.0.0.0.0.0.0.0.0 --ptr-rec server2.example.com.

32.4.6. DNS ゾーンからレコードを削除する

Web UI によるレコード削除

リソースレコードから特定のレコードタイプのみを削除するには、以下の手順に従います。
  1. 「Web UI でのゾーン設定編集」 にあるように DNS ゾーンページを開きます。
  2. DNS Resource Records セクションで、リソースレコードの名前をクリックします。
    DNS リソースレコードの選択

    図32.11 DNS リソースレコードの選択

  3. 削除するレコードタイプの名前にチェックを入れます。
    DNS リソースレコードの削除

    図32.12 DNS リソースレコードの削除

    これで選択したレコードタイプのみが削除され、他の設定は有効なままになります。
ゾーン内のリソースの全レコードを削除するには、以下の手順に従います。
  1. 「Web UI でのゾーン設定編集」 にあるように DNS ゾーンページを開きます。
  2. DNS Resource Records セクションで、削除するリソースレコードの名前の横にあるチェックボックスを選択し、Delete をクリックします。
    リソースレコード全体の削除

    図32.13 リソースレコード全体の削除

    これでリソースレコード全体が削除されます。

コマンドラインからのレコード削除

ゾーンからレコードを削除するには、ipa dnsrecord-del コマンドに --recordType-rec オプションとレコードの値を渡します。
以下の例では、A タイプのレコードが削除されます。
$ ipa dnsrecord-del example.com www --a-rec 192.0.2.1
オプションなしで ipa dnsrecord-del を実行すると、削除するレコードについての情報が要求されます。このコマンドを --del-all オプションと使用すると、ゾーンの関連する全レコードが削除されることに注意してください。
ipa dnsrecord-del コマンドの使用方法および使用可能なオプションの完全一覧については、ipa dnsrecord-del --help コマンドを実行してください。

32.4.7. ゾーンの有効化および無効化

IdM では、管理者が DNS ゾーンを有効、無効にすることができます。「Master DNS ゾーンの削除」 にある方法で DNS ゾーンを削除するとゾーンエントリーと関連する設定すべてが完全に削除されますが、ゾーンを無効にすると IdM からゾーンを削除することなくアクティビティーから除外することができます。無効にしたゾーンは後で有効にすることが可能です。

Web UI でのゾーンの有効化および無効化

Web UI で DNS ゾーンを管理するには、Network Services タブから DNS サブタブを開き、DNS Zones セクションを選択します。
DNS ゾーンの管理

図32.14 DNS ゾーンの管理

ゾーンを無効にするには、ゾーン名の横にチェックを入れて Disable をクリックします。
DNS ゾーンの無効化

図32.15 DNS ゾーンの無効化

同様に、無効にしたゾーンを有効にするには、ゾーン名の横にチェックを入れて Enable をクリックします。

コマンドラインからの DNS ゾーンの無効化および有効化

コマンドラインから DNS ゾーンを無効にするには、以下のように ipa dnszone-disable コマンドを実行します。
[user@server ~]$ ipa dnszone-disable zone.example.com
----------------------------------------- 
Disabled DNS zone "example.com" 
-----------------------------------------
無効にしたゾーンを再度有効にするには、ipa dnszone-enable コマンドを実行します。