パブリックDNSゾーンの管理
最も基本的な形式では、DNSは、そのゾーンのDNS名前空間に文字列を指定すると、IPアドレス(既知の場合)を返します。 ただし、DNSは、IPホスト・クライアント・アプリケーションが、DHCP (DHCIDレコード)を使用して独自の構成情報を取得したり、電子メールを送受信したりする場所(MXレコード)を認識する方法でもあります。 DNSを使用しない場合、クライアント・デバイスは、ローカル・サーバーのみでなく、それらが対話するすべてのサーバーやアプリケーションについて、どこに配置されていても、適切なIPアドレスを知る必要があります。 DNSを使用すると、クライアントは常にwww.oracle.comまたはその他のアプリケーションの正しいロケーションを見つけることができます。
コンパートメント内にDNSゾーンを作成すると、そのゾーンを別のコンパートメントに移動できなくなります。
パブリックDNSゾーンの作成
DNSゾーンは、IPアドレスをDNSネームスペースの一部に関連付けるためにコンパートメント内に作成されます。 ゾーンは、DNSサービスを使用してコンパートメントに作成されます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSで、Zonesをクリックします。 コンパートメントで以前に構成されたゾーンのリストが表示されます。 DNSゾーンを作成するコンパートメントがタイトル・バーにない場合は、ドロップダウン・タブを使用して正しいコンパートメントを選択します。
-
「ゾーンの作成」をクリックします。
-
必要なゾーン情報を入力します:
-
ゾーン名: DNSゾーンの名前または説明を指定します。 組織の機密情報は使用しないでください。
-
コンパートメント: DNSゾーンを作成するコンパートメントを選択します。
-
ゾーン・タイプ: 作成するDNSゾーンのタイプを選択します。
-
プライマリ: プライマリDNSゾーンは、DNSネームスペースの一部の元の認可DNSゾーンです。 DNSサーバーがプライマリ・ゾーンをホストする場合、そのDNSサーバーは認可DNSサーバーであり、そのゾーン内の情報のプライマリ・ソースとみなされます。
-
セカンダリ: セカンダリDNSゾーンは、プライマリDNSゾーンまたは別のセカンダリDNSゾーンの読取り専用コピーです。 セカンダリDNSゾーンはセカンダリDNSサーバーに保持され、プライマリDNSゾーンへの負荷が減り、ゾーン内の名前解決のための単一障害のリスクが排除されます。
DNSゾーンの詳細は、「Oracle Private Cloud Applianceコンセプト・ガイド」の「仮想ネットワークの概要」の"Name Resolution"を参照してください。
-
-
タグ付け: オプションで、このリソースに1つ以上のタグを追加します。
タグ付けの詳細は、「リソース・タグの操作」を参照してください。 タグを適用するかどうかが不明な場合は、このオプションをスキップするか(後でタグを適用できます)、管理者に問い合せてください。
-
-
「ゾーンの作成」をクリックします。
ゾーン・レコードの追加、またはTSIGキーまたはリング・ポリシーの構成の準備が整いました。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
)
-
-
oci dns zone create
コマンドを実行します。構文(1行に入力):
oci dns zone create \ --compartment-id <compartment_OCID> \ --name <dns_zone_OCID> \ --zone-type <PRIMARY | SECONDARY>
例:
oci dns zone create \ --compartment-id ocid1.compartment.â¦.â¦.â¦.uniqueID \ –-name test-dns-zone \ --zone-type PRIMARY { "data": { "compartment-id": "ocid1.compartment.â¦.â¦.â¦.uniqueID", "defined-tags": {}, "external-masters": null, "freeform-tags": {}, "id": "ocid1.dns-zone.â¦.â¦.â¦.uniqueID", "is-protected": null, "lifecycle-state": "ACTIVE", "name": "test_dns_zone", "nameservers": [ { "hostname": "ns1.example.com" } ], "scope": null, "self-uri": "https://20180115/zones/test_dns_zone", "serial": 1, "time-created": "2021-08-17T18:08:00.059867+00:00", "version": 1, "view-id": null, "zone-type": "PRIMARY" }, "etag": "3e389cab-b3fd-4783-91c1-ede81bc132d5" }
ゾーン・レコードの操作
DNSゾーンの作成は、DNSの操作の開始のみです。 このゾーンは、基本のStart of Authority (SOA)レコードとName Server (NS)レコードを除き、基本的に空になります。SOAレコードは、このDNSゾーンの一種の履歴を提供し、最後に更新された日時やそのような情報を保持します。 NSレコードには、ゾーンのDNSサーバーの完全修飾名が含まれます。 NSレコードは非常に重要であるため、通常は24時間(86400秒)のTTLが高くなります。
ネーム・サーバーを実際に役立つようにするには、ゾーンを丸め、クライアントが行う問合せの種類へのレスポンスの基礎を形成するDNSレコードが入力されている必要があります。 これらの問合せには、ドメイン・ネーム・スペースの一部のIPアドレス、電子メール・サーバーの詳細などが含まれます。
ゾーン・レコードの作成
「The RDATA」フィールドは、ゾーン・レコードのコンテンツが入力される場所です。 情報の形式は、作成するレコードのタイプによって異なります。 ただし、データは、DNSが理解する形式のいずれかである必要があります。 たとえば、Aタイプのゾーン・レコードRDATAはIPアドレスで、MXレコードには電子メールのルーティング方法に関する情報が含まれます。 ゾーン内のゾーン・レコードの認可特性のため、RDATAは編集できません。 ゾーンのDNS情報が変更された場合、古いレコードを削除し、新しいレコードを作成する必要があります。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSで、Zonesをクリックします。 コンパートメントで以前に構成されたゾーンのリストが表示されます。 ゾーン・レコードを追加するコンパートメントがタイトル・バーにない場合は、ドロップダウン・タブを使用して正しいコンパートメントを選択します。
-
ゾーンの名前をクリックします。 情報画面には、タイプおよびコンパートメント、OCID (全表示またはクリップボードにコピー可能)、ゾーンが作成された日時などの一般的なゾーン情報が含まれます。 存在するゾーン・レコードも表示され、最初はSOAおよびNSレコードのみです。
-
必要なゾーン・レコード情報を入力します:
-
ゾーン・レコード: ドロップダウン・リストから、作成するゾーン・レコードのタイプを選択します。
-
A - IPv4アドレス: ホスト名をIPv4アドレスに指定するために使用されるホスト・レコード。 これは最も基本的なDNSレコード・タイプです。
-
他の多数のタイプのゾーン・レコードを追加できます: ドロップダウン・リスト内の任意のタイプ。
DNSゾーンの詳細は、「Oracle Private Cloud Applianceコンセプト・ガイド」の「仮想ネットワークの概要」の"Name Resolution"を参照してください。
-
-
ドメイン(オプション): ゾーン・サブ・ドメイン(使用されている場合)の名前を入力します(この値はゾーン自体に基づいてすでに入力されています): ゾーン・サブドメインの追加には、最初のドット(".")が使用されます。
-
TTL: 特定のレコード・タイプのTTLに独自の値を設定するには、このボックスにチェックマークを入れます。 このボックスにチェックマークを入れない場合、そのレコード・タイプのデフォルトのTTL値が使用されます(たとえば、SOAの場合は300、NSの場合は86400)。 有効な範囲は1 ~ 129540秒です(1秒から約1日半)。
-
RDATAの編集: ゾーン・レコード・タイプによって確立されたIPアドレスやターゲットなどのRDATA情報を編集する場合は、このボックスにチェックマークを入れます。 このボックスは、一部のゾーン・レコードのタイプについてのみ表示されます。
-
(RDATA): このラベルなしフィールドは、作成されたゾーン・レコードのタイプによって異なります。 たとえば、AタイプのDNSレコードに対応する32ビットIPアドレス、またはDNSKEYゾーン・レコードに対するフラグ(作成中の場合)を入力します。
-
A - IPv4アドレス: Aタイプのゾーン・レコードを作成する場合、データは適切にフォーマットされたIPv4アドレスになります。 これは最も基本的なDNSレコードですが、他にも多くのレコードがあります。
-
「The RDATA」フィールドには、選択したゾーン・レコードのタイプに関する正しい情報が反映されます。
-
-
-
Create Recordをクリックします。
ゾーン・レコードがゾーンに追加されます。 「別のレコードの追加」のオプション・ボックスをクリックすると、画面は「DNSゾーン・レコードの作成」状態のままになり、レコード・エントリがより効率的になります。
OCI CLIの使用
CLIには「create dns zone record
」コマンドはありません。 かわりに、コマンド"oci dns zone record update
"コマンドは、指定したゾーン内のレコードを、コマンドのリクエスト本文で指定されたレコードに置き換えます。 指定されたレコードが存在しない場合は作成されます。 また、現在のレコードがレコード・リストにない場合は削除されます。 レコードが存在する場合は、リクエスト本文のレコード情報で更新されるため、注意が必要です。 このセクションのコマンドは、dns-test-zone
という名前のDNSゾーンにAリソース・レコード(IPv4アドレスおよびドメイン名)を追加します。
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
DNSゾーン名(
oci dns zone list --compartment_OCID <compartment_OCID>
)
-
-
oci dns record zone update
コマンドを実行します。ノート:
この手順では、このコマンドに必要な最小パラメータを示します。 オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci dns record zone update \ --zone-name-or-id <zone_name> or <compartment_OCID> \ --items <complex type>
ノート:
DNSリソース・レコード・タイプは、JSON形式のオブジェクトとして提供されます。 これは、タイプがRecordDetailsのJSONリストです。 RecordDetailsのドキュメントについては、https://docs.cloud.oracle.com/api/#/en/dns/20180115/datatypes/RecordDetailsを参照してください。 これは、値が有効なJSONである必要がある複合タイプです。 この値は、コマンドラインで文字列として指定するか、
file://path/to/file
構文を使用してファイルとして渡すことができます。--generate-param-json-input
オプションを使用すると、指定する必要があるJSONの例を生成できます。 この例をファイルに格納し、必要に応じて変更してから、file://
構文を使用して再度渡すことをお薦めします。例:
oci dns record zone update --zone-name-or-id <zone_name> or <compartment_OCID> --items { "domain": "test-dns-zone.test-pca-comparment.example.com", "isProtected": true, "rdata": "10.225.15.10", "recordHash": "fkT4md", "rrsetVersion": "1", "rtype": "1", "ttl": 3600 }
ゾーン・レコードの削除
多数のDNSゾーン・レコードを削除できますが、すべてを削除することはできません。 ゾーンの作成時にデフォルトで作成される初期SOAおよびNSレコードは削除できません。ゾーン・レコードを削除するには:
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSで、Zonesをクリックします。 コンパートメントで以前に構成されたゾーンのリストが表示されます。 ゾーン・レコードを追加するコンパートメントがタイトル・バーにない場合は、ドロップダウン・タブを使用して正しいコンパートメントを選択します。
-
ゾーンの名前をクリックします。 情報画面には、タイプおよびコンパートメント、OCID (全表示またはクリップボードにコピー可能)、ゾーンが作成された日時などの一般的なゾーン情報が含まれます。 存在するゾーン・レコードも表示されます。
-
削除するゾーン・レコードの右側に3つのドットがあるアクション四角形をクリックします。
-
「削除」をクリックします。
ゾーン・レコードは削除され、そのDNSゾーンのリストから削除されます。
OCI CLIの使用
CLIを使用してゾーンのリソース・レコードを削除するには、oci dns record rrset delete
コマンドを使用して、リソース・レコード・セット全体を削除します(たとえば、特定のホスト名のすべてのAタイプのIPv4アドレス・レコード)。 リソース・レコードは、DNSレコード・タイプ(A、MXなど)によって識別されます。 このセクションのコマンドは、「test-device-1」という名前のデバイスの「dns-test-zone」という名前のDNSゾーン内のAリソース・レコード(IPv4アドレスとドメイン名)を削除します。
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
DNSゾーン名(
oci dns zone list --compartment_OCID <compartment_OCID>
)
-
-
oci dns record rrset delete
コマンドを実行します。構文: (1行に入力):
oci dns record rrset delete \ --domain <domain-name> \ –-rtype <resource-record-type> \ --zone-name-or-id <zone_name> or <compartment_OCID>
例:
oci dns record rrset delete \ --domain "test-device-1.dns-test-zone.example.com" \ –-rtype "A" \ --zone-name-or-id "dns-test-zone"
レコードがゾーンから削除されます。
トランザクション・シグネチャ・キーの操作
DNSトランザクション・シグネチャ(TSIG)は、RFC 2845で定義されたネットワーク・プロトコルです。 TSIGの主な目的は、DNSがDNSデータベースへの更新を認証できるようにすることです。これにより、悪意のあるユーザーは、銀行のIPアドレスのかわりに不正なIPアドレスを指すように名前解決レコードを変更できません。 TSIGでは、一方向ハッシュおよび共有秘密キーを使用して、接続のエンドポイントを認証してDNS更新リクエストを処理(またはレスポンス)するためのセキュアな手段を提供します。
TSIGプロトコルはタイムスタンプを使用して、記録されたレスポンスをリプレイしません。 したがって、DNSサーバーとTSIGクライアントは、タイムスタンプを提供するために正確なクロックを必要とします。 TSIGでサポートされる暗号化方式とハッシュ方式のタイプを拡張するために、基本的なTSIGプロトコルに対する数多くの拡張機能が行われました。
DNSゾーンにTSIGを使用するには、DNSゾーンにTSIGキーを追加します。 TSIGキーは、base64でエンコードする必要があります。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSゾーンで、TSIGキーをクリックします。
-
「キーの作成」をクリックします。
-
必要なTSIGキー情報を入力します:
-
名前: TSIGキーの名前または説明を指定します。 組織の機密情報は使用しないでください。
-
コンパートメント: TSIGキーを作成するコンパートメントを選択します。
-
アルゴリズム: 作成するTSIGキーのセキュリティ・アルゴリズム(hmac-sha256など)を選択します。
-
秘密キー: キーに対応するバイナリ共有シークレットをエンコードするbase64文字列を指定します。 最大は255文字です。 base64エンコーディングのサンプル・キーをRFC3874に示します。 次の2つの方法のいずれかでキーを指定できます:
-
キー・ファイルを選択: この方法でTSIG共有秘密キーを指定すると、キー・ファイルを指定されたスペースにドラッグ・アンド・ドロップできます。
-
キーを貼り付けます: この方法でTSIG共有秘密キーを指定すると、キー・ファイルのコンテンツをコピーして、指定された領域に貼り付けることができます。
-
-
タグ付け: オプションで、このリソースに1つ以上のタグを追加します。 タグ付けの詳細は、「リソース・タグの操作」を参照してください。 タグを適用するかどうかが不明な場合は、このオプションをスキップするか(後でタグを適用できます)、管理者に問い合せてください。
-
-
TSIGキーの作成をクリックします。
TSIGキーは、DNSゾーンでTSIGクライアントとDNSサーバーの間で使用できるようになりました。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --all
)
-
-
oci dns tsig-key create
コマンドを実行します。ノート:
この手順では、このコマンドに必要な最小パラメータを示します。 オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci dns tsig-key create \ --algorithm <hmac-algorithm> \ --name <tsig-key-name> \ --compartment-id <compartment_OCID> \ --secret <secret-string>
例:
oci dns tsig-key create --algorithm hmac-sha256 --name new-tsig-key \ --compartment-id ocid1.compartment.â¦.â¦.â¦.uniqueID \ --secret 2o8goaon2168n(secret key string)e6um8lvd2lwdoouq46lsygak0009014 { "data": { "-self": "https://20180115/tsigKeys/new-tsig-key", "algorithm": "hmac-sha256", "compartment-id": "ocid1.compartment.â¦.â¦.â¦.uniqueID", "defined-tags": {}, "freeform-tags": {}, "id": "ocid1.dns-tsig-key..â¦.â¦.â¦.uniqueID", "lifecycle-state": "ACTIVE", "name": "new-tsig-key", "secret": "2o8goaon2168n(secret key string)e6um8lvd2lwdoouq46lsygak0009014", "time-created": "2021-10-29T17:50:31.219934+00:00", "time-updated": null }, "etag": "81eb0e02-e09c-4b25-9d21-eefa9ab2aacc" }
このコンパートメントのDNSのTSIGキーのリストに新しいキーが表示されます。
TSIGキーの追加
TSIGキーを既存のTSIGキーのリストに追加するには、一意のTSIGキー名および新しいアルゴリズムまたは新しいキー値を持つ別のキーを作成するだけです。 既存のTSIGキーのフィールドを変更するには、updateコマンドを使用します。
TSIGキーは、DNSゾーンとは別のオブジェクトです。 ExternalMaster
定義の一部として、SECONDARY DNS
ゾーンでTSIGキーを参照できます。 ただし、新しいキーを作成しても、PRIMARY
ゾーンでは何も行われません。
TSIGキーの削除
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSゾーンで、TSIGキーをクリックします。
-
TSIGキーのドロップダウン・リストから削除するTSIGキーをクリックします。
-
アクション・メニュー・アイコン(3つのバー)の下にあるアクションのリストから削除をクリックするか、表示ウィンドウの上部にある削除ボタンをクリックします。
TSIGキーがリストから削除されます。
OCI CLIの使用
-
次のリソースの情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
TSIG OCID (
oci dns tsig-key list --compartment-id <compartment_OCID>
)
-
-
構文(1行に入力):
oci dns tsig-key delete --tsig-key-id <tsig-key_OCID>
例:
oci dns tsig-key delete --tsig-key-id ocid1.dns.tsig.key.â¦.â¦.â¦.uniqueID \ Are you sure you want to delete this resource? [y/N]: y
TSIGキーは、このコンパートメントのDNSのTSIGキーのリストから削除されます。 --force
オプションを使用して、「Are you sure...?」メッセージを抑制します。
パブリックDNSゾーンの削除
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューのDNSゾーンで、ゾーンをクリックします。
-
ゾーンのドロップダウン・リストから削除するゾーン名をクリックします。
-
表示ウィンドウの上部にあるDeleteボタンをクリックします。
DNSゾーンがリストから削除されます。
DNSゾーンがコンパートメントから削除されます。--force
オプションを使用して、「Are you sure...?」メッセージを抑制します。
OCI CLIの使用
-
次のリソースの情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
ゾーンOCID (
oci dns zone list --compartment-id <compartment_OCID>
)
-
-
構文(1行に入力):
oci dns zone delete --zone-name-or-id zone_OCID-or-zone-name>
例:
oci dns zone delete --zone-id ocid1.dns.zone.â¦.â¦.â¦.uniqueID \ Are you sure you want to delete this resource? [y/N]: y